GridGain 8.7.36 Release Notes
New Features
GridGain 8.7.36 provides access to several new features and a variety of improvements.
Added New Debug Tools
New index-reader.sh and wal-reader.sh CLI were added to provide more information on inssues with SQL indexes and WAL issues.
Here is how you can check indexes in the persistent storage:
index-reader.sh --dir <cache directory>
index-reader.bat --dir <cache directory>
And here is how to use wal-reader:
.\wal-reader.sh --wal-dir <wal directory>
.\wal-reader.bat --wal-dir <wal directory>
You can also read WAL archive:
.\wal-reader.sh --wal-archive-dir <wal archive dir>
.\wal-reader.bat --wal-archive-dir <wal archive dir>
Added Continuous Query API in Java Thin Client.
Java thin clients can now use Continuous Queries.
You can use continuous queries in Java thin clients in the same way you use them normally:
IgniteCache<Integer, String> cache = ignite.getOrCreateCache("myCache");
ContinuousQuery<Integer, String> query = new ContinuousQuery<>();
query.setLocalListener(new CacheEntryUpdatedListener<Integer, String>() {
@Override
public void onUpdated(Iterable<CacheEntryEvent<? extends Integer, ? extends String>> events)
throws CacheEntryListenerException {
// react to the update events here
}
});
cache.query(query);;
Known Issues
Snapshot Utility Fails to Read Snapshots for GridGain 8.8.2 and Later
Due to a compatibility issue between GridGain 8.7.36 and 8.8.2 and later, snapshot utility of 8.7.36 version cannot read data from snapshots created for GridGain 8.8.2 and later versions. This leads to LIST
, INFO
, and CREATE
utility commands failing. This issue will be fixed in one of the upcoming releases.
Workaround: Use the snapshot management tool for GridGain 8.7.35 and earlier, or 8.8.2 or later.
Improvements and Fixed Issues
Community Edition Changes
Issue ID | Category | Description |
---|---|---|
GG-33227 |
Cluster Storage Engine |
Fixed copying WAL files in WAL working directory. |
GG-33144 |
Platforms & Thin Clients |
.NET: Added a warning to the log when alternate stack check is not enabled. |
GG-33135 |
Cluster Storage Engine |
The control.sh --cache partition_reconciliation command can now be run on system caches. |
GG-33131 |
Cluster Storage Engine |
Fixed a server failure when another node left the cluster before completing peer class loading for a query. |
GG-33111 |
Cluster Storage Engine |
Fixed an issue when WAL was incorrectly considered disabled after a cache was recreated. |
GG-33110 |
Binary Objects |
Fixed an issue that caused an error when complex objects with nested collections were updated. |
GG-33109 |
Cluster Discovery |
Shortened topology update log message when a node leaves or joins the cluster. |
GG-33105 |
Platforms & Thin Clients |
.NET: Added string.Compare support to LINQ provider. |
GG-33104 |
Cluster Deployment |
Improved log messages of peer class loading problems. |
GG-33101 |
Platforms & Thin Clients |
Fixed possible deadlocks and performance issues due to async continuations executing on the striped pool. Added IgniteConfiguration#asyncContinuationExecutor that defaults to ForkJoinPool#commonPool. |
GG-33067 |
Platforms & Thin Clients |
Java thin client: Added support for continuous queries. |
GG-33056 |
Cluster SQL Engine |
Fixed SQL query hangs when the table is dropped concurrently. |
GG-32997 |
Cluster Deployment |
Fixed a node failure when a class was not found by UriDeploymentSpi. |
GG-32985 |
Cluster Communication |
Added extended information to the error message about client connection loss. |
GG-32938 |
Binary Objects |
Added IgniteBinary.registerClass method to register binary metadata for a specified Java class. |
GG-32912 |
Cluster Storage Engine |
Fixed WAL state inconsistency when WAL was enabled or disabled while concurrently stopping or starting nodes. |
GG-32815 |
Cluster Storage Engine |
Fixed a rare error caused by a combination of sequential rebalances and checkpoint process. |
GG-32288 |
Cluster Metrics & Monitoring |
Added extended step-by-step metrics for checkpoints. |
Ultimate Edition Changes
Issue ID | Category | Description |
---|---|---|
GG-33091 |
Cluster Snapshot Utility |
Added more information to the output of the snapshot-utility.sh DELETE command when it fails. |
GG-32989 |
Cluster Data Snapshots and Recovery |
Snapshot utility now prints information about the cluster nodes' versions when running LIST or INFO commands. |
GG-32963 |
Cluster Snapshot Utility |
Fixed a rare error that occurred at the end of the work of snapshot utility. |
GG-32712 |
Cluster Data Snapshots and Recovery |
Fixed race condition in SFTP snapshots. |
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
,
8.7.33
, 8.7.34
, 8.7.35
8.8.1
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 will 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
You will need to 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
To continue using remote JMX, you need to manually specify the required JMX settings. Please see the example below. Note that you don’t need remote JMX if you use a local connection, such as connecting JConsole to a GridGain process on the same host.
export JVM_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=33333 \
-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"
bin/ignite.sh
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.