Skip to content

Coherence CE v20.12

Compare
Choose a tag to compare
@harveyraja harveyraja released this 22 Dec 19:22
· 121 commits to v20.12 since this release

This is the official Coherence CE v20.12 release including a new API to configure & start Coherence, and faster recovery from disk.

New Features in 20.12:

Bugs fixed since Coherence CE 20.06.1:

  • Improved partition assignment strategy to adaptively wait for distribution plans to complete before suggesting new advice.
  • Added events around Session lifecycle.
  • Fixed an issue where ValueUpdater interface was not serializable and could cause certain lambda entry processors to fail to execute.
  • Updated helidon dependency to latest version, 2.2.0
  • Fixed dependencies in coherence-java-client to not require helidon.
  • Fixed an issue with the VisualVM Plugin where no error message was displayed when connecting to an invalid URL.
  • Fixed an issue with the VisualVM Plugin where cache memory bytes could show incorrectly in large clusters.
  • Fixed an issue where service could fail to recover a partition repeatedly if persistence enabled and cluster shutdown without suspending first.
  • Improved the configuration of the hostname-verifier with the introduction of an "action" element with permitted values of "allow" or "default"; see the XSD for a thorough description.
  • Fixed an issue where CacheLifecycleEvents are not emitted for existing caches.
  • Fixed an issue where a bad client request could cause a Coherence server to shut down and prevent new servers from joining the cluster.
  • Fixed an issue where a service could repeatedly fail to recover a partition.
  • Fixed a memory leak of metrics metadata when metrics is enabled.
  • Fixed an issue with coherence-json module removing jackson-annotations as a required runtime library.
  • Fixed an issue where a custom namespace handler cannot be used within a backing-map-scheme element.
  • Fixed an issue where loaded entry from CacheStore has inconsistent entry-event type and synthetic flag.
  • Fixed an issue where PartitionedCache's PartitionControl may hang indefinitely due to a discarded backup message.
  • Fixed a memory leak which can occur in an *Extend client when using a custom AddressProvider.
  • Fixed an issue where a service could be terminated while finalizing a cache request.
  • CVE-2020-14756 Fixed an issue where the JEP 290 ObjectInputFilter is bypassed when deserializing an ExternalizableLite object.
  • Fixed an issue where the service thread could be terminated while blocked waiting for an index rebuild to finish.
  • Fixed an issue where a service with on-demand persistence mode could be blocked by the recovery quorum from a system property.
  • Corrected the MANIFEST.MF Bundle-Version in Coherence jar files.
  • Fixed an issue where a deadlock could occur when a node becomes the dynamic management senior while there are other management nodes in the cluster.
  • Improved recovering from persistence by deferring contentious maintenance tasks.
  • Fixed an issue where a cache remove operation could get lost during partition transfer.
  • Fixed an issue where NonBlockingFiniteStateMachine.quiesceThenStop() does not shut down the state machine's event processing thread.
  • Fixed an issue where partition recovery could take a long time for a large cluster, especially with persistence using shared disk storage.
  • Added new attributes starting with Client to ConnectionMBean to identify a Connection to its client when a loadbalancer is between proxy and client. These attributes are mapped to metrics tags on Coherence.Connnection.* metric values.
  • Fixed an issue with binary map detection within a ContinuousQueryCache.
  • Fixed an issue where partition distribution may fail to reach a balanced state within 5 minutes after recovering from a persistence snapshot.
  • Fixed an issue where a NullPointerException could be thrown during partition redistribution.
  • Fixed a race condition in ConfigurableCacheFactory where concurrent releaseCache() or destroyCache() calls could result in an IllegalArgumentException being thrown.
  • Improved Coherence JVisualVM Plugin to work with 2.0.x versions.
  • Fixed an issue with the JVisualVM Plugin where it did not correctly function against Coherence-CE versions.
  • Fixed an issue where TcpRing may incorrectly trigger eviction of a temporarily network unreachable cluster member.
  • Fixed an issue where partition distribution for a large cluster could take a long time to reach the desired state.
  • Added security enhancement that enables configuring between secure static lambdas and more convenient to use dynamic lambdas.
  • Coherence now recovers data in parallel within a member/process, in addition to in parallel across the cluster. This allows the cluster, and more importantly the associated data, to be made available as quickly as possible.
  • Fixed an issue where a registered MapTrigger may not be called.