Help Center/ Cloud Service Engine/ Developer Guide/ Appendix/ Resolved Issues in Earlier Versions of Spring Cloud Huawei and Java Chassis
Updated on 2024-05-16 GMT+08:00

Resolved Issues in Earlier Versions of Spring Cloud Huawei and Java Chassis

This section lists all the issues that have been resolved in earlier versions of Spring Cloud Huawei and Java chassis.

Spring Cloud Huawei

Spring Cloud Huawei Version

Resolved Issues

1.11.6-2023.0.x

  • Security vulnerabilities existed in the snakeyaml, jackson, and guava configuration files.
  • After the routing was disabled, the microservice application failed to be started and the nacos/servicecomb adaptation implementation class cannot be found.
  • When a configuration update event was released in the same configuration center configurations, the pooling configuration may not be found during the request.

1.11.6-2022.0.x

1.11.6-2021.0.x

1.11.4-2022.0.x

  • When RBAC security authentication was not enabled, the framework still listened to authentication expiration events.
  • The gateway and webflux routes cannot obtain the request header setting information.
  • When microservice API security authentication was enabled, all requests failed because the rule was not set.
  • The circuit breaker rule on the server did not take effect.

1.11.4-2021.0.x

1.11.3-2022.0.x

When a service name was specified, the instance isolation policy did not take effect.

1.11.3-2021.0.x

1.11.2-2022.0.x

  • When no blacklist or whitelist policy was configured for API security authentication, a null pointer exception occurred.
  • When the same request header was set on both the server and client, the key did not take effect.

1.11.2-2021.0.x

1.11.0-2022.0.x

The trace context configuration did not take effect based on dynamic configuration.

1.11.0-2021.0.x

1.10.13-2021.0.x

When multiple services were called at the same time, the degradation did not take effect.

1.10.11-2021.0.x

Instance isolation governance did not take effect.

1.10.9-2021.0.x

  • When a service name was specified, the retry policy did not take effect.
  • When a service degradation error occurred, the response was empty instead of the null string.

1.10.8-2021.0.x

The load balancing rule did not take effect.

1.10.8-2020.0.x

1.10.7-2021.0.x

When service registry and discovery was disabled, the start failed.

1.10.7-2020.0.x

1.10.6-2021.0.x

Environment information was missing from the monitoring information.

1.10.6-2020.0.x

1.10.5-2021.0.x

There were too many retries. As a result, the request was not responded for a long time.

1.10.5-2020.0.x

1.10.4-2021.0.x

The identifierRateLimiting context failed to be obtained.

1.10.4-2020.0.x

1.10.3-2021.0.x

The governance configuration did not take effect when it was changed for the first time.

1.10.3-2020.0.x

1.10.2-2021.0.x

  • The default configuration update interval was changed to 15s.
  • The null pointer of the instance isolation filter was abnormal.

1.10.2-2020.0.x

1.10.1-2021.0.x

  • A null pointer exception occurred in the context of a non-client request.
  • The routing client failed to compile the request header.
  • The dark launch version policy took effect.
  • A conversion exception occurred when ClientRequest was not of the RequestData type.

1.10.1-2020.0.x

1.10.0-2021.0.x

  • When a service was deleted or restarted, the Ribbon cache cannot be updated. As a result, the request was sent to an unavailable service, and the error "no host to route" was displayed.
  • After a dark launch release rule was configured in dynamic configuration, the modification did not take effect.
  • The startup application failed to be started at the outer layer of the service package.
  • The maximum number of gateway retries did not take effect.

1.10.0-2020.0.x

1.9.1-2020.0.x

  • In some scenarios, the ags attribute of the startup class was incorrectly loaded.
  • The maximum number of retries was unlimited.
  • The dark launch dynamic configuration did not take effect.

1.9.0-2020.0.x

When instance.healthCheck.mode was pull, the custom healthCheckInterval did not take effect.

1.8.0-2020.0.x

  • When too many query tasks were configured in non-long polling mode, the tasks were triggered at no interval.
  • After a service instance was brought offline on the CSE page, the service instance can still be called.
  • management.server.port and server.port were different, causing an error during startup.
  • The gateway obtained instances in different environments.

1.7.0-2020.0.x

  • The gateway failed to be started because Web MVC was combined with the route.
  • The gateway cannot implement route definition based on service discovery.
  • The gateway cannot implement service discovery across applications.

1.6.1-2020.0.x

NOTE:

Major problems exist. You are not advised to use it:

  • The configuration center was queried frequently.
  • Incorrect configurations were found.

1.9.4-Hoxton

When a configuration update event was released in the same configuration center configurations, the pooling configuration may not be found during the request.

1.9.3-Hoxton

When a service was deleted or restarted, the Ribbon cache cannot be updated. As a result, the request was sent to an unavailable service.

1.9.2-Hoxton

After an instance was deleted and another instance was registered on the server, the client selected an incorrect server instance.

1.9.1-Hoxton

  • In some scenarios, the ags attribute of the startup class was incorrectly loaded.
  • The maximum number of retries was unlimited.
  • The dark launch dynamic configuration did not take effect.

1.9.0-Hoxton

When instance.healthCheck.mode was pull, the custom healthCheckInterval did not take effect.

1.8.0-Hoxton

  • When too many query tasks were configured in non-long polling mode, the tasks were triggered at no interval.
  • After a service instance was brought offline on the CSE page, the service instance can still be called.
  • management.server.port and server.port were different, causing an error during startup.
  • The gateway obtained instances in different environments.

1.7.0-Hoxton

  • The gateway failed to be started because Web MVC was combined with the route.
  • The gateway cannot implement route definition based on service discovery.
  • The gateway cannot implement service discovery across applications.

1.6.0-Hoxton

  • SDK sent a retry request to the engine based on error codes 401 and 403.
  • The default routing rule of the gateway did not take effect.
  • Cross-application calling was not supported.

1.5.9-Hoxton

  • RBAC authentication did not take effect.
  • The latest microservice version cannot be obtained during dark launch routing.
  • Some JDK versions did not support swagger cyclic dependency.

1.5.8-Hoxton

  • An incorrect instance was selected during gateway service discovery.
  • A calling exception occurred when the instance status was empty.

1.5.6-Hoxton

  • The AK/SK did not take effect after being configured, and the authentication failed.
  • The server.env configurations did not take effect and were empty.
  • Governance configuration items in the configuration center can still be used after being deleted.
  • The circuit breaker configuration attribute of the sliding window did not take effect.
  • A null pointer exception occurred after the watch mode was enabled in the registry center.
  • Only the first address can be read when the environment variable PAAS_CSE_SC_ENDPOINT was read.

1.5.0-Hoxton

  • Incorrect governance rules caused a null pointer exception.
  • A null pointer exception occurred when the AK/SK was not configured.
  • The traffic limiting policy did not take effect for the first concurrent request after the service was started.
  • An incorrect service was selected for governance. As a result, the request was abnormal.
  • When the environment was production and the schema remained unchanged, the service failed to be restarted.

1.6.4-Greenwich

When a configuration update event was released in the same configuration center configurations, the pooling configuration may not be found during the request.

1.6.3-Greenwich

When a service was deleted or restarted, the Ribbon cache cannot be updated. As a result, the request was sent to an unavailable service.

1.6.1-Greenwich

An exception occurred during cross-application service discovery of the gateway.

1.6.0-Greenwich

  • SDK sent a retry request to the engine based on error codes 401 and 403.
  • The routing rule of the gateway did not take effect.
  • The latest microservice version cannot be obtained during dark launch routing.
  • The AK/SK configuration did not take effect.
  • The server.env configurations did not take effect and were empty.
  • Service center failed to be started in watch mode.
  • Only the first address can be read when the environment variable PAAS_CSE_SC_ENDPOINT was read.
  • Cross-application calling was not supported.

1.5.0-Greenwich

  • Incorrect governance rules caused a null pointer exception.
  • A null pointer exception occurred when the AK/SK was not configured.
  • The traffic limiting policy did not take effect for the first concurrent request after the service was started.
  • A service forwarding error occurred in governance.
  • When the environment was production, the schema was repeatedly registered. As a result, the startup failed.

v1.3.3-Greenwich

The listening function of the registry center did not take effect.

1.6.1-Finchley

  • The calling failed randomly during the first concurrency after the service was started.
  • Microservices failed to be called across applications.

1.6.0-Finchley

  • SDK sent a retry request to the engine based on error codes 401 and 403.
  • The routing rule of the gateway did not take effect.
  • The latest microservice version cannot be obtained during dark launch routing.
  • The AK/SK configuration did not take effect.
  • The server.env configurations did not take effect and were empty.
  • Service center failed to be started in watch mode.
  • Only the first address can be read when the environment variable PAAS_CSE_SC_ENDPOINT was read.
  • Cross-application calling was not supported.

1.5.1-Finchley

Governance configurations in the configuration center can still be used after being deleted.

v1.3.9

NOTE:

Major problems exist. You are not advised to use it:

A critical service forwarding error occurred in governance.

v1.3.8

NOTE:

Major problems exist. You are not advised to use it:

A critical service forwarding error occurred in governance.

v1.3.4

  • The registry thread pool cannot be closed correctly, causing leakage.
  • The microservice failed to be registered after the actuator was enabled.
  • There were too many heartbeats in some scenarios.

v1.3.3

  • WebSocket failed to send a WebService request.
  • The watch of the registry center did not take effect.

v1.3.2

  • When the environment was production, the schema failed to be registered.
  • Random address selection failed when the registry center URL was not set.
  • The watch was abnormal when the domain name was configured in the registry center.

v1.2.0

When the default AK/SK configuration was read from ServiceStage, too many objects were initialized, causing memory leakage.

v1.1.0

  • There were too many heartbeat information logs.
  • SSL calling between microservices did not take effect.
  • The request was abnormal when the URL contained spaces.

v1.0.0

Automatic service discovery cannot be performed in some scenarios.

v0.0.3

  • The service discovered instances in the down state.
  • The configured path was too long.
  • The microservice failed to connect to the local CSE engine.

Java Chassis

Java Chassis Version

Resolved Issues

3.1.0

  • "UnsupportedOperationException" was reported when the @RestController annotation class was scanned.
  • idleTimeout was incorrectly set. As a result, some connections were closed.

3.0.2

  • When multiple identical keys existed in the configuration center, the updated configuration did not take effect.
  • The node information was not correctly destroyed. As a result, the request was abnormal.

3.0.1

Fallback label-based routing was supported.

2.8.16

idleTimeout was incorrectly set. As a result, some connections were closed.

2.8.15

When multiple identical keys existed in the configuration center, the updated configuration did not take effect.

2.8.14

  • The request context was lost.
  • An exception occurred when SCBEngine was shut down.
  • When the content was empty, buffer reader was incorrect.

2.8.13

  • The connection timed out, and the metric statistics were incorrect.
  • SDK was abnormal when the attachment to be uploaded was empty.

2.8.12

  • The registry center frequently changed microservices. As a result, the newly deployed instance cannot be found and the cache instance was still used.
  • Vertx was occasionally shut down abnormally, and the blocking service was shut down normally.

2.8.11

When DefaultHttpClientFilter failed to deserialize the response body, the exception information was incorrect.

2.8.10

  • Content-Type set for ResponseEntity did not take effect.
  • The registry center frequently changed microservices. As a result, the newly deployed instance cannot be found and the cache instance was still used.

2.8.9

  • The bean of the service startup registry class was initialized twice.
  • The configuration was compatible with the registry center configuration of engine 1.x.
  • The cache instance information was not updated during concurrent registry.

2.8.8

  • Microservice routing should obtain attributes from instances to determine the route distribution policy.
  • An error occurred when HttpUtils parsed Content-Disposition. As a result, ReadStreamPart cannot obtain the file name.

2.8.7

The available AZ was null by default.

2.8.6

  • Configuration item keep-alive of the HTTP client was modified.
  • The microservice version number was obtained during concurrent access.

2.8.5

If the number of consecutive errors was 0 or fewer, the error percentage cannot take effect.

2.8.4

The request was incorrect because the instance change time was abnormal.

2.8.3

The definition of caseInsensitive in the routing rule was modified.

2.8.2

  • During the effective matching of a governance rule, the apiPath matching was incorrect.
  • An exception occurred when the body parameter in the MVC request was null.

2.8.1

The load isolation switch did not take effect.

2.8.0

  • idleTimeout and keepAliveTimeout were incorrect.
  • The highway protocol time in the edge gateway was incorrectly parsed.
  • A null pointer exception occurred on the rate limiting governance rule.

2.7.10

  • The environment variables reported by the dashboard were incorrect.
  • When registry was unavailable, the cached service was cleared. As a result, the request was abnormal.

2.7.9

A null pointer exception occurred when autoDiscovery was enabled.

2.7.8

  • A metadata memory leak occurred.
  • The findByContext method caused memory overflow.
  • PriorityInstancePropertyDiscoveryFilter generated debug logs.

2.7.6

  • The ProducerOperationHandler error log recorded a wrong traceID.
  • The instance isolation filter did not take effect.
  • A null pointer exception occurred when the routing rule version was empty.

2.7.5

  • Too many events were queued each time an instance was pulled to release events.
  • Span was empty in some scenarios of Zipkin.
  • The kie configuration center did not support filesource separation by commas (,).

2.7.3

  • The dynamic configuration modification of dark launch release was invalid.
  • The request context combination logic conflicted.

2.7.0

IsolationDiscoveryFilter created too many objects.

2.6.3

  • The retry was abnormal when a service failed to be selected for load balancing.
  • The calculation of retries did not take effect.

2.6.0

  • During file download, the part content was empty. As a result, a null pointer exception occurred.
  • The empty string of the highway protocol was serialized.
  • The key pulled the configuration too fast in non-long pulling mode.
  • A null pointer exception occurred when the SDK was deployed for the first time after an engine was created.
  • The highway protocol was added and the default response body size limit was 20 MB.

2.5.2

The default value of idleTimeout for the ServiceComb client connection was changed from 60s to 30s.

2.5.1

An exception was thrown when the kie pulled an empty configuration for the first time.

2.5.0

RPC failed to be called in the vert.x work pool.

2.3.0

  • After the configuration in the configuration center was updated, the rate limiting component was abnormal.
  • The custom executor failed to be added to the edge gateway service.
  • The AK/SK switch was on, and the encryption class failed to be obtained for the first time.
  • Placeholder were not supported.
  • slidingWindowType did not take effect for circuit breaker.
  • OOM occurred when a request was forwarded to a microservice that did not exist.
  • Error 404 occurred when a wrong address was retried.
  • The registration center failed to listen to the instance.
  • A deadlock occurred when a bean class was injected in XmlViewResolver and SPI modes at the same time.
  • After the configuration was changed, the dark launch route did not use the latest version.
  • The configuration change event was incorrectly triggered when filesource was configured.
  • The registry center address supported array placeholder configuration.
  • When the dashboard was enabled, the startup failed due to a null pointer exception.

2.2.4

2.2.3

2.2.2

2.2.1

2.2.0

  • The governance configuration did not correctly process empty configurations and print incorrect operations.
  • RestTemplate failed to upload multiple files randomly.
  • When deleteAfterSuccess was set to true, the downloaded file in the servlet context failed to be deleted.

2.1.6

2.1.5

  • The start failed when the main method did not contain the package name.
  • An exception occurred when the third-party service was registered and started.
  • An exception occurred when setting the response header for the HTTP2 request.
  • YAML was parsed insecurely.
  • The collection placeholders were parsed.
  • APP_MAPPING failed to parse the ServiceStage environment variables.

2.1.3

  • The isolated instance was not restored after the response was correctly returned.
  • Asynchronous callback was triggered when the connection was closed due to timeout.
  • The service configuration and the default spring value did not take effect.
  • servicecomb.references.version-rule did not take effect.
  • Service isolation did not take effect due to timeout.

2.1.2

  • The API remained unchanged and the JDK version was different. The schema reading sequence was inconsistent. As a result, the schema verification failed.
  • The service status was incorrect. As a result, the isolated instance cannot be called.
  • A null pointer exception occurred when the gateway read the microservice name.

2.1.1

  • When the native parameters were empty, a null pointer exception was thrown during highway protocol parsing.
  • When the connection timed out, the obtained connection time was 0.
  • The yaml and properties configurations cannot be correctly processed.
  • RegistryUtils API did not use the version rule parameters.

2.1.0

  • OOM occurred because the instance information failed to be set continuously.
  • The client label in the microservice metadata was incorrect.
  • A service calling exception occurred on the instances of different versions and APIs.
  • A request exception occurred when the highway protocol contained an appId.

2.0.2

  • The jackson conversion overwrote all objects.
  • The kie parsing configuration was incorrect.
  • The version number query configuration was added to kie.

2.0.1

  • idleTimeoutInSeconds in HTTP2 was not used.
  • A null pointer exception occurred when @RequestHeader(value ="xxx") and the aggregation parameters were used at the same time.
  • A request exception occurred when the interface parameter was defined as an object.

1.3.11

  • Configuration item keep-alive of the HTTP client was modified.
  • If the number of consecutive errors was 0 or fewer, the error percentage cannot take effect.

1.3.10

  • The load isolation switch did not take effect.
  • An exception occurred when setting the response header for the HTTP2 request.

1.3.9

A null pointer exception occurred on the rate limiting governance rule.

1.3.8

The instance isolation filter did not take effect.

1.3.7

IsolationDiscoveryFilter created too many objects.

1.3.5

  • idleTimeout of the request client did not take effect.
  • The server was suspended and there was no stack information.

1.3.3

  • YAML was parsed insecurely.
  • The isolated instance was not restored after the response was correctly returned.

1.3.2

1.3.1

  • The API remained unchanged and the JDK version was different. The schema reading sequence was inconsistent. As a result, the schema verification failed.
  • A null pointer exception occurred when @RequestHeader(value ="xxx") and the aggregation parameters were used at the same time.
  • The service status was incorrect. As a result, the isolated instance cannot be called.
  • The CPU was overloaded when there were too many instances.
  • The file upload was abnormal. As a result, no response was returned.
  • The default status was reset when the registry center was re-registered due to an exception.
  • SwaggerProducerOperation printed sensitive information logs.

1.3.0

  • No exception was returned for FallbackPolicy.
  • CseAsyncRestTemplate did not support header settings.
  • RSAProviderTokenManager caused a memory leak.
  • ServiceCombServerStats.getFailedRate threw ArithmeticException: /by zero.
  • The swagger failed to generate a schema when a rewriting method existed.
  • When the RPC calling method had multiple parameters and the first parameter was Object, the second parameter was empty.

1.2.0

  • The @ConfigurationProperties annotation was not supported.
  • HTTP2 did not support file download.
  • When acceptType existed on the client, the file download was abnormal.
  • When the startup failed, the destruction method overwrote the original exception information.
  • An exception occurred when metrics-prometheus adapted to prometheus-2.x.
  • The CPU usage calculated by the framework was incorrect.
  • An exception occurred when the schema was empty.
  • The Spring MVC application developed based on ServiceComb failed to be started.
  • The collected information was incorrect when an exception occurred during REST calling.
  • A null pointer exception occurred when the return type was defined as ResponseEntity<Void>.
  • The AZ affinity was abnormal when the instance was empty.
  • The request policy was rejected when the thread queue was full.
  • httpClientResponse.exceptionHandler threw an exception.

1.1.0

  • A service thread deadlock occurred after delayed error injection was enabled.
  • The latest service failed to be accessed.
  • The request was abnormal because unavailable services were not cleared in a timely manner.
  • The edge service did not correctly return the servlet response code.
  • The mvn install command was used for packaging in Ubuntu.
  • The sequence of parameters generated by BeanParamAnnotationProcessor was unstable.
  • In the callback scenario, the instance attribute of the old version was used. As a result, the request was incorrect.
  • The downloaded content was incorrect.
  • The @ApiResponse annotation lost the response type.
  • The encoding and decoding of request parameters were incorrect.
  • JSON parsing was incorrect and the return code was incorrect.
  • servicecomb.xx.xx did not take effect as a governance rule.
  • The request connection was suspended when the request path contained invalid characters.
  • The NotFoundException exception was thrown during internal class parsing.

1.0.0

  • The traffic limiting policy did not take effect.
  • The configurations starting with cse and servicecomb were set at the same time. As a result, the configuration values cannot be obtained.
  • An exception occurred when RPC requested the void method.
  • After a client requested an unregistered service, the request still cannot find the server even if the service was registered again.
  • A null pointer was returned when an unregistered service as queried.
  • 1.0.0-m2
  • When Zuul was used as the gateway for routing, and the same microservice API was opened in REST and highway modes at the same time, the client cannot call the API.
  • When the service name or schema ID contained a period (.), the QPS handler was abnormal.
  • The weighted load policy initialization and stateless access were responded.
  • Files with Chinese names cannot be downloaded.
  • An exception occurred during re-registration when the service contained environment variables.
  • A null pointer exception was thrown when the producer implementation class did not have an implementation method.
  • A null pointer exception was thrown when the uploaded content was empty.
  • When the size of the file to be uploaded exceeded the upper limit on the server, the client returned an error response.
  • The edge gateway threw an exception when the server returned Transfer-Encoding header.
  • Concurrent service discovery occurred when concurrent requests were sent.
  • The edge gateway service covered all error codes and returned error code 502.
  • Graceful shutdown did not take effect in some scenarios.

0.5.0

  • RSAConsumerTokenManager created an authentication token.
  • When a service was shut down, the service was not deregistered from the registry center.
  • Automatic service discovery did not take effect.
  • The edge gateway service did not correctly process the 404 request.

0.4.0

  • When a servlet request timed out, the async call was not supported or a null pointer exception was thrown.
  • No response can be obtained when an exception occurred during calling.
  • The REST producer returned an error type.

0.2.0

  • Re-registration cannot be performed in the retry thread.
  • When a schema failed to be registered, the logs did not contain the exception information.
  • When the service was started, a null pointer exception occurred during registry.