From 86c1b85a8a636ed83754eb200b25b6858024a68e Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 00:31:06 +0300 Subject: [PATCH 01/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 168 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index b2a452ae7c582..902278d795f96 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -1,6 +1,174 @@ Apache Ignite Release Notes =========================== +Apache Ignite In-Memory Distributed Database 2.17.0 +----------------------------------------------------------- + +(!) WARNINGS: +* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via REST protocol (ConnectorConfiguration) was deprecated. +* Removed deprecated authorization methods from Security Context. +* Removed deprecated TcpCommunicationSpi shared memory port configuration. + +Ignite: +* Added 'keepRaw' parameter to DumpReaderConfiguration. +* Added IndexQuery events. +* Added TLSv1_3 to o.a.i.client.SslProtocol. +* Added ability to create user defined SQL views. +* Added address information to ClientConnectionException. +* Added check for SSL errors on TcpDiscovery writing failures. +* Added configuration for distributed properties default values. +* Added expiry policy info to the caches system view. +* Added libs to the OpenCensus module to make Prometheus metrics work from the box without building any extra libs. +* Added logging for CDC mode switching. +* Added operation time metrics for putAllConflict, removeAllConflict operations. +* Added proper logging of default pageSize. +* Added query thread pool metrics to log file. +* Added snapshot creation time into the snapshot view. +* Added starting square bracket in default log4j2 pattern. +* Added support of OR operator with dynamic parameters for index scans. +* Fixed CDC error with Ignite to Ignite streamer in case BinaryConfiguration is specified in configuration. +* Fixed ClusterPartitionsCountByState metric failure if topology is not initialized. +* Fixed IgniteCache.removeAsync(key,val) failure inside an optimistic transaction. +* Fixed NPE on metric 'TransactionsHoldingLockNumber' if transaction is not initialized. +* Fixed OOM crash on unstable topology. +* Fixed an assertion error on IgniteCache#get. +* Fixed assertion during RotatedIdPartRecord read from WAL. +* Fixed backward connection check with loopback address. +* Fixed cache dump check on a cache with a node filter. +* Fixed cluster failure on topology change when DNS service is unavailable. +* Fixed deserializing cache entries for IndexQuery on server. +* Fixed duplicated keys written to dump. +* Fixed entries cleaning on node shutdown/deactivation for in-memory mode. +* Fixed entry and checkpoint locks orders in DataStreamer and update TTL. +* Fixed excessive and useless warnings of IpFinderCleaner. +* Fixed expire time setting for thin client replication. +* Fixed fields count serialization in TcpCommunication messages. +* Fixed incremental snapshot restore fail if consistent ID is not a string. +* Fixed integer overflow in page eviction trackers. +* Fixed iterator for local IndexQuery. +* Fixed lambda serialization issues in code deployment for Java 21. +* Fixed local class deployments cache cleanup on reconnect. +* Fixed logging of reduced cache entries for distributed long running operations. +* Fixed long JVM pause detector. +* Fixed node crashing if a snapshot restore was canceled due to network issues. +* Fixed node fails while checking security permission for activation during join. +* Fixed node failure on timeout objects intersection. +* Fixed node failure when a runtime exception occurs on snapshot start stage. +* Fixed node join failure when index creation is in progress and caches have the same deploymentId. +* Fixed notification message when Ignite Statistics usage state changes. +* Fixed pending tree redundant cleanup on entries expiration. +* Fixed redundant lambda object allocation in ClockPageReplacementFlags. +* Fixed removal of required affinity assignment instance from affinity cache. +* Fixed sending a stack trace to a thin client if task fails in map phase. +* Fixed server node fail when node service filter class is unknown. +* Fixed service descriptor when deployment failed. +* Fixed warnings about closed socket. +* Fixed wrong old index size in the defragmentation procedure. +* Forbid a non-transactional IgniteCache#clear() inside a transaction. +* Implemented custom metrics. +* Implemented transaction aware SQL and Scan queries. +* Improved check of previous node on new incoming server connection. +* Moved Ignite sources to Java 11. +* Optimized UUID serialization for communication messages. +* Optimized entries expiration for persistent caches. +* Refactored errors output of the control utility. +* Updated Jetty dependency version to 9.4.55. +* Updated Netty dependency version to 4.1.101.Final. +* Updated PostgreSQL JDBC dependency version to 42.7.3. +* Updated Spring dependency version to 5.3.39. +* Updated commons-io dependency version to 2.17.0. +* Updated grpc-context version to 1.62.2. +* Updated janino dependency version to 3.1.12. +* Updated jetty dependency version to 9.4.56.v20240826. +* Updated json-path dependency version to 2.9.0. +* Updated jtidy dependency version to 1.0.5. +* Updated log4j2 dependency version to 2.22.0. +* Updated opencensus dependency version to 0.31.1. +* Updated snappy dependency version to 1.1.10.7. +* Updated zookeeper dependency version to 3.8.4. + +SQL: +* Added logging of the IdleVerify command. +* Added long queries tracking for DML operations. +* Fixed AssertionError due to cache size overflow. +* Fixed absence of warnings for long running queries with lazy flag. +* Fixed assertion error on extra column in H2 ResultInterface#currentRow. +* Fixed nested subquery optimization. +* Fixed table statistics periodical update. + +SQL Calcite: +* Added ability to extend SQL engine with new system functions/operators. +* Added arithmetic overflow handling. +* Added date formatting/parsing functions with custom format. +* Added hint for join type. +* Added memory quotas control for Cursor.getAll() method. +* Added operations authorization. +* Added support for SQL hints at tables. +* Added support for bitwise aggregates (BIT_AND, BIT_OR, BIT_XOR). +* Added support for bitwise operations (BITAND, BITOR, BITXOR). +* Allowed grouping by alias and ordinal value. +* Fixed 'typeof' function behavior when operand throws an error (it fails now). +* Fixed NVL/DECODE failure when used with parameters of different data types. +* Fixed assertion error for multiline statements in thin client. +* Fixed binary object dynamic parameter processing. +* Fixed column nullability check for data types with precision or scale. +* Fixed compiled expression cache key for correlated variable (to avoid cache collisions for correlated variables with different data types). +* Fixed complex key index scans (binary objects comparison). +* Fixed correlated nested loop LEFT join failure. +* Fixed default TIMESTAMP precision. +* Fixed error message for unsupported 'FORMAT' in 'CAST'. +* Fixed expand star for system fields. +* Fixed failure in COUNT(DISTINCT) operation. +* Fixed failure on 'CREATE TABLE' DDL with Calcite engine when 'DEFAULT' column value is NULL. +* Fixed failure on sensitive information hiding for DDL statements. +* Fixed implicit conversion to DECIMAL for some functions. +* Fixed incorrect error for TIME* WITH TIME ZONE types. +* Fixed incorrect numeric results with operator 'IS [NOT] DISTINCT FROM'. +* Fixed incorrect result in unions in case of different types of numeric results. +* Fixed least restrictive type priority (for DOUBLE and FLOAT). +* Fixed lost limit/offset on planning. +* Fixed lost precisions of dynamic query parameters. +* Fixed not-null count calculation if index rebuild is in progress. +* Fixed numeric to interval cast. +* Fixed parsing of incorrect date literals. +* Fixed partition reservation for index-count-scan. +* Fixed rehashing of inputs containing null values. +* Fixed rounding of numerics (now rounds all types of floating point numerics to nearest integer). +* Fixed sensitive information removal failure for JOINs and other SQL nodes. +* Updated Calcite version to 1.37. + +Control utility: +* Added a flag to ignore existed caches to the cache create command. +* Added ability to view cache data in JSON format. +* Added histogram bounds to the metric command output. +* Added support for the thin client connection to the control utility and deprecate legacy REST connection. +* Fixed CDC resend of replicated entries. +* Fixed Idle Verify hanging when invoked on an inactive cluster. +* Fixed Idle verify check failing when debug logging level is set. +* Fixed NPE in the cache distribution command. +* Fixed partition column output of the cache distribution command. +* Fixed permissions required by the consistency repair command. +* Removed ADMIN_OPS permissions check for cache operations. + +Java thin client: +* Added ClientClusterGroup support for Service Awareness. +* Added events for client start and stop. +* Added invoke/invokeAll operations. +* Fixed partition awareness after cluster restart with the same topology version. +* Fixed client init hanging when cluster discovery is enabled but returned addresses are unreachable (in another subnet). +* Fixed client-connector threads blocking by transactional operations. +* Fixed orphaned handles after binary object detach operation. +* Fixed partition awareness with node filter. +* Fixed stale client cluster group data after cluster restart. + +Ignite .NET: +* Added compute task sessions support. +* Fixed platform cache update for negative cache ID. +* Improved thin client service invocation performance by sending requests directly to the nodes where the service is deployed. + +JDBC/ODBC: +* Added support for stream APIs for BLOB. + Apache Ignite In-Memory Distributed Database 2.16.0 ----------------------------------------------------------- From aa0aed5d9cc84e87328d6a642acfd3c4c5dae1ec Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 10:09:43 +0300 Subject: [PATCH 02/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 902278d795f96..f767697dfead3 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -5,7 +5,7 @@ Apache Ignite In-Memory Distributed Database 2.17.0 ----------------------------------------------------------- (!) WARNINGS: -* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via REST protocol (ConnectorConfiguration) was deprecated. +* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via REST protocol (ConnectorConfiguration) was deprecated for removal in future releases. * Removed deprecated authorization methods from Security Context. * Removed deprecated TcpCommunicationSpi shared memory port configuration. From 2a89a3d2be16605bf9c127d1dcf8365e7a0b5373 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 10:13:19 +0300 Subject: [PATCH 03/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index f767697dfead3..c84fde4155035 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -71,7 +71,6 @@ Ignite: * Moved Ignite sources to Java 11. * Optimized UUID serialization for communication messages. * Optimized entries expiration for persistent caches. -* Refactored errors output of the control utility. * Updated Jetty dependency version to 9.4.55. * Updated Netty dependency version to 4.1.101.Final. * Updated PostgreSQL JDBC dependency version to 42.7.3. @@ -146,6 +145,7 @@ Control utility: * Fixed Idle Verify hanging when invoked on an inactive cluster. * Fixed Idle verify check failing when debug logging level is set. * Fixed NPE in the cache distribution command. +* Fixed errors output. * Fixed partition column output of the cache distribution command. * Fixed permissions required by the consistency repair command. * Removed ADMIN_OPS permissions check for cache operations. From 8f1a1e0dc82cf653a7e7863af7f64ccec1299220 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 11:02:45 +0300 Subject: [PATCH 04/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index c84fde4155035..811c57ffe354f 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -55,7 +55,7 @@ Ignite: * Fixed node failure on timeout objects intersection. * Fixed node failure when a runtime exception occurs on snapshot start stage. * Fixed node join failure when index creation is in progress and caches have the same deploymentId. -* Fixed notification message when Ignite Statistics usage state changes. +* Fixed log message when Ignite Statistics usage state changes. * Fixed pending tree redundant cleanup on entries expiration. * Fixed redundant lambda object allocation in ClockPageReplacementFlags. * Fixed removal of required affinity assignment instance from affinity cache. From 1efb85fabb4029bd1bad5f141ba894fe38e28830 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 11:10:15 +0300 Subject: [PATCH 05/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 811c57ffe354f..9edebdf80d4a8 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -5,7 +5,8 @@ Apache Ignite In-Memory Distributed Database 2.17.0 ----------------------------------------------------------- (!) WARNINGS: -* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via REST protocol (ConnectorConfiguration) was deprecated for removal in future releases. +* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via Binary-REST protocol (ConnectorConfiguration) was deprecated for removal in future releases. +* Ignite sources moved to Java 11. * Removed deprecated authorization methods from Security Context. * Removed deprecated TcpCommunicationSpi shared memory port configuration. @@ -13,7 +14,6 @@ Ignite: * Added 'keepRaw' parameter to DumpReaderConfiguration. * Added IndexQuery events. * Added TLSv1_3 to o.a.i.client.SslProtocol. -* Added ability to create user defined SQL views. * Added address information to ClientConnectionException. * Added check for SSL errors on TcpDiscovery writing failures. * Added configuration for distributed properties default values. @@ -24,8 +24,6 @@ Ignite: * Added proper logging of default pageSize. * Added query thread pool metrics to log file. * Added snapshot creation time into the snapshot view. -* Added starting square bracket in default log4j2 pattern. -* Added support of OR operator with dynamic parameters for index scans. * Fixed CDC error with Ignite to Ignite streamer in case BinaryConfiguration is specified in configuration. * Fixed ClusterPartitionsCountByState metric failure if topology is not initialized. * Fixed IgniteCache.removeAsync(key,val) failure inside an optimistic transaction. @@ -48,27 +46,27 @@ Ignite: * Fixed iterator for local IndexQuery. * Fixed lambda serialization issues in code deployment for Java 21. * Fixed local class deployments cache cleanup on reconnect. +* Fixed log message when Ignite Statistics usage state changes. * Fixed logging of reduced cache entries for distributed long running operations. * Fixed long JVM pause detector. * Fixed node crashing if a snapshot restore was canceled due to network issues. -* Fixed node fails while checking security permission for activation during join. +* Fixed node failure while checking security permission for activation during join. * Fixed node failure on timeout objects intersection. * Fixed node failure when a runtime exception occurs on snapshot start stage. * Fixed node join failure when index creation is in progress and caches have the same deploymentId. -* Fixed log message when Ignite Statistics usage state changes. * Fixed pending tree redundant cleanup on entries expiration. * Fixed redundant lambda object allocation in ClockPageReplacementFlags. * Fixed removal of required affinity assignment instance from affinity cache. * Fixed sending a stack trace to a thin client if task fails in map phase. * Fixed server node fail when node service filter class is unknown. * Fixed service descriptor when deployment failed. +* Fixed starting square bracket in default log4j2 pattern. * Fixed warnings about closed socket. * Fixed wrong old index size in the defragmentation procedure. * Forbid a non-transactional IgniteCache#clear() inside a transaction. -* Implemented custom metrics. +* Implemented custom user defined metrics. * Implemented transaction aware SQL and Scan queries. * Improved check of previous node on new incoming server connection. -* Moved Ignite sources to Java 11. * Optimized UUID serialization for communication messages. * Optimized entries expiration for persistent caches. * Updated Jetty dependency version to 9.4.55. @@ -87,7 +85,7 @@ Ignite: * Updated zookeeper dependency version to 3.8.4. SQL: -* Added logging of the IdleVerify command. +* Added ability to create user defined SQL views. * Added long queries tracking for DML operations. * Fixed AssertionError due to cache size overflow. * Fixed absence of warnings for long running queries with lazy flag. @@ -105,6 +103,7 @@ SQL Calcite: * Added support for SQL hints at tables. * Added support for bitwise aggregates (BIT_AND, BIT_OR, BIT_XOR). * Added support for bitwise operations (BITAND, BITOR, BITXOR). +* Added support of OR operator with dynamic parameters for index scans. * Allowed grouping by alias and ordinal value. * Fixed 'typeof' function behavior when operand throws an error (it fails now). * Fixed NVL/DECODE failure when used with parameters of different data types. @@ -140,7 +139,8 @@ Control utility: * Added a flag to ignore existed caches to the cache create command. * Added ability to view cache data in JSON format. * Added histogram bounds to the metric command output. -* Added support for the thin client connection to the control utility and deprecate legacy REST connection. +* Added logging of the IdleVerify command. +* Added support for the thin client connection to the control utility and deprecate legacy Binary-REST connection. * Fixed CDC resend of replicated entries. * Fixed Idle Verify hanging when invoked on an inactive cluster. * Fixed Idle verify check failing when debug logging level is set. From 6e86088ac44510e1e548f8796871f438f19a15ae Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 11:13:39 +0300 Subject: [PATCH 06/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 9edebdf80d4a8..e1ddb4f7fb1a6 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -22,7 +22,7 @@ Ignite: * Added logging for CDC mode switching. * Added operation time metrics for putAllConflict, removeAllConflict operations. * Added proper logging of default pageSize. -* Added query thread pool metrics to log file. +* Added query thread pool metrics to the log file. * Added snapshot creation time into the snapshot view. * Fixed CDC error with Ignite to Ignite streamer in case BinaryConfiguration is specified in configuration. * Fixed ClusterPartitionsCountByState metric failure if topology is not initialized. From a710b392f43a9e1feb9a1d76b413647a80f13206 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 11:14:51 +0300 Subject: [PATCH 07/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index e1ddb4f7fb1a6..3d2aa8b1d3f3a 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -50,9 +50,9 @@ Ignite: * Fixed logging of reduced cache entries for distributed long running operations. * Fixed long JVM pause detector. * Fixed node crashing if a snapshot restore was canceled due to network issues. -* Fixed node failure while checking security permission for activation during join. * Fixed node failure on timeout objects intersection. * Fixed node failure when a runtime exception occurs on snapshot start stage. +* Fixed node failure while checking security permission for activation during join. * Fixed node join failure when index creation is in progress and caches have the same deploymentId. * Fixed pending tree redundant cleanup on entries expiration. * Fixed redundant lambda object allocation in ClockPageReplacementFlags. @@ -67,8 +67,11 @@ Ignite: * Implemented custom user defined metrics. * Implemented transaction aware SQL and Scan queries. * Improved check of previous node on new incoming server connection. +* Moved Ignite sources to Java 11. * Optimized UUID serialization for communication messages. * Optimized entries expiration for persistent caches. +* Removed deprecated TcpCommunicationSpi shared memory port configuration. +* Removed deprecated authorization methods from Security Context. * Updated Jetty dependency version to 9.4.55. * Updated Netty dependency version to 4.1.101.Final. * Updated PostgreSQL JDBC dependency version to 42.7.3. From 2945d1b267425c5c7d0f91770a5ef711e72b8f38 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 15:10:12 +0300 Subject: [PATCH 08/11] Apply suggestions from code review Co-authored-by: SofiaSedova <168177534+SofiaSedova@users.noreply.github.com> --- RELEASE_NOTES.txt | 112 +++++++++++++++++++++++----------------------- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 3d2aa8b1d3f3a..f2d63f9f807c2 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -5,68 +5,68 @@ Apache Ignite In-Memory Distributed Database 2.17.0 ----------------------------------------------------------- (!) WARNINGS: -* Control utility now uses thin client protocol by default (configured on a node via ClientConnectorConfiguration). Connection via Binary-REST protocol (ConnectorConfiguration) was deprecated for removal in future releases. -* Ignite sources moved to Java 11. +* Control utility now uses thin client protocol by default (configured on a node via `ClientConnectorConfiguration`). Connection via Binary-REST protocol (`ConnectorConfiguration`) was deprecated for removal in future releases. +* Ignite sources were moved to Java 11. * Removed deprecated authorization methods from Security Context. * Removed deprecated TcpCommunicationSpi shared memory port configuration. Ignite: -* Added 'keepRaw' parameter to DumpReaderConfiguration. -* Added IndexQuery events. -* Added TLSv1_3 to o.a.i.client.SslProtocol. -* Added address information to ClientConnectionException. +* Added 'keepRaw' parameter to `DumpReaderConfiguration`. +* Added `IndexQuery` events. +* Added TLSv1_3 to `o.a.i.client.SslProtocol`. +* Added address information to `ClientConnectionException`. * Added check for SSL errors on TcpDiscovery writing failures. * Added configuration for distributed properties default values. -* Added expiry policy info to the caches system view. +* Added expiry policy information to the caches system view. * Added libs to the OpenCensus module to make Prometheus metrics work from the box without building any extra libs. * Added logging for CDC mode switching. -* Added operation time metrics for putAllConflict, removeAllConflict operations. +* Added operation time metrics for `putAllConflict` and `removeAllConflict` operations. * Added proper logging of default pageSize. * Added query thread pool metrics to the log file. * Added snapshot creation time into the snapshot view. -* Fixed CDC error with Ignite to Ignite streamer in case BinaryConfiguration is specified in configuration. -* Fixed ClusterPartitionsCountByState metric failure if topology is not initialized. -* Fixed IgniteCache.removeAsync(key,val) failure inside an optimistic transaction. -* Fixed NPE on metric 'TransactionsHoldingLockNumber' if transaction is not initialized. +* Fixed CDC error with Ignite to Ignite streamer in case `BinaryConfiguration` is specified in the configuration. +* Fixed `ClusterPartitionsCountByState` metric failure if topology is not initialized. +* Fixed `IgniteCache.removeAsync(key,val)` failure inside an optimistic transaction. +* Fixed NPE on the 'TransactionsHoldingLockNumber' metric if transaction is not initialized. * Fixed OOM crash on unstable topology. -* Fixed an assertion error on IgniteCache#get. -* Fixed assertion during RotatedIdPartRecord read from WAL. +* Fixed an assertion error on `IgniteCache#get`. +* Fixed assertion during `RotatedIdPartRecord` read from WAL. * Fixed backward connection check with loopback address. * Fixed cache dump check on a cache with a node filter. * Fixed cluster failure on topology change when DNS service is unavailable. -* Fixed deserializing cache entries for IndexQuery on server. +* Fixed deserializing cache entries for `IndexQuery` on server. * Fixed duplicated keys written to dump. * Fixed entries cleaning on node shutdown/deactivation for in-memory mode. -* Fixed entry and checkpoint locks orders in DataStreamer and update TTL. -* Fixed excessive and useless warnings of IpFinderCleaner. +* Fixed entry and checkpoint locks orders in `DataStreamer` and update TTL. +* Fixed excessive and useless warnings of `IpFinderCleaner`. * Fixed expire time setting for thin client replication. -* Fixed fields count serialization in TcpCommunication messages. +* Fixed fields count serialization in `TcpCommunication` messages. * Fixed incremental snapshot restore fail if consistent ID is not a string. * Fixed integer overflow in page eviction trackers. -* Fixed iterator for local IndexQuery. +* Fixed iterator for local `IndexQuery`. * Fixed lambda serialization issues in code deployment for Java 21. * Fixed local class deployments cache cleanup on reconnect. * Fixed log message when Ignite Statistics usage state changes. * Fixed logging of reduced cache entries for distributed long running operations. * Fixed long JVM pause detector. * Fixed node crashing if a snapshot restore was canceled due to network issues. -* Fixed node failure on timeout objects intersection. -* Fixed node failure when a runtime exception occurs on snapshot start stage. -* Fixed node failure while checking security permission for activation during join. -* Fixed node join failure when index creation is in progress and caches have the same deploymentId. -* Fixed pending tree redundant cleanup on entries expiration. -* Fixed redundant lambda object allocation in ClockPageReplacementFlags. +* Fixed node failure on timeout object intersection. +* Fixed node failure when a runtime exception occurs on a snapshot start stage. +* Fixed node failure while checking security permission for activation during a join. +* Fixed node join failure when index creation is in progress and caches have the same `deploymentId`. +* Fixed pending tree redundant cleanup on entries expire. +* Fixed redundant lambda object allocation in `ClockPageReplacementFlags`. * Fixed removal of required affinity assignment instance from affinity cache. -* Fixed sending a stack trace to a thin client if task fails in map phase. +* Fixed sending a stack trace to a thin client if a task fails in the map phase. * Fixed server node fail when node service filter class is unknown. * Fixed service descriptor when deployment failed. * Fixed starting square bracket in default log4j2 pattern. -* Fixed warnings about closed socket. +* Fixed warnings about a closed socket. * Fixed wrong old index size in the defragmentation procedure. -* Forbid a non-transactional IgniteCache#clear() inside a transaction. +* Forbade a non-transactional `IgniteCache#clear()` inside a transaction. * Implemented custom user defined metrics. * Implemented transaction aware SQL and Scan queries. -* Improved check of previous node on new incoming server connection. +* Improved check of previous node on a new incoming server connection. * Moved Ignite sources to Java 11. * Optimized UUID serialization for communication messages. * Optimized entries expiration for persistent caches. @@ -78,21 +78,21 @@ Ignite: * Updated Spring dependency version to 5.3.39. * Updated commons-io dependency version to 2.17.0. * Updated grpc-context version to 1.62.2. -* Updated janino dependency version to 3.1.12. -* Updated jetty dependency version to 9.4.56.v20240826. +* Updated Janino dependency version to 3.1.12. +* Updated Jetty dependency version to 9.4.56.v20240826. * Updated json-path dependency version to 2.9.0. -* Updated jtidy dependency version to 1.0.5. -* Updated log4j2 dependency version to 2.22.0. -* Updated opencensus dependency version to 0.31.1. -* Updated snappy dependency version to 1.1.10.7. -* Updated zookeeper dependency version to 3.8.4. +* Updated JTidy dependency version to 1.0.5. +* Updated Log4j2 dependency version to 2.22.0. +* Updated OpenCensus dependency version to 0.31.1. +* Updated Snappy dependency version to 1.1.10.7. +* Updated ZooKeeper dependency version to 3.8.4. SQL: * Added ability to create user defined SQL views. * Added long queries tracking for DML operations. -* Fixed AssertionError due to cache size overflow. -* Fixed absence of warnings for long running queries with lazy flag. -* Fixed assertion error on extra column in H2 ResultInterface#currentRow. +* Fixed `AssertionError` due to cache size overflow. +* Fixed absence of warnings for long running queries with a lazy flag. +* Fixed assertion error on extra column in H2 `ResultInterface#currentRow`. * Fixed nested subquery optimization. * Fixed table statistics periodical update. @@ -100,16 +100,16 @@ SQL Calcite: * Added ability to extend SQL engine with new system functions/operators. * Added arithmetic overflow handling. * Added date formatting/parsing functions with custom format. -* Added hint for join type. -* Added memory quotas control for Cursor.getAll() method. +* Added a hint for join type. +* Added memory quota control for `Cursor.getAll()` method. * Added operations authorization. * Added support for SQL hints at tables. -* Added support for bitwise aggregates (BIT_AND, BIT_OR, BIT_XOR). -* Added support for bitwise operations (BITAND, BITOR, BITXOR). +* Added support for bitwise aggregates (`BIT_AND`, `BIT_OR`, `BIT_XOR`). +* Added support for bitwise operations (`BITAND`, `BITOR`, `BITXOR`). * Added support of OR operator with dynamic parameters for index scans. * Allowed grouping by alias and ordinal value. * Fixed 'typeof' function behavior when operand throws an error (it fails now). -* Fixed NVL/DECODE failure when used with parameters of different data types. +* Fixed NVL/DECODE failure when it is used with parameters of different data types. * Fixed assertion error for multiline statements in thin client. * Fixed binary object dynamic parameter processing. * Fixed column nullability check for data types with precision or scale. @@ -120,21 +120,21 @@ SQL Calcite: * Fixed error message for unsupported 'FORMAT' in 'CAST'. * Fixed expand star for system fields. * Fixed failure in COUNT(DISTINCT) operation. -* Fixed failure on 'CREATE TABLE' DDL with Calcite engine when 'DEFAULT' column value is NULL. +* Fixed failure on 'CREATE TABLE' DDL with Calcite engine when 'DEFAULT' column value is `NULL`. * Fixed failure on sensitive information hiding for DDL statements. -* Fixed implicit conversion to DECIMAL for some functions. -* Fixed incorrect error for TIME* WITH TIME ZONE types. +* Fixed implicit conversion to `DECIMAL` for some functions. +* Fixed incorrect error for `TIME* WITH TIME ZONE` types. * Fixed incorrect numeric results with operator 'IS [NOT] DISTINCT FROM'. * Fixed incorrect result in unions in case of different types of numeric results. -* Fixed least restrictive type priority (for DOUBLE and FLOAT). +* Fixed least restrictive type priority (for `DOUBLE` and `FLOAT`). * Fixed lost limit/offset on planning. * Fixed lost precisions of dynamic query parameters. * Fixed not-null count calculation if index rebuild is in progress. * Fixed numeric to interval cast. * Fixed parsing of incorrect date literals. -* Fixed partition reservation for index-count-scan. +* Fixed partition reservation for `index-count-scan`. * Fixed rehashing of inputs containing null values. -* Fixed rounding of numerics (now rounds all types of floating point numerics to nearest integer). +* Fixed rounding of numerics (now rounds all types of floating point numerics to the nearest integer). * Fixed sensitive information removal failure for JOINs and other SQL nodes. * Updated Calcite version to 1.37. @@ -142,7 +142,7 @@ Control utility: * Added a flag to ignore existed caches to the cache create command. * Added ability to view cache data in JSON format. * Added histogram bounds to the metric command output. -* Added logging of the IdleVerify command. +* Added logging of the `IdleVerify` command. * Added support for the thin client connection to the control utility and deprecate legacy Binary-REST connection. * Fixed CDC resend of replicated entries. * Fixed Idle Verify hanging when invoked on an inactive cluster. @@ -151,18 +151,18 @@ Control utility: * Fixed errors output. * Fixed partition column output of the cache distribution command. * Fixed permissions required by the consistency repair command. -* Removed ADMIN_OPS permissions check for cache operations. +* Removed `ADMIN_OPS` permissions check for cache operations. Java thin client: -* Added ClientClusterGroup support for Service Awareness. +* Added `ClientClusterGroup` support for Service Awareness. * Added events for client start and stop. -* Added invoke/invokeAll operations. -* Fixed partition awareness after cluster restart with the same topology version. +* Added `invoke`/`invokeAll` operations. +* Fixed partition awareness after a cluster restart with the same topology version. * Fixed client init hanging when cluster discovery is enabled but returned addresses are unreachable (in another subnet). * Fixed client-connector threads blocking by transactional operations. * Fixed orphaned handles after binary object detach operation. * Fixed partition awareness with node filter. -* Fixed stale client cluster group data after cluster restart. +* Fixed stale client cluster group data after a cluster restart. Ignite .NET: * Added compute task sessions support. From 7b051b37c2622ebab4d4b1cc1271016159031e84 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 15:12:58 +0300 Subject: [PATCH 09/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index f2d63f9f807c2..8876b8d909b0d 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -8,7 +8,7 @@ Apache Ignite In-Memory Distributed Database 2.17.0 * Control utility now uses thin client protocol by default (configured on a node via `ClientConnectorConfiguration`). Connection via Binary-REST protocol (`ConnectorConfiguration`) was deprecated for removal in future releases. * Ignite sources were moved to Java 11. * Removed deprecated authorization methods from Security Context. -* Removed deprecated TcpCommunicationSpi shared memory port configuration. +* Removed deprecated `TcpCommunicationSpi` shared memory port configuration. Ignite: * Added 'keepRaw' parameter to `DumpReaderConfiguration`. @@ -21,7 +21,7 @@ Ignite: * Added libs to the OpenCensus module to make Prometheus metrics work from the box without building any extra libs. * Added logging for CDC mode switching. * Added operation time metrics for `putAllConflict` and `removeAllConflict` operations. -* Added proper logging of default pageSize. +* Added proper logging of default page size. * Added query thread pool metrics to the log file. * Added snapshot creation time into the snapshot view. * Fixed CDC error with Ignite to Ignite streamer in case `BinaryConfiguration` is specified in the configuration. @@ -70,7 +70,7 @@ Ignite: * Moved Ignite sources to Java 11. * Optimized UUID serialization for communication messages. * Optimized entries expiration for persistent caches. -* Removed deprecated TcpCommunicationSpi shared memory port configuration. +* Removed deprecated `TcpCommunicationSpi` shared memory port configuration. * Removed deprecated authorization methods from Security Context. * Updated Jetty dependency version to 9.4.55. * Updated Netty dependency version to 4.1.101.Final. @@ -115,12 +115,12 @@ SQL Calcite: * Fixed column nullability check for data types with precision or scale. * Fixed compiled expression cache key for correlated variable (to avoid cache collisions for correlated variables with different data types). * Fixed complex key index scans (binary objects comparison). -* Fixed correlated nested loop LEFT join failure. -* Fixed default TIMESTAMP precision. -* Fixed error message for unsupported 'FORMAT' in 'CAST'. +* Fixed correlated nested loop `LEFT` join failure. +* Fixed default `TIMESTAMP` precision. +* Fixed error message for unsupported `FORMAT` in `CAST`. * Fixed expand star for system fields. -* Fixed failure in COUNT(DISTINCT) operation. -* Fixed failure on 'CREATE TABLE' DDL with Calcite engine when 'DEFAULT' column value is `NULL`. +* Fixed failure in `COUNT`(`DISTINCT`) operation. +* Fixed failure on `CREATE TABLE` DDL with Calcite engine when `DEFAULT` column value is NULL`. * Fixed failure on sensitive information hiding for DDL statements. * Fixed implicit conversion to `DECIMAL` for some functions. * Fixed incorrect error for `TIME* WITH TIME ZONE` types. From 5dcac611f5b34695fb05253716feeb4af42a6ab6 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 15:49:00 +0300 Subject: [PATCH 10/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 8876b8d909b0d..9dbb962721f97 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -169,8 +169,8 @@ Ignite .NET: * Fixed platform cache update for negative cache ID. * Improved thin client service invocation performance by sending requests directly to the nodes where the service is deployed. -JDBC/ODBC: -* Added support for stream APIs for BLOB. +JDBC: +* Added BLOB and stream APIs support. Apache Ignite In-Memory Distributed Database 2.16.0 ----------------------------------------------------------- From 13f4f61878c05efdc761accab4b679d4925bd0c2 Mon Sep 17 00:00:00 2001 From: Nikita Amelchev Date: Thu, 26 Dec 2024 18:22:16 +0300 Subject: [PATCH 11/11] IGNITE-23760 Update Apache Ignite 2.17 release notes --- RELEASE_NOTES.txt | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 9dbb962721f97..68d47b10ef3bf 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -12,8 +12,8 @@ Apache Ignite In-Memory Distributed Database 2.17.0 Ignite: * Added 'keepRaw' parameter to `DumpReaderConfiguration`. -* Added `IndexQuery` events. * Added TLSv1_3 to `o.a.i.client.SslProtocol`. +* Added `IndexQuery` events. * Added address information to `ClientConnectionException`. * Added check for SSL errors on TcpDiscovery writing failures. * Added configuration for distributed properties default values. @@ -25,10 +25,10 @@ Ignite: * Added query thread pool metrics to the log file. * Added snapshot creation time into the snapshot view. * Fixed CDC error with Ignite to Ignite streamer in case `BinaryConfiguration` is specified in the configuration. -* Fixed `ClusterPartitionsCountByState` metric failure if topology is not initialized. -* Fixed `IgniteCache.removeAsync(key,val)` failure inside an optimistic transaction. * Fixed NPE on the 'TransactionsHoldingLockNumber' metric if transaction is not initialized. * Fixed OOM crash on unstable topology. +* Fixed `ClusterPartitionsCountByState` metric failure if topology is not initialized. +* Fixed `IgniteCache.removeAsync(key,val)` failure inside an optimistic transaction. * Fixed an assertion error on `IgniteCache#get`. * Fixed assertion during `RotatedIdPartRecord` read from WAL. * Fixed backward connection check with loopback address. @@ -57,6 +57,7 @@ Ignite: * Fixed pending tree redundant cleanup on entries expire. * Fixed redundant lambda object allocation in `ClockPageReplacementFlags`. * Fixed removal of required affinity assignment instance from affinity cache. +* Fixed security context propagation for async transactional operations. * Fixed sending a stack trace to a thin client if a task fails in the map phase. * Fixed server node fail when node service filter class is unknown. * Fixed service descriptor when deployment failed. @@ -72,20 +73,20 @@ Ignite: * Optimized entries expiration for persistent caches. * Removed deprecated `TcpCommunicationSpi` shared memory port configuration. * Removed deprecated authorization methods from Security Context. +* Updated JTidy dependency version to 1.0.5. +* Updated Janino dependency version to 3.1.12. * Updated Jetty dependency version to 9.4.55. +* Updated Jetty dependency version to 9.4.56.v20240826. +* Updated Log4j2 dependency version to 2.22.0. * Updated Netty dependency version to 4.1.101.Final. +* Updated OpenCensus dependency version to 0.31.1. * Updated PostgreSQL JDBC dependency version to 42.7.3. +* Updated Snappy dependency version to 1.1.10.7. * Updated Spring dependency version to 5.3.39. +* Updated ZooKeeper dependency version to 3.8.4. * Updated commons-io dependency version to 2.17.0. * Updated grpc-context version to 1.62.2. -* Updated Janino dependency version to 3.1.12. -* Updated Jetty dependency version to 9.4.56.v20240826. * Updated json-path dependency version to 2.9.0. -* Updated JTidy dependency version to 1.0.5. -* Updated Log4j2 dependency version to 2.22.0. -* Updated OpenCensus dependency version to 0.31.1. -* Updated Snappy dependency version to 1.1.10.7. -* Updated ZooKeeper dependency version to 3.8.4. SQL: * Added ability to create user defined SQL views.