Apache Ignite Release Notes
Apache Ignite distributed in-memory database 2.13.0
(!) warn:
- The previously deprecated service network functionality has been removed.
Ignite:
- Added 'snapshotTransferRate' distributed property to limit the rate at which snapshot files are created;
- Added CDC hard link check at startup;
- Added batch support for JDBC and ODBC in Calcite query engine;
- Added JMX management interface and indicator output during snapshot recovery operation;
- Added maintenance task for rebuilding damaged indexes;
- Added SNAPSHOT system view to display local snapshots;
- Added ServiceCallContext, which can implicitly pass additional parameters when the service is called;
- Added an option to use control.sh to execute a synchronized snapshot command;
- The plugin adds the ability to perform topology verification in an extended manner;
- Added dynamic recovery of encrypted snapshots;
- Added the ignite-parent component to the Ignite release cycle;
- Added experimental Calcite-based SQL engine;
- Added support for non-default page sizes in CDC;
- The configuration of transaction monitoring supports saving to disk;
- ignite-cdc.sh and ignite.sh support different JVM option parameters;
- Added support for different configurations in the system data area;
- Serialize the partition map to disk to avoid the problem of long node startup time;
- Added service method call duration histogram indicator;
- Added support for JDK17;
- Added support for the IGNITE_TO_STRING_INCLUDE_SENSITIVE option in the consistency check command of the control script;
- Added the status option to the consistency check command of the control script;
- Added task execution time indicator for thread pool;
- Added support for the LifecycleAware interface in the local event listener;
- If PriorityQueueCollisionSpi is configured, new support for modifying the priority of computing tasks is added;
- Deprecated IgniteServices#service(String) and IgniteServices#services(String);
- Deprecated the IGNITE_WAIT_FOR_BACKUPS_ON_SHUTDOWN system property;
- Deprecate the ignite-log4j module;
- Fixed an issue with CDC state restoration when a record contains multiple DataEntry;
- Fixed creating GeoSpatial indexes on client nodes;
- Fixed IndexQuery not handling _val field indexes correctly;
- Fixed the null pointer problem caused when the column type in JmxSystemViewExporterSpi is null;
- Fixed null pointer issue in PersistenceTask;
- Fixed a null pointer issue when concurrently executing cache destruction and activation transactions;
- Fixed a null pointer problem during distributed processing of message unmarshalling;
- Fixed the NoClassDefFound error when executing invokeAsync with BinaryObjects;
- Fixed NoClassDefFoundError when com.sun.management.OperatingSystemMXBean does not exist;
- Fixed ODBC connection timeout issue;
- Fixed an issue in the client that caused PME to fail when performing an implicit transaction commit;
- Fixed the problem of TLS 1.3 freezing during handshake;
- Fixed a rare issue where TTL was updated in near cache/replica if the request was made from another replica;
- Fixed the issue of reporting deserialization errors when some JMX commands failed;
- Fixed an issue that would cause the cluster to freeze to fail;
- Fixed an issue that caused speed-based write limits to fail to protect checkpoint buffers from being exhausted;
- Fixed an issue that caused IgniteLock to be handled incorrectly after client reconnection;
- Fixed an issue causing "Failed to get page store for the given cache ID" error at cache startup;
- Fixed an issue that caused new nodes to fail to join the cluster inside the Karaf container;
- Fixed the problem of server node failure due to short association assignment history;
- Fixed an issue when queries and subqueries with "IN" conditions returned multiplicative data;
- Fixed an issue that caused AssertionError in using IgniteAtomicSequence;
- Fixed the issue of generating binary objects if the original object contained multiple collection or reference fields;
- Fixed a consistency issue when persisting atomic caches;
- Fixed the problem of expired processing failure when reactivating;
- Fixed the query failure problem when the table was deleted concurrently;
- Fixed an issue where index defragmentation failed for DECIMAL and VARCHAR column types;
- Fixed the problem that SqlFieldsQuery cannot scan data using index when local flags are configured and POJO parameters are used;
- Fixed the issue of ClosedChannelException exception during logging;
- Fixed an issue where metrics were handled incorrectly in IgniteStripedThreadPoolExecutor;
- Fixed a missing read-repair median check;
- Fixed the problem that WAL Reader parses groupId/cacheId incorrectly;
- Fixed the node failure problem caused by ClosedChannelException exception;
- Fixed the node failure problem caused by ClassNotFoundException: wrong validation for Object type;
- Fixed an issue where pages could not be marked as dirty when page recovery was performed on a wrong CRC;
- Fixed peer class loading error handling;
- Fixed possible resource exhaustion issues in speed-based throttling;
- Fixed potential OOM issues during thin client protocol processing caused by malicious or junk data;
- Fixed potential data corruption issues in quick delete and update operations;
- Fixed an issue where the query engine would allow insertion of logically equal union primary key data rows;
- Fixed the data balance problem caused by horizontal rebalancing and reassignment when client nodes join the cluster;
- Fixed the SpringContext instantiation problem caused by CdcLoader;
- Fixed the problem of table operation failure caused by wrap_key and value_type;
- Fixed an issue where the number of replicas was incorrectly calculated when executing a query with partition pruning and query parallelization enabled;
- Implemented memory cache CDC;
- Implemented NUMA-aware allocation of Ignite solidified memory;
- Implemented read repair strategy;
- Implemented annotation-based ServiceContext injection in services;
- Implemented array type support within binary objects;
- Implemented the generation and creation of table sql key types according to the original column type;
- Implemented named parameter support for control script read-repair commands;
- Implemented CDC monitoring and log output;
- Improved index row filtering for IndexQuery;
- Improved log-related processing of persistent data structure messages in the memory data area;
- Improved handling of restoring data partition state from WAL log at node startup;
- Improved snapshot partition movement;
- Removed shared memory communication client;
- Removed old service mesh implementation;
- Update JNR POSIX dependency to 3.1.15;
- Update Mesos dependency to 1.11.0;
- Update hadoop-yarn-client dependency to 3.3.1;
- Update sfl4j dependency to 1.7.33;
- Update Spring dependency to 5.2.21.RELEASE;
- Update zookeeper dependency to 3.8.0.
Java thin client:
- Added option to append server-side exception stack to error messages;
- Added periodic heartbeat messages to improve connection reliability.
JDBC/ODBC:
- Fixed incorrect query handling when empty result set;
- Fixed link failure when calling SQLConnect;
- Fixed issues with performing set streaming on/off;
- Fixed the issue that SSL key storage was not a mandatory parameter;
- Fixed the problem that SQLGetStmtAttr(SQL_ATTR_ROW_ARRAY_SIZE) was handled incorrectly;
.Net:
- Thin client service added GetServiceDescriptors;
- 新增了ThinClientConfiguration.SendServerExceptionStackTraceToClient;
- Added service-related indicators;
- Fixed the problem of throwing EntryPointNotFoundException in Alpine Linux environment;
- Fixed the issue that the binary schema was missing when a field was removed from the type;
- Fixed the issue that the platform cache did not restore data from persistent storage after node restart;
- Fixed serialization issue with 'System.Enum' field.
.Net Thin Client:
- Added the IClientRetryPolicy interface to control the retry behavior when the operation fails due to connection problems;
- Added periodic heartbeat messages to improve connection reliability.
C++:
- Added EventType field to CacheEntryEvent;
- Fixed OpenSSL shared library order, added OpenSSL 3.0.x support;
- Added the IClientRetryPolicy interface to control the retry behavior when the operation fails due to connection problems;
- Added ClientServices#serviceDescriptors;
- Improved memory usage to avoid extra buffer copies.
C++ thin client:
- Fixed the issue that SSL key storage was not a mandatory parameter;
- Implemented asynchronous network event processing;
- Continuous query is implemented.
SQL:
- The ability to specify inline values of primary key and associated key indexes has been added to the CREATE TABLE statement;
- Fixed subquery constant optimization issues.