GridGain 8.7.33 Release Notes
Changes in Behavior
Deactivating an In-Memory Cluster
Starting this version control.sh --deactivate
command is deprecated. It is recommended to use control.sh --set-state inactive
instead.
Also, starting this version control.sh --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: control.sh --set-state inactive --force
.
Improvements and Fixed Issues
Community Edition Changes
GG-32146 |
Cluster Storage Engine |
Fixed an issue that led to an |
GG-32129 |
Cluster SQL Engine |
Fixed an issue causing duplicated rows in query results when partition eviction was in progress. |
GG-32115 |
Cluster Storage Engine |
Updated hibernate-core to version 5.4.24.Final and jackson-databind to version 2.11.0. |
GG-32099 |
Cluster Metrics & Monitoring |
Fixed "allocated RAM" metric for clusters with both persistent and in-memory caches. |
GG-32093 |
Platforms & Thin Clients |
.NET: Added an ability to enable Java peer class loading via IgniteConfiguration. |
GG-32067 |
Control Center Agent |
Fixed a bug causing propagation of the wrong connection status. |
GG-32061 |
Control Center Agent |
Fixed incorrect parsing of the URI command parameters. |
GG-32043 |
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. |
GG-32042 |
Platforms & Thin Clients |
.NET: Added RendezvousAffinityFunction.BackupFilter with a single predefined implementation - ClusterNodeAttributeAffinityBackupFilter. |
GG-32041 |
Cluster Communication |
Fixed an issue with the local cluster group using incorrect node id after reconnecting. |
GG-32019 |
Cluster Communication |
Fixed an issue with the inverse connection request that was not canceled immediately when node failure is detected. |
GG-32015 |
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. |
GG-31997 |
Platforms & Thin Clients |
.NET: Fixed CachePartialUpdateException when key and value referenced the same objects in an async cache operation. |
GG-31993 |
Cluster Storage Engine |
Updated Opencensus to 0.28.2 version. |
GG-31978 |
GridGain Integrations |
Updated Jetty to 9.4.35.v20201120 version. |
GG-31969 |
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. |
GG-31937 |
Cluster Storage Engine |
Fixed an issue that led to incorrect mapping of transactions. |
GG-31936 |
Cluster SQL Engine |
Fixed an issue causing incorrect SQL results when an open-range predicate over a primary key was used. |
GG-31927 |
Platforms & Thin Clients |
Fixed issue with asynchronous operations blocking user threads on updates. |
GG-31920 |
Platforms & Thin Clients |
.NET: Fixed NullPointerException in ICache.GetAffinity on client nodes. |
GG-31919 |
Platforms & Thin Clients |
Fixed unexpected channel close due to inactivity. |
GG-31916 |
Cluster Storage Engine |
Fixed an issue with collecting metrics for not initialized data region. |
GG-31909 |
Cluster SQL Engine |
Added limited support for LEFT JOIN from REPLICATED tables to PARTITIONED. |
GG-31893 |
Cluster Storage Engine |
Fixed possible deadlocks when unordered keys passed to putAll, removeAll. |
GG-31892 |
Cluster Storage Engine |
Fixed an issue that could lead to node failure when -DIGNITE_PDS_LOG_CP_READ_LOCK_HOLDERS=true option was used. |
GG-31867 |
Cluster Metrics & Monitoring |
Added new LastCheckpointStart metric indicating the start time of the checkpoint. |
GG-31855 |
Cluster Control Script |
Fixed an issue that led to NullPointerException when diagnostic connectivity command was used. |
GG-31796 |
Platforms & Thin Clients |
Added new PROBE command to determine whether the node is fully started. |
GG-31790 |
Control Center Agent |
Improved names for threads created by agent thread pools. |
GG-31757 |
Platforms & Thin Clients |
.NET: Fixed misleading exception when LINQ expression could not be translated to SQL. |
GG-31653 |
Cluster Storage Engine |
Fixed an issue when a node’s failure handler could be triggered by a long persistent caches recovery on startup. |
GG-31629 |
Cluster Discovery |
Renamed JVM_OPTS to MANAGEMENT_JVM_OPTS in management.bat and management.sh |
GG-31276 |
Cluster Storage Engine |
Fixed an issue with the Ignite Out Of Memory error that triggered failure handler. |
GG-31197 |
Cluster Affinity and Baseline Topology |
control.sh --deactivate now requires an additional option --force to deactive an in-memory cluster. |
GG-31800 |
Cluster Control Script |
|
Enterprise Edition Changes
GG-32142 |
Cluster Data Replication |
Fixed an issue causing excessive Java heap memory usage when Data Center Replication was enabled for TRANSACTIONAL caches. |
GG-32017 |
Cluster Data Replication |
Fixed an issue that could lead to node hanging after a restart when Native Persistence and Data Center Replication were used. |
GG-31968 |
Cluster Data Replication |
Fixed a bug when a connection to a remote data center could be unexpectedly closed under load. |
GG-31720 |
Cluster Data Replication |
Fixed an issue when data center replication could hang on node deactivation. |
GG-31983 |
Cluster Security |
Fixed a compatibility issue when the security subject could not be properly deserialized. |
Ultimate Edition Changes
GG-31907 |
Cluster Data Snapshots and Recovery |
Fixed point-in-time recovery when multiple nodes were running on a single physical machine. |
GG-31557 |
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 -->
</bean>
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.
ignite.sh
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
ignite.sh
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: https://gridgain.freshdesk.com/support/login or docs@gridgain.com
Please visit the documentation for more information.
© 2024 GridGain Systems, Inc. All Rights Reserved. Privacy Policy | Legal Notices. GridGain® is a registered trademark of GridGain Systems, Inc.
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation.