Chapter 7. Updates and Enhancements in 7.3.5

7.1. Clustered Maximum Idle Expiration

Clustered max-idle expiration is enhanced in this release to prevent data loss with clustered cache modes.

As of this release, when clients read entries that have max-idle expiration values, Red Hat Data Grid sends touch commands to all owners. This ensures that the entries have the same relative access time across the cluster.

See Maximum Idle Expiration.

7.2. Socket Timeout Exceptions Provide Connection Details

As of this release, when Hot Rod client connections time out, Red Hat Data Grid provide additional detail about connections in exception messages, as in the following example:

Socket timeout exceptions before this release

org.infinispan.client.hotrod.exceptions.TransportException::
java.net.SocketTimeoutException: ContainsKeyOperation{ExpirationCache,
key=[B0x033E0131, flags=0} timed out after 60000 ms

Socket timeout exceptions as of this release

org.infinispan.client.hotrod.exceptions.TransportException::
java.net.SocketTimeoutException: ContainsKeyOperation{ExpirationCache,
key=[B0x033E0131, flags=0, connection=127.0.0.1/127.0.0.1:11222} timed out
after 60000 ms

7.3. Hot Rod Client Connection Pool Configuration

As of this release, Data Grid Hot Rod C++ clients allow you to configure the recover policy when the connection pool is exhausted.

  • configurationBuilder.connectionPool().exhaustedAction(WAIT) waits indefinitely for a connection to be returned and made available.
  • configurationBuilder.connectionPool().exhaustedAction(EXCEPTION) throws NoSuchElementException.

7.4. Data Grid Documentation

Data Grid server documentation was updated to describe how to collect JMX statistics with Prometheus.

See Exposing JMX Beans to Prometheus.

The Data Grid User Guide was updated to clarify capacity factor configuration for cross-site replication.

See "Capacity Factors" in Key Ownership.