GridGain Developers Hub

GridGain 8.7.33 Release Notes

Changes in Behavior

Deactivating an In-Memory Cluster

Starting this version --deactivate command is deprecated. It is recommended to use --set-state inactive instead. Also, starting this version --deactivate command will no longer work on a cluster with in-memory caches. The reason for this change is that deactivation causes all in-memory data to be deleted which is normally not the indented result. If you wish to deactivate a cluster with in-memory caches, use a new --force parameter of the --set-state command: --set-state inactive --force.

Improvements and Fixed Issues

Community Edition Changes


Cluster Storage Engine

Fixed an issue that led to an AssertionError when a client node was joining or leaving concurrently with ATOMIC cache updates.


Cluster SQL Engine

Fixed an issue causing duplicated rows in query results when partition eviction was in progress.


Cluster Storage Engine

Updated hibernate-core to version 5.4.24.Final and jackson-databind to version 2.11.0.


Cluster Metrics & Monitoring

Fixed "allocated RAM" metric for clusters with both persistent and in-memory caches.


Platforms & Thin Clients

.NET: Added an ability to enable Java peer class loading via IgniteConfiguration.


Control Center Agent

Fixed a bug causing propagation of the wrong connection status.


Control Center Agent

Fixed incorrect parsing of the URI command parameters.


Cluster Compute Grid

Added an ability to use the server’s version of a class when both server and client have the same class and peer class loading is enabled.


Platforms & Thin Clients

.NET: Added RendezvousAffinityFunction.BackupFilter with a single predefined implementation - ClusterNodeAttributeAffinityBackupFilter.


Cluster Communication

Fixed an issue with the local cluster group using incorrect node id after reconnecting.


Cluster Communication

Fixed an issue with the inverse connection request that was not canceled immediately when node failure is detected.


Cluster SQL Engine

Fixed an issue with unsupported SQL data type INTERVAL: the INTERVAL value is converted to BIGINT data type for the result set. Also added implicit conversion from/to numeric types.


Platforms & Thin Clients

.NET: Fixed CachePartialUpdateException when key and value referenced the same objects in an async cache operation.


Cluster Storage Engine

Updated Opencensus to 0.28.2 version.


GridGain Integrations

Updated Jetty to 9.4.35.v20201120 version.


Cluster Storage Engine

Added new system property IGNITE_EXECUTE_DURABLE_BACKGROUND_TASKS_ON_NODE_START_OR_ACTIVATE to turn off execution of background tasks on node start or cluster activation.


Cluster Storage Engine

Fixed an issue that led to incorrect mapping of transactions.


Cluster SQL Engine

Fixed an issue causing incorrect SQL results when an open-range predicate over a primary key was used.


Platforms & Thin Clients

Fixed issue with asynchronous operations blocking user threads on updates.


Platforms & Thin Clients

.NET: Fixed NullPointerException in ICache.GetAffinity on client nodes.


Platforms & Thin Clients

Fixed unexpected channel close due to inactivity.


Cluster Storage Engine

Fixed an issue with collecting metrics for not initialized data region.


Cluster SQL Engine

Added limited support for LEFT JOIN from REPLICATED tables to PARTITIONED.


Cluster Storage Engine

Fixed possible deadlocks when unordered keys passed to putAll, removeAll.


Cluster Storage Engine

Fixed an issue that could lead to node failure when -DIGNITE_PDS_LOG_CP_READ_LOCK_HOLDERS=true option was used.


Cluster Metrics & Monitoring

Added new LastCheckpointStart metric indicating the start time of the checkpoint.


Cluster Control Script

Fixed an issue that led to NullPointerException when diagnostic connectivity command was used.


Platforms & Thin Clients

Added new PROBE command to determine whether the node is fully started.


Control Center Agent

Improved names for threads created by agent thread pools.


Platforms & Thin Clients

.NET: Fixed misleading exception when LINQ expression could not be translated to SQL.


Cluster Storage Engine

Fixed an issue when a node’s failure handler could be triggered by a long persistent caches recovery on startup.


Cluster Discovery

Renamed JVM_OPTS to MANAGEMENT_JVM_OPTS in management.bat and


Cluster Storage Engine

Fixed an issue with the Ignite Out Of Memory error that triggered failure handler.


Cluster Affinity and Baseline Topology --deactivate now requires an additional option --force to deactive an in-memory cluster.


Cluster Control Script --indexes_list now correctly shows indexes created via the CREATE INDEX statement.

Enterprise Edition Changes


Cluster Data Replication

Fixed an issue causing excessive Java heap memory usage when Data Center Replication was enabled for TRANSACTIONAL caches.


Cluster Data Replication

Fixed an issue that could lead to node hanging after a restart when Native Persistence and Data Center Replication were used.


Cluster Data Replication

Fixed a bug when a connection to a remote data center could be unexpectedly closed under load.


Cluster Data Replication

Fixed an issue when data center replication could hang on node deactivation.


Cluster Security

Fixed a compatibility issue when the security subject could not be properly deserialized.

Ultimate Edition Changes


Cluster Data Snapshots and Recovery

Fixed point-in-time recovery when multiple nodes were running on a single physical machine.


Cluster Data Snapshots and Recovery

Added snapshot events for tracking create, check, copy, and delete operations.

Installation and Upgrade Information

See the Rolling Upgrades page for information about how to perform automated upgrades and for details about version compatibility.

Below is a list of versions that are compatible with the current version. You can rolling-upgrade from any of those. Compatibility with other versions is not guaranteed. If you are on a version that is not listed, contact GridGain for information on upgrade options.

8.5.3, 8.5.5, 8.5.6, 8.5.7, 8.5.8, 8.5.8-p6, 8.5.9, 8.5.10, 8.5.11, 8.5.12, 8.5.13, 8.5.14, 8.5.15, 8.5.16, 8.5.17, 8.5.18, 8.5.19, 8.5.20, 8.5.22, 8.5.23, 8.5.24, 8.7.2, 8.7.2-p12, 8.7.2-p13, 8.7.3, 8.7.4, 8.7.5, 8.7.6, 8.7.7, 8.7.8, 8.7.9, 8.7.10, 8.7.11, 8.7.12, 8.7.13, 8.7.14, 8.7.15, 8.7.16, 8.7.17, 8.7.18, 8.7.19, 8.7.19-p1, 8.7.20, 8.7.21, 8.7.22, 8.7.23, 8.7.24, 8.7.25, 8.7.26, 8.7.27, 8.7.28, 8.7.29, 8.7.30, 8.7.31, 8.7.32

Known Limitations

Jetty Configuration Incompatibility in GridGain 8.7.21 and Later

If you are upgrading from version 8.7.20 or earlier, consider an incompatibility issue related to Jetty configuration introduced in GridGain 8.7.21.

Your setup may be affected if:

  • You use the ignite-rest-http module (e.g. to connect to GridGain Web Console)

  • You have a custom Jetty configuration that enables SSL for REST

  • Your Jetty configuration uses the org.eclipse.jetty.util.ssl.SslContextFactory class

  • The keystore specified in the Jetty configuration contains both the CA certificate and the private certificate

In this case, after starting a new version, an exception is thrown with an error message similar to the following:

java.lang.IllegalStateException: KeyStores with multiple certificates are not supported on the base class
org.eclipse.jetty.util.ssl.SslContextFactory. (Use org.eclipse.jetty.util.ssl.SslContextFactory$Server
or org.eclipse.jetty.util.ssl.SslContextFactory$Client instead)

To workaround this issue, alter the Jetty configuration to use org.eclipse.jetty.util.ssl.SslContextFactory$Server or org.eclipse.jetty.util.ssl.SslContextFactory$Client. See the configuration example at the Client Certificate Authentication page.

Default rebalanceThreadPoolSize in GridGain 8.7.26 and Later

In GridGain 8.7.26, the default value of the property IgniteConfiguration.rebalanceThreadPoolSize changed from 1 to min(4, number of CPU / 4). It may cause a compatibility issue under the following conditions:

  • When a Rolling Upgrade is performed

  • The upgrade is performed from 8.5.7 version (or earlier) to 8.5.x or from 8.7.3 (or earlier) to 8.7.x

  • The server nodes have at least 8 CPU cores

  • The nodes configuration does not have the property IgniteConfiguration.rebalanceThreadPoolSize, so the default value is used

In this case, an exception is thrown with an error message similar to the following:

сlass org.apache.ignite.IgniteException: Rebalance configuration mismatch (fix configuration or set -DIGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK=true system property).
Different values of such parameter may lead to rebalance process instability and hanging.  [rmtNodeId=5fc58fb7-209d-489a-8034-0127a81abed6, locRebalanceThreadPoolSize = 4, rmtRebalanceThreadPoolSize = 1]

To workaround this issue, change the configuration of the server nodes to rebalanceThreadPoolSize=1 so that it matches the previous default configuration. For example:

<bean class="org.apache.ignite.configuration.IgniteConfiguration">
    <property name="rebalanceThreadPoolSize" value="1"/>

    <!-- The rest of the configuration goes here -->

Jetty Doesn’t Accept Incorrect Configuration in GridGain 8.7.31 and Later

In GridGain 8.7.31 Jetty was upgraded to 9.4.33. Starting that version, Jetty has more strict validation of the provided configuration files. Before that version, an incorrectly spelled property in the configuration file had no effect. Starting this version, errors in the configuration lead to an error on start.

Your setup may be affected if:

  • You use the ignite-rest-http module (e.g. to connect to GridGain Web Console)

  • You have a custom Jetty configuration for REST

  • The custom configuration has errors in it

Please fix the custom Jetty configuration before upgrading. No Longer Enables Remote JMX by Default in GridGain 8.7.31 and Later

Starting from 8.7.31 version, GridGain no longer attempts to automatically enable the remote JMX. Default settings are known to cause issues if customized (for example, secure the connection). Also, in most cases, remote JMX is not required since many tools use local JMX connections (not using TCP).

Your setup may be affected if:

  • You start GridGain nodes via script

  • You connect to GridGain nodes' JMX interface remotely over TCP using the default configuration

We Value Your Feedback

Your comments and suggestions are always welcome. You can reach us here: or

Please visit the documentation for more information.