Apache Ignite 2.16.0
WARNINGS
- Operations on atomic caches within transactions are finally forbidden. The system property IGNITE_ALLOW_ATOMIC_OPS_IN_TX has been removed.
- Removed CacheAtomicityMode#TRANSACTIONAL_SNAPSHOT cache mode.
- Mixed mode cache groups are now forbidden, but IGNITE_ALLOW_MIXED_CACHE_GROUPS system option may temporarily allow them.
- The ignite-ml and cassandra modules have been migrated to the Ignite extensions.
Ignite
- Added ARM64 Docker images.
- Added CLIENT_CONNECTION_ATTRIBUTES system view.
- Added ability to configure metric exporter filter from Spring XML.
- Added cache dumps.
- Added extended debug logging of client connections.
- Added limit support to IndexQuery.
- Added logging of snapshot check procedure.
- Added metrics for operations on secondary indexes.
- Added performance statistics for IndexQuery.
- Added performance statistics info about query properties and processed rows count by query.
- Added size limit of the client session outbound message queue.
- Added topology snapshot info to services system view.
- Deprecated legacy authorization approach via Security Context.
- Deprecated rebalance related methods in the ClientCacheConfiguration.
- Fixed JavaNioAccess handling in JDK 14 and later.
- Fixed MappedFile.map for JDK 14 and newer.
- Fixed NPE during defragmentation OOM exception handling.
- Fixed NPE during transaction recovery.
- Fixed NPE on snapshot create operation for in-memory cluster.
- Fixed StoredCacheData removing when a node filter is set.
- Fixed WAL logging to an archived segment after node restart.
- Fixed an issue when IgniteLock cannot be acquired after release on JDK 17.
- Fixed an issue when TTL is not set for entries inserted with "insert from select" query.
- Fixed an issue when a transaction never finishes on timeout when deadlock detection is disabled.
- Fixed an issue where continuous queries caused excessive memory usage.
- Fixed assertion error in case of empty SQL query.
- Fixed assertion error on defragmentation.
- Fixed broken serialization of communication messages due to incorrect GridCacheQueryRequest class marshalling.
- Fixed continuous queries backup ack message sending for expired entries.
- Fixed deprecation of PartitionLossPolicy (READ_ONLY_ALL, READ_WRITE_ALL).
- Fixed doubled serialization of CQ event oldValue field for REMOVE/EXPIRY events.
- Fixed duplicate index error after CREATE INDEX IF NOT EXISTS on different tables.
- Fixed erroneous logging of failed index rebuild.
- Fixed exception message for transaction timeout before data lock acquired.
- Fixed failure on sqlOnHeapCache=enabled and more than one index used.
- Fixed histogram metric configuration restore on node restart.
- Fixed in-memory server node crashing by TcpIgniteClient.putAllConflict() if cache objects transformation applied.
- Fixed log message about sending and receiving partition file during snapshot restore.
- Fixed log message of snapshot create operation with the warning result.
- Fixed negative duration in the SQL query system view.
- Fixed node crash due to SecurityContext not found during discovery message processing.
- Fixed opencensus-exporter-trace-zipkin dependency scope.
- Fixed possibility to create two caches with the same schemas and index names.
- Fixed possible failures of cache operations when performed through a thin client with Partition Awareness enabled.
- Fixed server nodes crashing if the cache directory contains illegal chars.
- Fixed snapshot creation failing when check throws an exception.
- Fixed snapshot restore metrics is case of an error on prepare.
- Fixed snapshot restore rollback if start cache stage failed.
- Fixed startup on Java 21.
- Fixed the defragmentation can't be configured to use one thread issue.
- Fixed usage of sandbox to create CacheStore.
- Fixed usage of vulnerable init setting in H2 connection.
- Fixed writing post-handshake message in NIO server.
- Removed deprecated "ssl.key.algorithm" Ignite system property - "ssl.KeyManagerFactory.algorithm" is used instead.
- Removed the GridSslContextFactory from public API.
- Updated Snappy-java dependency version to 1.1.10.4.
- Updated Spring dependency version to 5.2.25.RELEASE.
- Updated guava dependency version to 32.1.2.
- Updated jetty dependency version to 9.4.53.v20231009.
- Updated postgresql dependency version to 42.6.0.
- Updated snappy dependency version to 1.1.10.4.
- Updated zookeeper dependency version to 3.8.3.
- Updated zstd dependency version to 1.5.5.
SQL Calcite
- Added ENFORCE_JOIN_ORDER hint.
- Added FORCE_INDEX/NO_INDEX hints.
- Added events on query execution (EVT_CACHE_QUERY_OBJECT_READ, EVT_SQL_QUERY_EXECUTION).
- Added explicit commons-codec dependency.
- Added local flag support.
- Added long-runing queries and big result-set queries warnings.
- Added metrics for CalciteQueryExecutor thread pool.
- Added partition pruning.
- Added queries timeout support.
- Added sensitive information hiding when IGNITE_TO_STRING_INCLUDE_SENSITIVE property is set to false.
- Added support of setting partitions in SqlFieldsQuery.
- Fixed CREATE TABLE ... WITH affinity_key option validation.
- Fixed NPE on write query plan to performance statistics.
- Fixed SQL metrics (added parsing metrics for the Calcite-based engine, fixed execution metrics).
- Fixed failure on planning when cache size exceeds Integer.MAX_VALUE.
- Fixed list of reserved keywords.
- Fixed memory leak in MailboxRegistryImpl#remotes.
- Fixed performance statistics collection.
- Fixed placeholder values from ModifyNode.
- Fixed primary key inline size calculation.
- Fixed query leak on remote fragment initialization phase failure.
- Fixed the query freezes when partitions are set issue.
- Updated calcite dependency version to 1.34.0.
Control utility
- Added JMX commands invoker.
- Added compact footer usage statistics to the idle_verify command.
- Added descriptions and values to the properties list command.
- Added node Consistent ID to the index validate command output.
- Added number of partitions processed by the index worker to the output of the index commands.
- Added support of SslContextFactory to CommandHandler (instead of GridSslBasicContextFactory).
- Added support of custom SSL factory.
- Added the cache create command.
- Added the multiple nodes argument to the 'indexes_force_rebuild' and 'schedule_indexes_rebuild' commands.
- Fixed connectable nodes list.
- Fixed control utility module location for slim and LGPL assemblies.
- Fixed idle_verify hash conflicts for expiring entries.
- Fixed result printing of performance statistics subcommands.
- Fixed the page size of cache scan command to meet the limit argument.
Java thin client
- Added Service Awareness feature.
- Fixed Java thin client socket#open timeout to ClientConfiguration#timeout property.
- Fixed cache objects transformation in Java thin client.
- Fixed potential SocketChannel leak on failed connection.
- Removed artificial port range upper limit of 49151.
Ignite .NET
- Fixed node crash due to OverflowException in Callbacks.ConsoleWrite.
Ignite .NET thin client
- Added partition awareness support for types with affinity key.