4 Bugs Fixed and Enhancements in this Release

Learn about the bugs fixed and enhancements in this release.

This chapter includes the following section:

Oracle Coherence for Java

New features, improvements, and bug fixes added to Oracle Coherence for Java components.

Enhancements and Fixes for 14.1.1.0

  • Fixed an issue where links returned by Management over REST may have incorrectly URL encoded path separators.

  • Fixed an issue where a NullPointerException may be thrown when resubmitting asynchronous cache requests internally.

  • Added restricted reflection access to a small subset of core JDK classes.

  • Fixed an issue where indexes are not recovered from persistence after a cluster restart.

  • Reverted changes to report-cache-effectiveness.xml due a performance regression.

  • Fixed an issue where service statistics from management over REST do not aggregate across all services. Queries such as coherence/management/services;field=StatusHA now return the correct result.

  • Updated Coherence REST examples to use Oracle JET instead of Bootstrap/AngularJS and jQuery.

  • Fixed an issue that would prevent Coherence Metrics from initializing due to a ClassCastException.

  • Fixed an issue where federation members may get stuck in the YIELDING state due to changes to cache entries, which expired before the changes were federated to destination participants.

  • Fixed an issue where a ConfigurableCacheFactory is initialized in a WebLogic server even if Coherence is not enabled.

  • Fixed an issue where a ClusterService is initialized when coherence-metrics.jar is added to the classpath.

  • Fixed an issue where the getOrDefault method of InvocableMap (and consequently NamedCache) and AsyncNamedCache did not conform to the java.util.Map contract. The default value should only be returned when the key is not present in the cache. However, the default value was also being returned when the key was present and mapped to null.

  • Fixed an issue where the AsynNamedCache.getAll() method did not conform to the com.tangosol.net.cache.CacheMap contract in that the returned Map contained entries for all of the requested keys instead of containing entries for only the requested keys that were present in the cache.

  • Fixed a typographical error in the management over REST API for /management/coherence/cluster/members/{memberId}/platform/g1SurvivorSpace.

  • Fixed an issue with the Persistence examples to ensure MBean registration is complete before starting the example.

  • Fixed an issue where a NullPointerException may be thrown in reportLastOwnership during simultaneous shutdown.

  • Fixed an issue where federation destination members may use heap memory inefficiently for storing cache entries, resulting in larger heap sizes than origin members for the same amount of cache data.

  • Fixed an issue where an OutOfMemoryError could be thrown for a ReadWriteBackingMap with registered MapListeners.

  • Fixed an issue where keys are deserialized if returned as keys in the Map that is returned by an EntryProcessor.processAll invocation.

  • Fixed an issue where Coherence fails to start when coherence-metrics.jar is added to the classpath and the extendedmbeanname property is set to true.

  • Fixed an issue where getAll() on a NearCache may return incorrect results for an *Extend client.

  • Fixed an issue in LimitFilter when used in deserialization via the WebLogic T3 protocol that could allow for arbitrary code execution.

  • Fixed an issue where getAll() on a NearCache may return incorrect results for an *Extend client.

  • Fixed an issue where an exception may not be thrown if a ContinuousQueryCache is in a disconnected state and fails to re-synchronize.

  • Updated the SFTP Snapshot Archiver example to use Apache Mina SSHD.

  • Fixed an issue where some of the default InvocableMap methods do not cause read-through from a CacheStore when they should.

  • Fixed an issue where there may be repeated logging of a message related to an unexpected EvictionApprover during partition transfer.

  • Allow persistent writes to be performed asynchronously.

  • Fixed an issue where a listener on a 12.2.1.0.x, 12.2.1.1.x, 12.2.1.2.x or 12.2.1.3.x Extend client NearCache may miss some events.

  • Fixed an issue where a NullPointerException may be thrown by Coherence*Web due to access to a session which is no longer valid when there is a high rate of sessions being invalidated.

  • Lowered the severity of the log message, which states that event interceptors are already registered when restarting a service.

  • Fixed an issue where a service may terminate due to IllegalArgumentException: unknown extent identifier being thrown during a rolling restart of an active persistence enabled cluster.

  • Fixed an issue where Berkeley DB configuration specified as init-params on the bdb-store-manager configuration element was being ignored.

  • Fixed an issue where connection migration may occur in a loop, without resolution.

  • Fixed an issue where the Maven enforcer dependencyConvergence rule would generate warnings concerning Jackson modules.

  • Fixed an issue where federation may end up in a high CPU usage busy-loop during a ReplicateAll operation.

  • Fixed an issue where persistence data loss may occur on cluster restart if a client service had ensured a cache before any storage member was started and there was no cache update operation while the cluster was running, prior to the restart.

  • Fixed an issue with management over REST API return values for MBean attributes, ensuring that the ObjectName key property with same name as attribute does not override its value.

  • Fixed an issue where the cluster service could be terminated due to an unhandled IllegalAccessException being thrown by the SlabBufferManager.

  • Fixed an issue where Coherence*Web threads may be stuck at com.tangosol.util.SegmentedConcurrentMap.lock.

  • Fixed a rare issue where destroying and recreating a partitioned cache may incorrectly throw an exception.

  • Fixed an issue where the service thread may be blocked in the journal congestion state during a rolling restart.

  • Added AverageReapQueueWaitDuration to the SessionReaper statistics which indicates the average time a reap task spends in queue, prior to being invoked.

  • Enhanced the Coherence*Web session reaper to operate on the back map when a NearCache is used to store HTTP sessions.

  • Enhanced federation to allow synthetic updates in a federation interceptor. The synthetic update will have different behavior depending on the federation event type: COMMITTING_LOCAL - the change will not be federated to other clusters and CacheStores will not be called. REPLICATING - setting the change synthetic is not allowed. An UnsupportedOperationException will be thrown. COMMITTING_REMOTE - the change will be applied as a synthetic change. CacheStores will not be triggered and federation will not forward the change to other clusters from this destination cluster.

  • Changed the Coherence REST example to use Oracle JET.

  • Federation internal caches are now excluded from persistence snapshots.

  • Fixed an issue where partition distribution may take longer than expected with the error message:

    Unreconcilable ownership conflict; conceding the ownership

Oracle Coherence for .NET

New features, improvements, and bug fixes added to Oracle Coherence for .NET components.

Enhancements and Fixes for 14.1.1.0

  • Fixed an issue where DNS lookups which take longer to complete than the connect-timeout interval would not be interrupted.

  • Fixed an issue where an exception may not be thrown if a ContinuousQueryCache is in a disconnected state and fails to re-synchronize.

Oracle Coherence for C++

New features, improvements, and bug fixes added to Oracle Coherence for C++ components.

Enhancements and Fixes for 14.1.1.0

  • Fixed an issue where an exception may not be thrown if a ContinuousQueryCache is in a disconnected state and fails to re-synchronize.