Releases: apache/servicecomb-java-chassis
Releases · apache/servicecomb-java-chassis
Apache ServiceComb Java-Chassis 2.1.0
Release Notes - Apache ServiceComb - Version java-chassis-2.1.0
Bug
- [SCB-1930] - When MicroserivceVersions.setInstances continues fail will cause OOM
- [SCB-1931] - fix consumer flag in MicroserviceMeta
- [SCB-1937] - fix integration test(TestAsyncInvoke) always timeout problem
- [SCB-1976] - fix loadbalance error when v1 got a operation a and v2 do not
- [SCB-2017] - fix invoke with appid and highway throw error
New Feature
- [SCB-1650] - discovery schema from instancies directly
- [SCB-1739] - separate swagger registry and dicovery from instance registry and discovery
- [SCB-1774] - As a developer, I want to run small apllications without service-center
- [SCB-1913] - Zero-Config Service Registry
- [SCB-1933] - support configure multiple registries
- [SCB-1963] - provide local registry: regitration and disovery
- [SCB-2020] - support @example to add examples to API
Improvement
- [SCB-1876] - refactor: registry depends on core and core do not depend on registry
- [SCB-1886] - use http for default service center address
- [SCB-1891] - separate local registry and service center registry
- [SCB-1896] - improve demo test case for testing http headers
- [SCB-1924] - invocation context provide transport context
- [SCB-1925] - provide a util to convert url to endpoint format
- [SCB-1926] - enhance CommonExceptionData to include more common data
- [SCB-1936] - change findbug dependency to provided
- [SCB-1941] - MicroserviceMeta only need to has consumer or producer handlers, not both
- [SCB-1945] - support zipkin with log4j2
- [SCB-1960] - delete spring-boot-starter-discovery and spring-boot-starter-gateway
- [SCB-1973] - fix problem in file download and config document
- [SCB-1990] - allow disable metrics endpoints by configuration
- [SCB-1998] - support Endpoint as a context parameter
- [SCB-2005] - dependency update: upgrade slf4j from 1.7.26 to 1.7.30
- [SCB-2006] - dependency update: remove log4j2 from solution-basic and upgrade from 2.12.0 to 2.13.2
- [SCB-2009] - dependency update: remove jakarta.el dependency and make it optional
- [SCB-2010] - dependency update: upgrade swagger-core from 1.5.22 to 1.5.24
- [SCB-2013] - dependency update: upgrade spring framework from 5.1.8 to 5.1.14
- [SCB-2014] - dependency update: upgrade vert.x from 3.8.3 to 3.8.5
- [SCB-2015] - remove not used dependency management for jedis
- [SCB-2018] - dependency update: upgrade tcnative from 2.0.28 to 2.0.31
- [SCB-2019] - update gateway documents for zuul to use spring cloud huawei
- [SCB-2024] - support not resolve place holder when running in spring boot
More Information
- Upgrading guides are avainable at [ServiceComb Java Chassis Developers Guide]
Apache ServiceComb Java-Chassis 2.0.2
Release Notes - Apache ServiceComb - Version java-chassis-2.0.2
Bug
- [SCB-1823] - change kie label env to environment
- [SCB-1824] - jacskon convertValue will convert all objects start for 2.10.*, java-chassis need not convert RestTemplate arguments
- [SCB-1826] - remove binary release LICENSE since 3rd parties not included
- [SCB-1837] - revert changes for SCB-1643, do not include huaweicloud jar
- [SCB-1857] - RequestLog need to distinguish PRODUCER or CONSUMER for InvocationFinishEvent
- [SCB-1861] - fix config kie value parsing errors
- [SCB-1863] - config kie bug fix : toke the revision when pull from kie
New Feature
- [SCB-1810] - create a new Dispathcer to direct forward requests to HTTP server and send response
- [SCB-1816] - Print the instance endpoints in the end of the start up log
- [SCB-1828] - support @JSONVIEW
- [SCB-1834] - add BOM for java-chassis
Improvement
- [SCB-1822] - fix problems when using multiple consumer interface for one operation and using CseHttpEntity to set localcontext
- [SCB-1825] - client outlog: rename item and delete README.md
- [SCB-1830] - refactring code: Invocation carry changable data in each Invocation in a better way
- [SCB-1831] - Loadbalancer set endpoint can use Endpoint other the literal string
- [SCB-1840] - InvokerUtils inherit current context to support tracing and other features
- [SCB-1845] - add TOC for java-chassis documents to make easier to search
- [SCB-1851] - config-kie: support enable property
- [SCB-1853] - fix problems in README.md
- [SCB-1862] - ServiceComb add extensions to support cas env variables
- [SCB-1866] - dependency update: jackson-datatype-jsr310 from unmanaged to 2.10.0
- [SCB-1867] - dependency update: netty, from 4.1.45.Final to 4.1.47.Final
- [SCB-1868] - change ISO8601DateFormat to StdDateFormate to improve performance
- [SCB-1869] - highway should use consumer type to avoid deserialization convertion
- [SCB-1870] - move non integration tests from demo to servicecomb-samples
- [SCB-1871] - dependency update: remove javassist dependency and remove common-javassist module
- [SCB-1872] - change System.setProperty to class loader level property to make run multiple services in container possible
- [SCB-1873] - using Version to implement VrsionCompareUtil
- [SCB-1881] - dependency update: upgrade spring framework from 5.1.5.RELEASE to 5.1.8.RELEASE
- [SCB-1882] - dependency update: spring data remove from DM and add version for provided
Apache ServiceComb Java-Chassis 2.0.1
Release Notes - Apache ServiceComb - Version java-chassis-2.0.1
Sub-task
- [SCB-1531] - Support multiple service-center clusters
- [SCB-1752] - accessor problem fix: LogMarkerLeakFixUtils memory leak fix
- [SCB-1801] - fix SCB-1752
- [SCB-1802] - add document: for servlet transport, remove log4j will cause some change
- [SCB-1807] - update documentation for kie long polling
- [SCB-1809] - add document for InvokerUtils usage
Bug
- [SCB-1787] - Http 2 idleTimeoutInSeconds is not used
- [SCB-1793] - When use @RequestHeader(value ="xxx") and aggregatedParam at same time, it will throw null pointer exception
- [SCB-1795] - when use query object, sdk don't support fluent setter
- [SCB-1799] - add back servicecomb.service.registry.registerUrlPrefix
New Feature
- [SCB-1737] - support ISO 8601 data and time
- [SCB-1796] - support client outlog
- [SCB-1798] - InvokerUtils support specify response type
- [SCB-1812] - Endpoint add new constructor to support user defined transport
Improvement
- [SCB-1779] - update servicecomb test cases to make run in MAC
- [SCB-1785] - Run java-chassis in spring boot with external tomcat
- [SCB-1786] - remove log4j dependency by default
- [SCB-1794] - update the version of commons-beautils
- [SCB-1800] - log4j is deprecated package, make log4j implementaions optional
- [SCB-1803] - config-kie support long polling
- [SCB-1814] - binary release only include java-chassis artifacts
Task
Apache ServiceComb Java-Chassis 2.0.0
Release Notes - Apache ServiceComb - Version java-chassis-2.0.0
Sub-task
- [SCB-267] - support generic for highway
- [SCB-1117] - change SwaggerConsumer arguments to not depend on swagger class generation
- [SCB-1212] - change response mapper to not depend on swagger class generation
- [SCB-1213] - swagger generator placeholder resolver not depend on spring
- [SCB-1214] - change weak-contract-type branch version to weak-contract-type-SNAPSHOT
- [SCB-1225] - swagger generator core not depend on create dynamic class
- [SCB-1227] - swagger generator jaxrs not depend on create dynamic class
- [SCB-1228] - swagger generator springmvc not depend on create dynamic class
- [SCB-1242] - provide spring data plugin to generate swagger and deserialize
- [SCB-1248] - ServiceRegistry manage MicroserviceMeta
- [SCB-1252] - change element of HttpParameterType to uppercase
- [SCB-1256] - rename ConcreteInterfaceRegister to ConcreteTypeRegister
- [SCB-1268] - ServiceRegistry publish microservice life event and move meta back to core
- [SCB-1269] - change SwaggerProducer arguments to not depend on swagger class generation
- [SCB-1283] - avoid generate empty property by SwaggerDefinition
- [SCB-1284] - operationId should not be empty
- [SCB-1285] - enhance ResponseTypeProcessor to support extractResponseType
- [SCB-1286] - support only generate response for a operation
- [SCB-1290] - add swagger generator unit test case for List<List<String>>
- [SCB-1323] - should ignore parameter of HttpServletRequest when generate swagger
- [SCB-1324] - basePath should be a single slash when basePath not specified and annotation by RestController
- [SCB-1327] - delete duplicated swagger definition: ExtendConst
- [SCB-1328] - restore feature: collect java type from swagger model or property
- [SCB-1336] - should not lost @ApiParam description when wrap parameter to body at swagger generator pojo mode
- [SCB-1337] - should wrap enum to body at swagger generator pojo mode
- [SCB-1338] - tiny optimize for collect primitive default value
- [SCB-1342] - consumer should not use ArgumentsMapperDirectReuse when arg index is different
- [SCB-1344] - use producer parameter type in producer argument mapper for wrapped body
- [SCB-1345] - rest transport switch to weak type core
- [SCB-1346] - only special type need convert logic
- [SCB-1347] - tiny optimize for DefaultParameterNameProvider
- [SCB-1348] - change SchemaLoader to SwaggerLoader
- [SCB-1362] - microservice meta not depend on create dynamic class
- [SCB-1625] - update license file
- [SCB-1626] - provide interface to replace spring 5 deprecated classes
- [SCB-1628] - change starter name
- [SCB-1629] - documentation should cut 2.0 branch
- [SCB-1630] - add documentation for spring boot and add samples for it
- [SCB-1631] - add documentation to help users migrate from 1.x to 2.0
- [SCB-1632] - Complete weak type code and merge it into master branch
- [SCB-1635] - Recover highway tests
- [SCB-1636] - SwaggerLoader remove the dependency on Spring utilities
- [SCB-1637] - Fix test problem in demo
- [SCB-1644] - add tests for different model in client and server
- [SCB-1678] - using new proto API to serialize/deserialize Internal Objects
- [SCB-1682] - Refactor getVendorExtensions method and add ProtoMapper to ScopedProtobufSchemaManager
- [SCB-1683] - using new proto API to serialize/deserialize Requests/Responses
- [SCB-1684] - add codec test cases and fix Date/LocalDate codec problem
- [SCB-1692] - deserialize arguments in map with arguments actual types
- [SCB-1693] - invocation args change from array to map
- [SCB-1703] - Highway transport switch to new codec APIs and turn on highway transport
- [SCB-1704] - change invocation arguments from "swagger arguments" to "invocation arguments"
- [SCB-1706] - mapper arguments in codec phase for REST
- [SCB-1709] - restore arguments mappers and refactor to invocation argument types
- [SCB-1713] - Invocation carries both invocation arguments and swagger arguments
- [SCB-1714] - highway support different models and arguments types in consumer and provider
- [SCB-1722] - add generics test case and fix know problems
- [SCB-1725] - turn on integration tests of highway
- [SCB-1726] - fix all TODOs in springmvc demo(integration tests)
- [SCB-1727] - support encode/decode Object(Any) types
- [SCB-1728] - support response headers in Response type
- [SCB-1730] - highway support primitive default values and convert char/byte/short
- [SCB-1732] - support inheritance schema definition
- [SCB-1734] - add a test case for bean with aXXX property and documents
- [SCB-1744] - separate primitive descriptorParamType from non primitive
- [SCB-1745] - remove accessor modifier in reflection ...
Apache ServiceComb Java-Chassis 1.3.0
Release Notes - Apache ServiceComb - Version java-chassis-1.3.0
Bug
- [SCB-1304] - FallbackPolicy interface support returns an exception
- [SCB-1305] - CseAsyncRestTemplate is not support set headers
- [SCB-1306] - When the request body of VertxServerRequestToHttpServletRequest is modified, the field VertxServerRequestToHttpServletRequest#inputStream should be set to null
- [SCB-1318] - There may be memory leak in RSAProviderTokenManager
- [SCB-1390] - quick start java-chassis samples bmi has some errors
- [SCB-1475] - ServiceCombServerStats.getFailedRate may arise an exception of java.lang.ArithmeticException: / by zero under concurrency scenarios
- [SCB-1511] - when use method override, the generated swagger body is wrong
- [SCB-1513] - merge config items according to priority
- [SCB-1520] - using RPC and when first paramter type is Object, the second parameter value will be null
- [SCB-1543] - java-chassis dependency structure is wrong and compile fail in clean environment
Improvement
- [SCB-1274] - when service center is unavailable, service should enter safe mode.
- [SCB-1278] - ServiceComb related headers are not exposed to 3rd party services by default
- [SCB-1287] - refactor edge dispatcher to make them more extensible
- [SCB-1291] - Support rest interface method overriding by @apioperation
- [SCB-1297] - Print warn log about config resolving failure while fetching config from Spring Environment
- [SCB-1308] - Improve instance isolation mechanism
- [SCB-1392] - If Multiple java bean param types are given the same name by using @apimodel, there should be error tips in microservice's booting log
- [SCB-1402] - BeanUtils.getImplClassFromBean can not return correctly info in cglib proxy situation
- [SCB-1405] - support maxWaitQueueSize setting in RestTransportClient
- [SCB-1407] - Add new field when print provideCache log
- [SCB-1431] - set all dependency version as properties in java-chasis-dependencies
- [SCB-1434] - add a springboot2 archetype
- [SCB-1437] - Upgrading third party dependency versions
- [SCB-1448] - support class inheritance and interface inheritance with template type
- [SCB-1450] - Microservice instance may get stuck when watch connection to sc is recovered and pulling instance action is executed in eventloop thread
- [SCB-1451] - Printing the service information on the log
- [SCB-1457] - delete no use code in ProtobufManager
- [SCB-1461] - servicecomb.service.registry.client.workerPoolSize hasn't display the real role that it has announce by its name.
- [SCB-1462] - Two properties has been required by fix SCB-1450.
- [SCB-1488] - Upgrading protobuf version to 3.7.1
- [SCB-1492] - Allow users to custom the ObjectMapper used in Swagger schema generation
- [SCB-1494] - Optimizing log when starting a new microservice
- [SCB-1515] - use jdk 8 compiler for the Travis-CI of java-chassis
- [SCB-1516] - Upgrade third-party dependency versions
- [SCB-1522] - Add "Why use Java Chassis" introduction into README
- [SCB-1523] - Stopping retrying another server when no server available
- [SCB-1524] - support register schema when old schema already exists
- [SCB-1525] - print codec error stack
- [SCB-1528] - Optimizing some code implementations
- [SCB-1544] - default metrics printer should not print 0 operations
Apache ServiceComb Java-Chassis 1.2.0
Release Notes - Apache ServiceComb - Version java-chassis-1.2.0
Sub-task
- [SCB-353] - Servicecomb当前性能统计不支持时延分布的统计,这个对于业务有重要意义
- [SCB-837] - add http2 special configuration
- [SCB-945] - enhance swagger to idl to support method parameter/result/List<List>/List<Map>/Map<List>/Map<Map>
- [SCB-946] - serialize/deseriaze List<List<X>>/List<Map<X, Y>>/Map<X, List<Y>>/Map<X, Map<Y, Z>>
- [SCB-1071] - serialize/deserialize array and primitives
- [SCB-1144] - change samples use log4j2
- [SCB-1153] - provide traceId-invocationId by marker mechanism
- [SCB-1162] - document for PriorityProperty/InjectProperties/InjectProperty
- [SCB-1175] - document for basic configuration rule
- [SCB-1188] - provide a way to view/convert and download schemas
Bug
- [SCB-781] - 关于apollo配置中心不支持@ConfigurationProperties
- [SCB-968] - [SCB-968] http2 do not support pump download
- [SCB-1054] - when download file, we should ignore consumer acceptType
- [SCB-1065] - when request not contain traceId,should use provider's invocation's traceId
- [SCB-1066] - when start error, destroy method may throw an exception lead to origin exception losed
- [SCB-1073] - StaticMicroserviceVersions should be ignored while checking instance cache
- [SCB-1089] - Fix PrometheusPublisher naming error
- [SCB-1095] - Timer task need catch all throwable to protected from unexpected error
- [SCB-1096] - [SCB-1096]change the method calculate process cpu rate to same with top
- [SCB-1102] - fix empty swagger and information leak problem
- [SCB-1108] - when timeout, the access log status is 200
- [SCB-1109] - local-service-registry sample of java-chassis can not run directly
- [SCB-1114] - upgrade zipkin
- [SCB-1115] - fix not standard protostuff javadoc @created
- [SCB-1126] - springmvc project generated by ServiceComb scaffold can not run
- [SCB-1129] - @JsonProperty on enum value is ignored
- [SCB-1141] - latest versionRule can not update to new version
- [SCB-1143] - Servicecomb support watch service center with auth headers
- [SCB-1156] - avoid collect wrong invocation stage data when rest invoke failed
- [SCB-1191] - NPE When return type is ResponseEntity<Void>
- [SCB-1224] - [SCB-1224] az affinity is conflict with empty instance protection
- [SCB-1226] - there are problems when request rejected by thread pool queue full
- [SCB-1230] - avoid throw exception in httpClientResponse.exceptionHandler
New Feature
- [SCB-1048] - Provide a way to configure bootstrap information in Cloud Native enviroment
- [SCB-1061] - Provide a way to using handlers(e.g. LoabalanceHanler) outside handler chain
Improvement
- [SCB-674] - protobuf codec based on idl from swagger
- [SCB-1037] - in vertx 3.6.0, PumpImpl do not support "", it will throw exception
- [SCB-1044] - add current process CPU rate and net packets in the metrics
- [SCB-1047] - microservice.yaml service_description.version support format xxx.xx.xxx.xxx
- [SCB-1051] - when interface set produces=text/plain;charset=utf-8. and consumers set accept = text/plain,will cause error
- [SCB-1056] - Put provider QPS flow control in front
- [SCB-1063] - Improve the time cost when first time loading schema
- [SCB-1068] - As a developer want to know instance detail info when instance isolation
- [SCB-1072] - change dependency management version to project.version
- [SCB-1074] - minor fixes for mistakes and logs
- [SCB-1075] - upgrade spring-framework to 4.3.20.RELEASE
- [SCB-1076] - upgrade guava to 25.1
- [SCB-1077] - upgrade hystrix to 1.5.12
- [SCB-1079] - allow consumer-id to be empty when query instance
- [SCB-1101] - ServiceComb-Java-Chassis support IPv6
- [SCB-1106] - isolation must make sure one of instances is available
- [SCB-1135] - Add client max receive header size config item
- [SCB-1139] - Upgrade Vert.x to 3.6
- [SCB-1146] - update PR template
- [SCB-1157] - spring-boot2-starter-discovery and spring-boot-starter-discovery depend on zuul is not correct
- [SCB-1170] - improve log of upload directory during boot.
- [SCB-1177] - update vertx to 3.6+ version to result .vertx directory was default created
- [SCB-1178] - In the unit test, the issue of assertEquals and Float.MAX_VALUE.
- [SCB-1179] - Optimize the mainclass auto-discovery logic to cover more scenes.
- [SCB-1185] - Log DNS related exception to help locate problem
- [SCB-1186] - add a common pom module to simplify user configurations
- [SCB-1193] - upgread spring boot versions and add easy to use dependency management
- [SCB-1202] - pump down with vertx3.6.3 no need to check buff length in AsynFileImpl#doWrite
- [SCB-1205] - improve edge forward http2 request
- [SCB-1206] - ...
Apache ServiceComb Java-Chassis 1.1.0
Release Notes - Apache ServiceComb - Version java-chassis-1.1.0
Sub-task
- [SCB-493] - parameters and DefaultLogPublisher optimize
- [SCB-675] - generate protobuf idl from swagger
- [SCB-681] - jackson protobuf support v3 specification: map/list/array
- [SCB-687] - highway server not accept too many connection
- [SCB-691] - add vertx server/ rest client/highway client/ highway server connection meter
- [SCB-790] - support create new target microservice instance in one node
- [SCB-793] - run it-consumer during travis CI
- [SCB-842] - jackson protobuf serializer have performance problem
- [SCB-843] - add http client pool request time to consumer invocation meter
- [SCB-881] - add more invocation stage measurement
- [SCB-894] - measure httpServer and httpClient
- [SCB-917] - parse proto file to model
- [SCB-918] - serialize/deserialize based on proto model
- [SCB-922] - collect Getter/Setter from pojo
- [SCB-947] - delete old jackson protobuf logic
- [SCB-948] - convert proto model to string
- [SCB-1001] - [vertx] downloading, client disconnect first, should close WriteStream right now.
- [SCB-1021] - add vertx client/server meters to metrics
- [SCB-1022] - measure tcpServer and tcpClient
- [SCB-1034] - metrics performance optimize
Bug
- [SCB-74] - POJO static method is export as an operation
- [SCB-381] - Fix foudation-vertx UT failure on linux
- [SCB-769] - When delay fault injection is enabled, the business thread will be blocked
- [SCB-774] - Unexpected warn log is printed while the service is exiting if there are reactive operations
- [SCB-780] - sessionstickrule add the judgement of whether lastServer can also be accessed.
- [SCB-787] - Server States not clean unavailable server
- [SCB-794] - Edge invocation do not properly send servlet filter response code
- [SCB-799] - fix problem about "mvn install" in ubuntu
- [SCB-800] - Param order generated by BeanParamAnnotationProcessor is not stable
- [SCB-802] - in rollback scenario, old versions meta is used and invocation is fail
- [SCB-810] - fix zipkin dependency
- [SCB-828] - In some tomcat implementation inputstream available is null
- [SCB-845] - some times download file can not get correct content
- [SCB-849] - refactor producer connection limit using vertx metrics spi mechanism
- [SCB-861] - lost response type of @apiresponse 490/590
- [SCB-886] - Path param is not encoded and decoded correctly
- [SCB-888] - switch SCBEngine status to up in the wrong time
- [SCB-895] - When json parse fail will not get 400 but 590
- [SCB-898] - Governance function is not effective when configuration Start with servicecomb
- [SCB-904] - SpringMVC @RequestHeader do not support value,only support name
- [SCB-905] - Request connection is hang up when request path contains illegal string
- [SCB-910] - Java Chassis support spring boot 2.0
- [SCB-956] - not support body to be a enum
- [SCB-959] - When parsing inner classes,CtType will throw NotFoundException
- [SCB-960] - when consumer local failed(eg: LB failed), CompletableFuture callback can not get InvocationContext
- [SCB-964] - Fix MediaType setting problem
- [SCB-965] - resolve DoS attack problem about enum/char/Character/byte/Byte/short/Short/int/Integer/long/Long/float/Float/double/Double
- [SCB-972] - Using SHA1 signature key as UUID of micro service
- [SCB-1007] - not support CustomGeneric<Map<KEY, VALUE>>
- [SCB-1012] - add NoRouteToHostException in retry's exception
- [SCB-1014] - Fix priority problem of ExceptionToResponseConverter
- [SCB-1043] - MicroserviceVersions.safeSetInstances lost exception message
- [SCB-1045] - fix sample spring bean declaring
New Feature
- [SCB-215] - support annotation ApiParam
- [SCB-775] - support invoke service using raw type like JsonObject
- [SCB-777] - Support @BeanParam annotation in JAX-RS developing style
- [SCB-778] - In tomcat, support register swagger base path with container prefix
- [SCB-786] - when instances cache is not sync to SC caused by bug, auto fix it.
- [SCB-788] - public key black/white add feature: choose server by microservice field and properties
- [SCB-847] - Provide a way to decode user's custom error data
- [SCB-880] - Give an option to query parameter convert empty to null
- [SCB-903] - Add a feature to serialize/deserialize using Object to avoid information lose
- [SCB-926] - Invoke 3rd party service
- [SCB-936] - Encoded slash '/' is decoded in EdgeService, causing 404 error response
- [SCB-967] - support configed ip send request
- [SCB-1009] - Supporting configure encrypted password for proxy settings
- [SCB-1040] - Support discover instances from ServiceC...
Apache ServiceComb (incubating) Java-Chassis 1.0.0
Release Notes - Apache ServiceComb - Version java-chassis-1.0.0
Bug
- [SCB-651] - QPS rate limit bug
- [SCB-662] - Using cse/servicecomb duplicate key will get list of values
- [SCB-666] - Test failure on system that have rotate option set in /etc/resolv.conf
- [SCB-696] - [AccessLog] If nginx send requests via short-lived connections, %v will print "0.0.0.0"
- [SCB-699] - add schemaIds field in register.yaml when mock the Local sevice-center
- [SCB-703] - When consumer invoke void type method in RPC style, an exception is thrown
- [SCB-705] - When consumer invoke an unregistered provider, it will never find this provider even the provider is registered later
- [SCB-753] - NPE when query not exists service
- [SCB-754] - Check null invocation in AbstractRestInvocation to avoid unexpected NPE
- [SCB-759] - Fix ServiceComb version error
- [SCB-772] - Java Chassis::Handlers::Loadbalance test failed
- [SCB-773] - Java Chassis::Core test failed
New Feature
- [SCB-616] - Make access log mechanism extensible
- [SCB-640] - Add black/white list support based on public key handler
- [SCB-679] - Support Cross-Origin Resource Sharing (CORS)
- [SCB-708] - Support assembling query param into Object parameter(in Spring MVC developing style)
- [SCB-752] - User can switch off outputting merged log4j property file
- [SCB-760] - provide a way to invoke service with full path
Improvement
- [SCB-194] - Improve component-scan setting
- [SCB-661] - Logs improvement to give better information
- [SCB-671] - Duplicate cse.xxx to servicecomb.xxx to work better in future
- [SCB-684] - Following swagger conventions
- [SCB-685] - Service comb chassis must support default values
- [SCB-697] - Service comb chassis must support JAX-RS @DefaultValue
- [SCB-700] - Check server status when choose an available server
- [SCB-701] - RequestBody(required = false) and when requestBody is null then exception observed
- [SCB-702] - Deleted unwanted json-lib maven dependency for foundation-config
- [SCB-706] - refactor loadbalance filters logic to support invocation based filter
- [SCB-712] - Do not register service path to service center when not necessary
- [SCB-713] - @DefaulValue should be set only when input param is null
- [SCB-715] - Working in thread that do not have context class loader
- [SCB-727] - Java Chassis-Local generated schema and service center schema are different while registering the service then print the difference content
- [SCB-750] - Dependency management is incomplete in Saga and Java-Chassis
- [SCB-755] - [SCB-755] 755 Duplicate copy cse config to Servicecomb config
- [SCB-763] - Simplify Dynamic Config (Apollo) Integration Test in Java Chassis
Wish
- [SCB-746] - Update Chassis from m1 to m2 in start.servicecomb.io
Task
- [SCB-506] - Report the service governance event
- [SCB-693] - registry microservice failed if get host address failed
- [SCB-725] - support get main class package when run with "java -jar xxx.jar"
- [SCB-726] - edge support convert from form-data or x-www-form-urlencoded to json automatically
- [SCB-728] - add decrypt/signature/... to edge demo
- [SCB-729] - check if instance cache equals to SC
- [SCB-733] - open handlerContext for business logic, and add a new name: localContext
- [SCB-738] - delete microservice from MicroserviceManager after it not exist in SC
- [SCB-762] - resolve eclipse compile warnings
NOTE : It is highly recommended to use Service-Center 1.0.0 with this version of Java-Chassis
Download links are available here
Apache ServiceComb (incubating) Java-Chassis 1.0.0-m2
Release Notes - Apache ServiceComb - Version java-chassis-1.0.0-m2
Sub-task
- [SCB-137] - Add new dimension of transport way for all Consumer/Producer
- [SCB-196] - Add metrics for each consumer/provider handler
- [SCB-203] - servlet rest support file upload
- [SCB-252] - Metrics support overwatch Integration
- [SCB-370] - Metrics timer (like latency) output precision must to nano level not milli level
- [SCB-383] - metrics subscribe invocation life event and do statistics
- [SCB-384] - provide invocation performance log publisher
- [SCB-385] - metrics publisher switch to new mechanism
- [SCB-422] - add executor metrics, not just queue size
- [SCB-440] - Provide Maven Archetype of business-service-pojo
- [SCB-441] - Provide Maven Archetype of business-service-jaxrs
- [SCB-442] - Provide Maven Archetype of business-service-springmvc
- [SCB-445] - delete old metrics mechanism
- [SCB-446] - metrics-prometheus switch to new mechanism
- [SCB-450] - documents for metrics initializer/publisher, and how to extend
- [SCB-462] - cloud eye publisher switch to new mechanism
- [SCB-470] - Provide Maven Archetype of business-service-spring-boot-starter
- [SCB-483] - springmvc over transport rest vertx support file download
- [SCB-484] - servlet rest support download
- [SCB-485] - jaxrs mode support file download
- [SCB-486] - edge support route file download invocation
- [SCB-487] - consumer support download file
- [SCB-494] - support delete temp file after download
- [SCB-501] - document for download
- [SCB-527] - Reorganization All Archetype For Enable Auto Publish
- [SCB-529] - producer download file from byte[]
- [SCB-531] - x-java-interface change from require to optional
- [SCB-532] - support recursive dependence
- [SCB-533] - javassistUtils create class from CtClass, not only JavaType
- [SCB-534] - generic class generate optimize
- [SCB-538] - create SwaggerToClassGenerator to convert swagger to class
- [SCB-540] - Delete archetypes from java-chassis-dependencies
Bug
- [SCB-72] - Can isolation information of provider and consumer been discovered through capability of release and subscription?
- [SCB-449] - Typo in LICENSE
- [SCB-455] - Base on 1.0.0-m2-SNAPSHOT version, execution of the metrics UT failed
- [SCB-474] - 使用zuul做网关进行路由,当同一个微服务接口同时开放rest和highway方式时,出现无法调用情况。
- [SCB-481] - Fix qps handler assertion errors when schemaid or microservice name contails . (dot)
- [SCB-495] - Compile java-chassis 1.0.0-m2-SNAPSHOT failed
- [SCB-502] - logs日志没有输出
- [SCB-503] - When using WeighedResponseTimeRule, there are some initialize and stateless access problems
- [SCB-507] - poll task in MetricsBootstrap did not really measure meters
- [SCB-512] - download support chinese file name
- [SCB-516] - AccessLog of EdgeService does not print traceId
- [SCB-520] - resolve service with env re-registered will fail
- [SCB-521] - change the priority of ServiceComb config and SpringBoot config
- [SCB-562] - Java Chassis will throw NPE when producer impl do not contain any method
- [SCB-567] - treat warning as errors, modify the compilerArgments
- [SCB-579] - NullPointerException is thrown when consumer upload null
- [SCB-580] - When upload file size exceeds limitation of provider, consumer will return a confusing response
- [SCB-587] - Fix archetypes readme
- [SCB-588] - Set archetypes sourceEncoding to UTF-8
- [SCB-591] - configcenter need to do encode
- [SCB-593] - Change log level to remind user to specify loadbalance handler
- [SCB-597] - update spring boot version from 1.4.5 to 1.5.12 in starter archetype
- [SCB-617] - graceful shutdown with standalone tomcat
- [SCB-652] - Fix schema registry environment configuration
- [SCB-653] - When provider returns Transfer-Encoding header and Edge will cause problem
- [SCB-654] - DiscoveryTree has concurrency problems.
- [SCB-656] - When provider returns non 200 code Edge Service will all convert to 502
- [SCB-658] - leak of MicroserviceVersions register to EventBus
- [SCB-659] - Fix build failed in Springmvc Integration Test
- [SCB-667] - gracefully shutdown is not work in some case
New Feature
- [SCB-6] - ServiceComb Java Chassis Metrics
- [SCB-136] - Improvement and New Features of Java Chassis Metrics in version 1.0.0-m2
- [SCB-201] - As a SDK user, I want to send file/stream data so that I can use ServiceComb to handle the music or image data
- [SCB-257] - As a developer, I want to download file from microservice
- [SCB-285] - consumer cache schemas
- [SCB-292] - As a developer, I want to use annotation to validate input parameter
- [
Apache ServiceComb (incubating) Service-Center 1.0.0-m1
Major improvements:
-
Java Chassis can now use Apollo as configuration center. Users can now
change configurations like load balancing policy and those changes will
come into effect on the fly.
See here for more
details. -
Metrics was re-factored. We now uses events for collecting invocation data
instead of Hystrix. This reduces the performance penalty of computing
metrics.
Metrics can now be fetched via '/metrics' using HTTP.
See here for
more details.
Other Noticeable Changes:
- The Java Chassis libraries are now under group "org.apache.servicecomb".
- We provide out of the box metrics support now. Prometheus is supported.
- Configuration center was re-factored and moved out from foundation.
Support for Apollo was added. - Users can now use Object type for calling services.
- Users can now use Generics for calling services.
- Better integration with Spring MVC.
- Upgraded to zipkin2 internally, Java Chassis can now work with zipkin
server v1 and v2. - We are in the process of supporting reactive programming. Pojo consumer
and provider now supports CompletableFuture.