(ignite-3) branch dependabot/gradle/bouncycastle-1.77 deleted (was aacaaca2c4)

2024-03-14 Thread github-bot
This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch dependabot/gradle/bouncycastle-1.77
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


 was aacaaca2c4 Bump bouncycastle from 1.76 to 1.77

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.



(ignite-3) branch dependabot/gradle/io.freefair.aggregate-javadoc-6.6.3 updated (a0ce87b3a7 -> 940b2200a4)

2024-03-14 Thread github-bot
This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch 
dependabot/gradle/io.freefair.aggregate-javadoc-6.6.3
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


 discard a0ce87b3a7 Bump io.freefair.aggregate-javadoc from 6.5.1 to 6.6.3
 add 960f55fa72 IGNITE-21650 Extend PMD ruleset to cover performance and 
multithreading issues (#3416)
 add 1813f267ad Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 
1.1.1 (#3395)
 add 51c6b43cc1 Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre 
(#3419)
 add 940b2200a4 Bump io.freefair.aggregate-javadoc from 6.5.1 to 6.6.3

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (a0ce87b3a7)
\
 N -- N -- N   
refs/heads/dependabot/gradle/io.freefair.aggregate-javadoc-6.6.3 (940b2200a4)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 check-rules/pmd-rules.xml  | 37 ++
 gradle/libs.versions.toml  |  4 +--
 .../cli/call/cluster/unit/DeployUnitClient.java|  4 +--
 .../ignite/internal/cli/config/ini/IniFile.java|  4 +--
 .../ignite/internal/cli/config/ini/IniParser.java  |  4 +--
 .../core/repl/executor/IgnitePicocliCommands.java  |  6 ++--
 .../internal/cli/commands/flow/FlowTest.java   |  1 +
 .../apache/ignite/client/fakes/FakeSession.java|  8 ++---
 .../internal/lang/IgniteStringFormatter.java   |  8 +++--
 .../tostring/IgniteToStringBuilderSelfTest.java| 26 +++
 .../internal/network/file/ChunkedFileReader.java   |  4 +--
 .../internal/network/file/ChunkedFileWriter.java   |  4 +--
 .../internal/jdbc/ConnectionPropertiesImpl.java|  8 ++---
 .../metrics/exporters/jmx/MetricSetMbean.java  |  2 +-
 ...TransferableObjectProcessorIncrementalTest.java |  2 +-
 .../network/ssl/SslContextProviderTest.java|  8 +++--
 .../internal/pagememory/persistence/FastCrc.java   |  4 +--
 .../persistence/RobinHoodBackwardShiftHashMap.java | 14 
 .../ignite/internal/pagememory/tree/BplusTree.java | 11 +++
 .../raft/client/TopologyAwareRaftGroupService.java |  2 +-
 .../sql/engine/exec/exp/ExpressionFactoryImpl.java |  5 ++-
 .../sql/engine/exec/mapping/FragmentPrinter.java   |  2 +-
 .../sql/engine/exec/mapping/MappingTestRunner.java | 30 +-
 .../internal/worker/CriticalWorkerWatchdog.java| 33 +--
 24 files changed, 135 insertions(+), 96 deletions(-)



(ignite-3) branch dependabot/gradle/com.google.guava-guava-33.1.0-jre deleted (was af965aa788)

2024-03-14 Thread ptupitsyn
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a change to branch 
dependabot/gradle/com.google.guava-guava-33.1.0-jre
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


 was af965aa788 Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.



(ignite-3) branch main updated (1813f267ad -> 51c6b43cc1)

2024-03-14 Thread ptupitsyn
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


from 1813f267ad Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 
1.1.1 (#3395)
 add 51c6b43cc1 Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre 
(#3419)

No new revisions were added by this update.

Summary of changes:
 gradle/libs.versions.toml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



(ignite-3) branch dependabot/gradle/com.jakewharton.fliptables-fliptables-1.1.1 deleted (was ec64f9b41a)

2024-03-14 Thread ptupitsyn
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a change to branch 
dependabot/gradle/com.jakewharton.fliptables-fliptables-1.1.1
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


 was ec64f9b41a Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 
1.1.1

The revisions that were on this branch are still contained in
other references; therefore, this change does not discard any commits
from the repository.



(ignite-3) branch main updated: Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 1.1.1 (#3395)

2024-03-14 Thread ptupitsyn
This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 1813f267ad Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 
1.1.1 (#3395)
1813f267ad is described below

commit 1813f267ad1833db2e5bc55803874b7bddebb212
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
AuthorDate: Fri Mar 15 06:39:06 2024 +0200

Bump com.jakewharton.fliptables:fliptables from 1.1.0 to 1.1.1 (#3395)

Bumps 
[com.jakewharton.fliptables:fliptables](https://github.com/JakeWharton/flip-tables)
 from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/JakeWharton/flip-tables/releases)
- 
[Changelog](https://github.com/JakeWharton/flip-tables/blob/trunk/CHANGELOG.md)
- 
[Commits](https://github.com/JakeWharton/flip-tables/compare/fliptables-1.1.0...1.1.1)

---
updated-dependencies:
- dependency-name: com.jakewharton.fliptables:fliptables
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: Pavel Tupitsyn 
Co-authored-by: Pavel Tupitsyn 
---
 gradle/libs.versions.toml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index d82ecd7bbe..986447173f 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -20,7 +20,7 @@ assertj = "3.25.3"
 asm = "9.6"
 bouncycastle = "1.76"
 compileTesting = "0.21.0"
-fliptables = "1.1.0"
+fliptables = "1.1.1"
 fmpp = "0.9.16"
 jackson = "2.17.0"
 jakarta = "2.0.0"



(ignite-3) branch main updated: IGNITE-21650 Extend PMD ruleset to cover performance and multithreading issues (#3416)

2024-03-14 Thread apkhmv
This is an automated email from the ASF dual-hosted git repository.

apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 960f55fa72 IGNITE-21650 Extend PMD ruleset to cover performance and 
multithreading issues (#3416)
960f55fa72 is described below

commit 960f55fa725bec88a563588c848b495671400635
Author: Viacheslav Blinov 
AuthorDate: Thu Mar 14 19:59:48 2024 +0300

IGNITE-21650 Extend PMD ruleset to cover performance and multithreading 
issues (#3416)

* Add performance-related PMD rules to ruleset
* Add multithreading-related PMD rules to ruleset
---
 check-rules/pmd-rules.xml  | 37 ++
 .../cli/call/cluster/unit/DeployUnitClient.java|  4 +--
 .../ignite/internal/cli/config/ini/IniFile.java|  4 +--
 .../ignite/internal/cli/config/ini/IniParser.java  |  4 +--
 .../core/repl/executor/IgnitePicocliCommands.java  |  6 ++--
 .../internal/cli/commands/flow/FlowTest.java   |  1 +
 .../apache/ignite/client/fakes/FakeSession.java|  8 ++---
 .../internal/lang/IgniteStringFormatter.java   |  8 +++--
 .../tostring/IgniteToStringBuilderSelfTest.java| 26 +++
 .../internal/network/file/ChunkedFileReader.java   |  4 +--
 .../internal/network/file/ChunkedFileWriter.java   |  4 +--
 .../internal/jdbc/ConnectionPropertiesImpl.java|  8 ++---
 .../metrics/exporters/jmx/MetricSetMbean.java  |  2 +-
 ...TransferableObjectProcessorIncrementalTest.java |  2 +-
 .../network/ssl/SslContextProviderTest.java|  8 +++--
 .../internal/pagememory/persistence/FastCrc.java   |  4 +--
 .../persistence/RobinHoodBackwardShiftHashMap.java | 14 
 .../ignite/internal/pagememory/tree/BplusTree.java | 11 +++
 .../raft/client/TopologyAwareRaftGroupService.java |  2 +-
 .../sql/engine/exec/exp/ExpressionFactoryImpl.java |  5 ++-
 .../sql/engine/exec/mapping/FragmentPrinter.java   |  2 +-
 .../sql/engine/exec/mapping/MappingTestRunner.java | 30 +-
 .../internal/worker/CriticalWorkerWatchdog.java| 33 +--
 23 files changed, 133 insertions(+), 94 deletions(-)

diff --git a/check-rules/pmd-rules.xml b/check-rules/pmd-rules.xml
index 381d50e159..2f1627fca7 100644
--- a/check-rules/pmd-rules.xml
+++ b/check-rules/pmd-rules.xml
@@ -82,6 +82,7 @@
 
 
 
+
 
 
 
@@ -99,11 +100,44 @@
 
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 
 
 
 
@@ -126,4 +160,7 @@
 
 
 
+
+
+.*/src/main/java/com/facebook/presto/.*
 
diff --git 
a/modules/cli/src/main/java/org/apache/ignite/internal/cli/call/cluster/unit/DeployUnitClient.java
 
b/modules/cli/src/main/java/org/apache/ignite/internal/cli/call/cluster/unit/DeployUnitClient.java
index 40ba0feb28..e390e21154 100644
--- 
a/modules/cli/src/main/java/org/apache/ignite/internal/cli/call/cluster/unit/DeployUnitClient.java
+++ 
b/modules/cli/src/main/java/org/apache/ignite/internal/cli/call/cluster/unit/DeployUnitClient.java
@@ -99,8 +99,8 @@ public class DeployUnitClient {
 StringBuilder url = new StringBuilder(apiClient.getBasePath());
 url
 .append("/management/v1/deployment/units")
-.append("/").append(apiClient.escapeString(unitId))
-.append("/").append(apiClient.escapeString(unitVersion));
+.append('/').append(apiClient.escapeString(unitId))
+.append('/').append(apiClient.escapeString(unitVersion));
 
 List queryParams = new ArrayList<>();
 
diff --git 
a/modules/cli/src/main/java/org/apache/ignite/internal/cli/config/ini/IniFile.java
 
b/modules/cli/src/main/java/org/apache/ignite/internal/cli/config/ini/IniFile.java
index 977e302dd0..b10b1d011c 100644
--- 
a/modules/cli/src/main/java/org/apache/ignite/internal/cli/config/ini/IniFile.java
+++ 
b/modules/cli/src/main/java/org/apache/ignite/internal/cli/config/ini/IniFile.java
@@ -19,11 +19,11 @@ package org.apache.ignite.internal.cli.config.ini;
 
 import java.io.BufferedWriter;
 import java.io.File;
-import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
 import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
 import java.util.Collection;
 import java.util.Map;
 import org.apache.ignite.internal.cli.config.exception.ConfigStoringException;
@@ -75,7 +75,7 @@ public class IniFile {
  * Store current INI file to FS file.
  */
 public void store() {
-try (OutputStream os = new FileOutputStream(file)) {
+try (OutputStream os = Files.newOutputStream(file.toPath())) {
 store(os);
 } catch (IOException e) {
 throw new 

(ignite-3) branch dependabot/gradle/com.google.guava-guava-33.1.0-jre created (now af965aa788)

2024-03-14 Thread github-bot
This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch 
dependabot/gradle/com.google.guava-guava-33.1.0-jre
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


  at af965aa788 Bump com.google.guava:guava from 33.0.0-jre to 33.1.0-jre

No new revisions were added by this update.



(ignite-3) branch dependabot/gradle/io.freefair.aggregate-javadoc-6.6.3 created (now a0ce87b3a7)

2024-03-14 Thread github-bot
This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch 
dependabot/gradle/io.freefair.aggregate-javadoc-6.6.3
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


  at a0ce87b3a7 Bump io.freefair.aggregate-javadoc from 6.5.1 to 6.6.3

No new revisions were added by this update.



(ignite-3) branch dependabot/gradle/bouncycastle-1.77 created (now aacaaca2c4)

2024-03-14 Thread github-bot
This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch dependabot/gradle/bouncycastle-1.77
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


  at aacaaca2c4 Bump bouncycastle from 1.76 to 1.77

No new revisions were added by this update.



(ignite-3) branch main updated: IGNITE-21428 Add WITH params for zone (#3374)

2024-03-14 Thread apkhmv
This is an automated email from the ASF dual-hosted git repository.

apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new c2ec9c94e7 IGNITE-21428 Add WITH params for zone (#3374)
c2ec9c94e7 is described below

commit c2ec9c94e7e53baa483711d0cef3dfd1188dbb34
Author: Vadim Pakhnushev <8614891+valep...@users.noreply.github.com>
AuthorDate: Thu Mar 14 18:56:20 2024 +0300

IGNITE-21428 Add WITH params for zone (#3374)
---
 .../apache/ignite/catalog/annotations/Zone.java|  46 +++-
 .../catalog/definitions/ColumnDefinition.java  |   5 +
 .../catalog/definitions/TableDefinition.java   |  10 +-
 .../ignite/catalog/definitions/ZoneDefinition.java | 206 ++-
 .../ignite/internal/catalog/ItCatalogDslTest.java  |   9 +-
 .../catalog/sql/CreateFromAnnotationsImpl.java |  25 +-
 .../catalog/sql/CreateFromDefinitionImpl.java  |  24 +-
 .../internal/catalog/sql/CreateZoneImpl.java   |  61 -
 .../ignite/internal/catalog/sql/WithOption.java|  24 ++
 .../catalog/sql/CreateFromAnnotationsTest.java |  42 ++-
 .../catalog/sql/CreateFromDefinitionTest.java  |  10 +-
 .../catalog/sql/InvalidDefinitionTest.java | 291 ++---
 12 files changed, 617 insertions(+), 136 deletions(-)

diff --git 
a/modules/api/src/main/java/org/apache/ignite/catalog/annotations/Zone.java 
b/modules/api/src/main/java/org/apache/ignite/catalog/annotations/Zone.java
index fd9589d86c..fc8cff04c1 100644
--- a/modules/api/src/main/java/org/apache/ignite/catalog/annotations/Zone.java
+++ b/modules/api/src/main/java/org/apache/ignite/catalog/annotations/Zone.java
@@ -52,9 +52,51 @@ public @interface Zone {
 int replicas() default -1;
 
 /**
- * Engine name.
+ * Affinity function.
  *
- * @return Engine name.
+ * @return Affinity function.
+ */
+String affinityFunction() default "";
+
+/**
+ * Timeout in seconds between node added or node left topology event 
itself and data nodes switch.
+ *
+ * @return Timeout.
+ */
+int dataNodesAutoAdjust() default -1;
+
+/**
+ * Timeout in seconds between node added topology event itself and data 
nodes switch.
+ *
+ * @return Timeout.
+ */
+int dataNodesAutoAdjustScaleUp() default -1;
+
+/**
+ * Timeout in seconds between node left topology event itself and data 
nodes switch.
+ *
+ * @return Timeout.
+ */
+int dataNodesAutoAdjustScaleDown() default -1;
+
+/**
+ * Nodes filter.
+ *
+ * @return Nodes filter.
+ */
+String filter() default "";
+
+/**
+ * The storage engine name.
+ *
+ * @return The storage engine name.
  */
 ZoneEngine engine() default ZoneEngine.DEFAULT;
+
+/**
+ * Data region name within the storage engine.
+ *
+ * @return Data region name.
+ */
+String dataRegion() default "";
 }
diff --git 
a/modules/api/src/main/java/org/apache/ignite/catalog/definitions/ColumnDefinition.java
 
b/modules/api/src/main/java/org/apache/ignite/catalog/definitions/ColumnDefinition.java
index facebb6ff2..af32f8dd92 100644
--- 
a/modules/api/src/main/java/org/apache/ignite/catalog/definitions/ColumnDefinition.java
+++ 
b/modules/api/src/main/java/org/apache/ignite/catalog/definitions/ColumnDefinition.java
@@ -49,6 +49,7 @@ public class ColumnDefinition {
 if (name.isBlank()) {
 throw new IllegalArgumentException("Column name must not be 
blank.");
 }
+Objects.requireNonNull(type, "Column type must not be null.");
 
 return new ColumnDefinition(name, type, null);
 }
@@ -65,6 +66,10 @@ public class ColumnDefinition {
 if (name.isBlank()) {
 throw new IllegalArgumentException("Column name must not be 
blank.");
 }
+Objects.requireNonNull(definition, "Column definition must not be 
null.");
+if (definition.isBlank()) {
+throw new IllegalArgumentException("Column definition must not be 
blank.");
+}
 
 return new ColumnDefinition(name, null, definition);
 }
diff --git 
a/modules/api/src/main/java/org/apache/ignite/catalog/definitions/TableDefinition.java
 
b/modules/api/src/main/java/org/apache/ignite/catalog/definitions/TableDefinition.java
index 7ac92cbf60..abf9d4651e 100644
--- 
a/modules/api/src/main/java/org/apache/ignite/catalog/definitions/TableDefinition.java
+++ 
b/modules/api/src/main/java/org/apache/ignite/catalog/definitions/TableDefinition.java
@@ -247,6 +247,11 @@ public class TableDefinition {
 }
 
 Builder tableName(String name) {
+Objects.requireNonNull(name, "Table name must not be null.");
+if (name.isBlank()) {
+throw new IllegalArgumentException("Table name must not be 
blank.");
+}
+
 this.tableName = name;
 return this;
 

(ignite-3) branch main updated (14eecd4953 -> 2c5482cfb1)

2024-03-14 Thread jooger
This is an automated email from the ASF dual-hosted git repository.

jooger pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


from 14eecd4953 IGNITE-21088 Fix node restart with json config (#3376)
 add 2c5482cfb1 IGNITE-21452: add fail handler to query task execution 
(#3264)

No new revisions were added by this update.

Summary of changes:
 modules/failure-handler/build.gradle   |  1 +
 .../ignite/internal/failure/FailureProcessor.java  | 19 ++
 .../org/apache/ignite/raft/jraft/entity/Task.java  |  2 +-
 .../runner/app/ItIgniteNodeRestartTest.java|  1 +
 .../org/apache/ignite/internal/app/IgniteImpl.java |  6 +++
 modules/sql-engine/build.gradle|  3 ++
 .../ignite/internal/sql/engine/ItDmlTest.java  | 38 +++
 .../sql/engine/ItSqlMultiStatementTest.java|  3 +-
 .../internal/sql/engine/SqlQueryProcessor.java |  7 +++-
 .../sql/engine/exec/ExchangeServiceImpl.java   | 10 +++--
 .../internal/sql/engine/exec/ExecutionContext.java | 11 +-
 .../sql/engine/exec/ExecutionServiceImpl.java  | 13 +++
 .../sql/engine/exec/QueryTaskExecutorImpl.java | 44 ++
 .../sql/engine/exec/exp/agg/Accumulators.java  |  5 ++-
 .../sql/engine/exec/ExecutionServiceImplTest.java  | 26 -
 .../sql/engine/exec/rel/AbstractExecutionTest.java |  5 ++-
 .../sql/engine/exec/rel/BaseAggregateTest.java |  5 ++-
 .../sql/engine/exec/rel/ExchangeExecutionTest.java |  5 ++-
 .../sql/engine/exec/rel/ExecutionTest.java | 20 +-
 .../internal/sql/engine/framework/TestNode.java|  6 ++-
 .../internal/sql/engine/util/SqlTestUtils.java |  2 +-
 21 files changed, 171 insertions(+), 61 deletions(-)



(ignite-3) branch main updated: IGNITE-21088 Fix node restart with json config (#3376)

2024-03-14 Thread apkhmv
This is an automated email from the ASF dual-hosted git repository.

apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 14eecd4953 IGNITE-21088 Fix node restart with json config (#3376)
14eecd4953 is described below

commit 14eecd4953da9a19d3e9170e9bfcf64d526b8e1d
Author: Vadim Pakhnushev <8614891+valep...@users.noreply.github.com>
AuthorDate: Thu Mar 14 17:50:52 2024 +0300

IGNITE-21088 Fix node restart with json config (#3376)
---
 .../storage/LocalFileConfigurationStorage.java |  4 ++-
 .../storage/LocalFileConfigurationStorageTest.java | 34 ++
 2 files changed, 37 insertions(+), 1 deletion(-)

diff --git 
a/modules/runner/src/main/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorage.java
 
b/modules/runner/src/main/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorage.java
index f021322c04..dbf0c61eaf 100644
--- 
a/modules/runner/src/main/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorage.java
+++ 
b/modules/runner/src/main/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorage.java
@@ -30,6 +30,7 @@ import com.typesafe.config.ConfigFactory;
 import com.typesafe.config.ConfigObject;
 import com.typesafe.config.ConfigParseOptions;
 import com.typesafe.config.ConfigRenderOptions;
+import com.typesafe.config.ConfigSyntax;
 import com.typesafe.config.ConfigValue;
 import com.typesafe.config.impl.ConfigImpl;
 import java.io.IOException;
@@ -153,7 +154,8 @@ public class LocalFileConfigurationStorage implements 
ConfigurationStorage {
 checkAndRestoreConfigFile();
 
 try {
-return ConfigFactory.parseFile(configPath.toFile(), 
ConfigParseOptions.defaults().setAllowMissing(false));
+ConfigParseOptions parseOptions = 
ConfigParseOptions.defaults().setSyntax(ConfigSyntax.CONF).setAllowMissing(false);
+return ConfigFactory.parseFile(configPath.toFile(), parseOptions);
 } catch (ConfigException.Parse e) {
 throw new NodeConfigParseException("Failed to parse config content 
from file " + configPath, e);
 }
diff --git 
a/modules/runner/src/test/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorageTest.java
 
b/modules/runner/src/test/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorageTest.java
index a529eacda8..aca7fa140a 100644
--- 
a/modules/runner/src/test/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorageTest.java
+++ 
b/modules/runner/src/test/java/org/apache/ignite/internal/configuration/storage/LocalFileConfigurationStorageTest.java
@@ -27,7 +27,11 @@ import static 
org.hamcrest.Matchers.equalToCompressingWhiteSpace;
 import static org.hamcrest.Matchers.hasSize;
 import static org.hamcrest.Matchers.hasValue;
 import static org.hamcrest.Matchers.is;
+import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
 
+import com.typesafe.config.ConfigFactory;
+import com.typesafe.config.ConfigParseOptions;
+import com.typesafe.config.ConfigSyntax;
 import java.io.IOException;
 import java.io.Serializable;
 import java.nio.charset.StandardCharsets;
@@ -507,6 +511,36 @@ public class LocalFileConfigurationStorageTest {
 assertThat(storage.readDataOnRecovery().get().values(), 
aMapWithSize(1));
 }
 
+/** File content is parsed using HOCON format regardless of the file 
extension. */
+@Test
+void hoconContentInJsonFile() throws IOException {
+// Given config in JSON format
+String fileContent
+= "{\n"
++ "\"top\" : {\n"
++ "\"namedList\" : [\n"
++ "{\n"
++ "\"intVal\" : -1,\n"
++ "\"name\" : \"name1\"\n"
++ "}\n"
++ "]\n"
++ "}\n"
++ "}\n";
+
+Path configFile = tmpDir.resolve("ignite-config.json");
+
+Files.write(configFile, fileContent.getBytes(StandardCharsets.UTF_8));
+
+// Then check that the JSON is valid
+ConfigParseOptions parseOptions = 
ConfigParseOptions.defaults().setSyntax(ConfigSyntax.JSON).setAllowMissing(false);
+assertDoesNotThrow(() -> ConfigFactory.parseFile(configFile.toFile(), 
parseOptions));
+
+LocalFileConfigurationStorage storage = new 
LocalFileConfigurationStorage(configFile, treeGenerator);
+
+// And storage reads the file successfully
+assertDoesNotThrow(storage::readDataOnRecovery);
+}
+
 private String configFileContent() throws IOException {
 return Files.readString(getConfigFile());
 }



(ignite-3) branch ignite-21585 updated (80ae1c115e -> 0139dc3695)

2024-03-14 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-21585
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


from 80ae1c115e Styles.
 add 7818239ed7 IGNITE-21729 Prevent threads from being hijacked via async 
cursors in KV/Record view APIs (#3393)
 add c7f57ee45e Bump org.junit-pioneer:junit-pioneer from 2.0.1 to 2.2.0 
(#3394)
 add 4506ebafd7 IGNITE-19744 Clean up IEP-54 leftovers (#2203)
 add 02f5682181 IGNITE-21641 Fixed OOM in PartitionReplicaListenerTest 
(#3357)
 add 1fd9027cd1 Bump io.gsonfire:gson-fire from 1.8.5 to 1.9.0 (#3396)
 add 3225241bb7 IGNITE-21552 Sql. Add hybrid timestamp propagation during 
query execution (#3350)
 add 92344a0a2c IGNITE-21742 Refactor creation and management of Page 
Memory Indexes (#3406)
 add 0bd6670724 IGNITE-21569 Introduce spotbugs checks for additional code 
static analysis (#3373)
 add c2b1c09b86 IGNITE-18258 .NET: LINQ: Clean up inlineConstArgs logic 
(#3408)
 add 5a0369a75f IGNITE-21311: Introduce pruning for SQL correlated scans 
(#3318)
 add b60daf24f3 IGNITE-21724 Support "-ea" version suffix in 
ItInitializedClusterRestTest (#3391)
 add 5a288a5351 Bump com.esotericsoftware:kryo from 4.0.1 to 5.6.0 (#3402)
 add cfda840a37 Bump jackson from 2.16.1 to 2.17.0 (#3410)
 add 3dea2b18a8 IGNITE-21749 Add assertions for destroyed/closed storages 
behavior (#3409)
 add 65fd2caf88 IGNITE-19976: Sql. ClassCastException when trying to select 
from indexed smallint column (#3377)
 add f773e0ea76 IGNITE-21752 Improve excludes for generated rest client 
(#3412)
 add 34b536a6bd IGNITE-21671 Remove destroyed PageMemory indexes on 
recovery (#3399)
 add 0139dc3695 Merge branch 'main' into ignite-21585

No new revisions were added by this update.

Summary of changes:
 ...PMD, modernizer, spotbugs, checkstyle].run.xml} |   5 +-
 .run/All checks [check].run.xml|   2 +-
 ...Main].run.xml => PMD [pmdMain pmdTest].run.xml} |   2 +-
 ...n.xml => Spotbugs check [spotbugsMain].run.xml} |   6 +-
 DEVNOTES.md|  20 +-
 build.gradle   |   1 +
 buildscripts/java-core.gradle  |  62 +-
 buildscripts/java-integration-test.gradle  |   4 +
 buildscripts/java-test-fixtures.gradle |   4 +
 check-rules/spotbugs-excludes.xml  | 316 +++
 gradle/libs.versions.toml  |  11 +-
 .../affinity/RendezvousAffinityFunction.java   |   4 -
 .../internal/binarytuple/BinaryTupleBuilder.java   |   1 +
 .../descriptors/CatalogDataStorageDescriptor.java  |   2 +-
 .../descriptors/CatalogHashIndexDescriptor.java|   2 +-
 .../descriptors/CatalogIndexColumnDescriptor.java  |   2 +-
 .../descriptors/CatalogSchemaDescriptor.java   |   2 +-
 .../descriptors/CatalogSystemViewDescriptor.java   |   2 +-
 .../descriptors/CatalogTableColumnDescriptor.java  |   2 +-
 .../descriptors/CatalogTableDescriptor.java|   2 +-
 .../descriptors/CatalogTableSchemaVersions.java|   2 +-
 .../catalog/descriptors/CatalogZoneDescriptor.java |   2 +-
 .../serialization/CatalogSerializationUtils.java   |   2 +-
 .../java/org/apache/ignite/internal/cli/Main.java  |  24 +-
 .../internal/cli/commands/sql/SqlMetaData.java |  14 +-
 .../ignite/internal/cli/config/ini/IniParser.java  |   4 +-
 .../core/repl/completer/LazyDynamicCompleter.java  |  51 --
 .../core/repl/config/ClientConnectorConfig.java|  30 -
 .../internal/cli/core/repl/config/RootConfig.java  |  28 -
 .../internal/cli/IgniteCliInterfaceTest.java   |   2 +-
 .../handler/requests/jdbc/JdbcMetadataCatalog.java |   6 +-
 .../handler/requests/table/ClientHandlerTuple.java |  12 +-
 .../handler/requests/table/ClientTableCommon.java  |  10 +-
 .../ignite/client/PartitionAwarenessTest.java  |  11 +-
 .../ignite/client/fakes/FakeIgniteTables.java  |  12 +-
 .../compute/loader/JobClassLoaderFactory.java  |  23 +-
 .../ignite/internal/thread/PublicApiThreading.java |  35 +-
 .../ignite/internal/util/ExceptionUtils.java   |   4 +-
 .../ignite/internal/util/OffheapReadWriteLock.java |   3 +-
 .../internal/thread/PublicApiThreadingTest.java| 158 
 .../ignite/internal/jdbc/JdbcConnection.java   |   2 +-
 .../server/persistence/RocksDbKeyValueStorage.java |   2 +-
 .../messages/MarshallableTypesBlackList.java   |   4 +-
 .../persistence/PersistentPageMemory.java  |   3 +-
 .../persistence/checkpoint/Checkpointer.java   |   1 +
 .../internal/pagememory/tree/io/BplusLeafIo.java   |   2 +-
 .../Apache.Ignite.Tests/Linq/LinqTests.Cast.cs |  16 +-
 .../Linq/LinqTests.Functions.cs|   4 +-
 .../Internal/Linq/IgniteQueryExpressionVisitor.cs  |   5 +
 .../Apache.Ignite/Internal/Linq/MethodVisitor.cs   |  41 +-
 .../raft/storage/impl/RocksDbSharedLogStorage.java |   2 +-
 

(ignite-3) branch main updated: IGNITE-21578 Improve tests readability and logic in ItDurableFinishTest. (#3400)

2024-03-14 Thread sanpwc
This is an automated email from the ASF dual-hosted git repository.

sanpwc pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 38d3c20693 IGNITE-21578 Improve tests readability and logic in 
ItDurableFinishTest. (#3400)
38d3c20693 is described below

commit 38d3c2069392d8069a888363a70cd66fce6f548c
Author: Cyrill 
AuthorDate: Thu Mar 14 15:38:48 2024 +0300

IGNITE-21578 Improve tests readability and logic in ItDurableFinishTest. 
(#3400)
---
 .../ignite/internal/table/ItDurableFinishTest.java | 138 +++--
 1 file changed, 73 insertions(+), 65 deletions(-)

diff --git 
a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/table/ItDurableFinishTest.java
 
b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/table/ItDurableFinishTest.java
index 09639d5a81..0eeb8832f4 100644
--- 
a/modules/runner/src/integrationTest/java/org/apache/ignite/internal/table/ItDurableFinishTest.java
+++ 
b/modules/runner/src/integrationTest/java/org/apache/ignite/internal/table/ItDurableFinishTest.java
@@ -23,6 +23,7 @@ import static 
org.apache.ignite.internal.testframework.matchers.CompletableFutur
 import static org.apache.ignite.internal.tx.TxState.ABORTED;
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertInstanceOf;
 import static org.junit.jupiter.api.Assertions.assertNotNull;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 
@@ -34,7 +35,6 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.atomic.AtomicBoolean;
 import org.apache.ignite.internal.ClusterPerTestIntegrationTest;
 import org.apache.ignite.internal.app.IgniteImpl;
-import org.apache.ignite.internal.lang.IgniteTriConsumer;
 import org.apache.ignite.internal.network.ClusterService;
 import org.apache.ignite.internal.network.DefaultMessagingService;
 import org.apache.ignite.internal.network.NetworkMessage;
@@ -42,10 +42,12 @@ import 
org.apache.ignite.internal.placementdriver.ReplicaMeta;
 import org.apache.ignite.internal.replicator.TablePartitionId;
 import org.apache.ignite.internal.testframework.IgniteTestUtils;
 import org.apache.ignite.internal.tx.InternalTransaction;
+import org.apache.ignite.internal.tx.MismatchingTransactionOutcomeException;
 import org.apache.ignite.internal.tx.TxMeta;
+import org.apache.ignite.internal.tx.message.TxCleanupMessage;
 import org.apache.ignite.internal.tx.message.TxFinishReplicaRequest;
-import org.apache.ignite.internal.tx.message.WriteIntentSwitchReplicaRequest;
 import org.apache.ignite.internal.tx.storage.state.TxStateStorage;
+import org.apache.ignite.internal.util.ExceptionUtils;
 import org.apache.ignite.table.Tuple;
 import org.apache.ignite.tx.TransactionException;
 import org.jetbrains.annotations.Nullable;
@@ -72,8 +74,7 @@ public class ItDurableFinishTest extends 
ClusterPerTestIntegrationTest {
 });
 }
 
-private void testFinishRow(Configurator msgConf, 
IgniteTriConsumer finisher)
-throws ExecutionException, InterruptedException {
+private Context prepareTransactionData() throws ExecutionException, 
InterruptedException {
 createTestTableWith3Replicas();
 
 var tblReplicationGrp = defaultTablePartitionId(node(0));
@@ -103,9 +104,7 @@ public class ItDurableFinishTest extends 
ClusterPerTestIntegrationTest {
 
 tbl.recordView().upsert(rwTx, tpl);
 
-msgConf.accept(primaryNode, coordinatorNode, tbl, rwTx);
-
-finisher.accept(rwTx, tbl, keyTpl);
+return new Context(primaryNode, coordinatorNode, tbl, rwTx, keyTpl);
 }
 
 private TablePartitionId defaultTablePartitionId(IgniteImpl node) {
@@ -114,7 +113,7 @@ public class ItDurableFinishTest extends 
ClusterPerTestIntegrationTest {
 return new TablePartitionId(table.tableId(), 0);
 }
 
-private void commitRow(InternalTransaction rwTx, TableImpl tbl, Tuple 
keyTpl) {
+private void commitAndValidate(InternalTransaction rwTx, TableImpl tbl, 
Tuple keyTpl) {
 rwTx.commit();
 
 Tuple storedData = tbl.recordView().get(null, keyTpl);
@@ -132,15 +131,20 @@ public class ItDurableFinishTest extends 
ClusterPerTestIntegrationTest {
 
 @Test
 void testChangedPrimaryOnFinish() throws ExecutionException, 
InterruptedException {
-testFinishRow(this::changedPrimaryOnFinish, this::commitRow);
+Context context = prepareTransactionData();
+
+// Drop all finish messages to the old primary, pick a new one.
+// The coordinator will get a response from the new primary.
+CompletableFuture transferPrimaryFuture = 
changePrimaryOnFinish(context.coordinatorNode, context.tbl);
+
+// The primary is changed after calculating the outcome and commit 
timestamp.
+// The new primary 

(ignite-3) branch main updated: IGNITE-21671 Remove destroyed PageMemory indexes on recovery (#3399)

2024-03-14 Thread apolovtsev
This is an automated email from the ASF dual-hosted git repository.

apolovtsev pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 34b536a6bd IGNITE-21671 Remove destroyed PageMemory indexes on 
recovery (#3399)
34b536a6bd is described below

commit 34b536a6bd53b173b95a166cc5391fad8c2b91e5
Author: Alexander Polovtcev 
AuthorDate: Thu Mar 14 12:45:04 2024 +0200

IGNITE-21671 Remove destroyed PageMemory indexes on recovery (#3399)
---
 .../index/StorageIndexDescriptorSupplier.java  |  38 +---
 .../storage/AbstractMvTableStorageTest.java| 215 +--
 .../index/hash/PageMemoryHashIndexStorage.java |  12 +-
 .../storage/pagememory/index/meta/IndexMeta.java   |  38 +++-
 .../UpdateLastRowIdUuidToBuiltInvokeClosure.java   |   2 +-
 .../pagememory/index/meta/io/IndexMetaIo.java  |  21 +-
 .../index/sorted/PageMemorySortedIndexStorage.java |  13 +-
 .../storage/pagememory/mv/IndexStorageFactory.java |  50 -
 .../storage/pagememory/mv/PageMemoryIndexes.java   |  42 +++-
 .../PersistentPageMemoryMvTableStorageTest.java|   3 +-
 .../VolatilePageMemoryMvTableStorageTest.java  |   3 +-
 .../PersistentPageMemoryHashIndexStorageTest.java  |   2 +-
 ...PersistentPageMemorySortedIndexStorageTest.java |   2 +-
 .../VolatilePageMemoryHashIndexStorageTest.java|   3 +-
 .../VolatilePageMemorySortedIndexStorageTest.java  |   3 +-
 ...ageMemoryMvPartitionStorageConcurrencyTest.java |   3 +-
 ...rsistentPageMemoryMvPartitionStorageGcTest.java |   3 +-
 ...PersistentPageMemoryMvPartitionStorageTest.java |   3 +-
 ...ageMemoryMvPartitionStorageConcurrencyTest.java |   3 +-
 ...VolatilePageMemoryMvPartitionStorageGcTest.java |   3 +-
 .../VolatilePageMemoryMvPartitionStorageTest.java  |   3 +-
 .../RocksDbMvPartitionStorageConcurrencyTest.java  |   3 +-
 .../rocksdb/RocksDbMvPartitionStorageGcTest.java   |   3 +-
 .../rocksdb/RocksDbMvPartitionStorageTest.java |   3 +-
 .../storage/rocksdb/RocksDbMvTableStorageTest.java |  11 +-
 .../storage/rocksdb/RocksDbStorageEngineTest.java  |   5 +-
 .../rocksdb/index/RocksDbHashIndexStorageTest.java |   3 +-
 .../index/RocksDbSortedIndexStorageTest.java   |   3 +-
 .../CatalogStorageIndexDescriptorSupplier.java |  72 +++
 .../internal/table/distributed/LowWatermark.java   |   6 +-
 .../internal/table/distributed/TableManager.java   |   3 +-
 .../CatalogStorageIndexDescriptorSupplierTest.java | 238 +
 .../PersistentPageMemoryGcUpdateHandlerTest.java   |   8 +-
 .../distributed/gc/RocksDbGcUpdateHandlerTest.java |   8 +-
 .../gc/VolatilePageMemoryGcUpdateHandlerTest.java  |   8 +-
 35 files changed, 678 insertions(+), 161 deletions(-)

diff --git 
a/modules/storage-api/src/main/java/org/apache/ignite/internal/storage/index/StorageIndexDescriptorSupplier.java
 
b/modules/storage-api/src/main/java/org/apache/ignite/internal/storage/index/StorageIndexDescriptorSupplier.java
index 435298237f..1c2e27dc27 100644
--- 
a/modules/storage-api/src/main/java/org/apache/ignite/internal/storage/index/StorageIndexDescriptorSupplier.java
+++ 
b/modules/storage-api/src/main/java/org/apache/ignite/internal/storage/index/StorageIndexDescriptorSupplier.java
@@ -17,45 +17,15 @@
 
 package org.apache.ignite.internal.storage.index;
 
-import org.apache.ignite.internal.catalog.CatalogService;
-import org.apache.ignite.internal.catalog.descriptors.CatalogIndexDescriptor;
-import org.apache.ignite.internal.catalog.descriptors.CatalogTableDescriptor;
 import org.jetbrains.annotations.Nullable;
 
-/**
- * Index descriptor supplier from catalog.
- */
+/** Index descriptor supplier. */
 // TODO: IGNITE-19717 Get rid of it
-public class StorageIndexDescriptorSupplier {
-private final CatalogService catalogService;
-
-/**
- * Constructor.
- *
- * @param catalogService Catalog service.
- */
-public StorageIndexDescriptorSupplier(CatalogService catalogService) {
-this.catalogService = catalogService;
-}
-
+public interface StorageIndexDescriptorSupplier {
 /**
  * Returns an index descriptor by its ID, {@code null} if absent.
  *
- * @param id Index ID.
+ * @param indexId Index ID.
  */
-public @Nullable StorageIndexDescriptor get(int id) {
-int catalogVersion = catalogService.latestCatalogVersion();
-
-CatalogIndexDescriptor index = catalogService.index(id, 
catalogVersion);
-
-if (index == null) {
-return null;
-}
-
-CatalogTableDescriptor table = catalogService.table(index.tableId(), 
catalogVersion);
-
-assert table != null : "tableId=" + index.tableId() + ", indexId=" + 
index.id();
-
-return StorageIndexDescriptor.create(table, index);
-}
+@Nullable StorageIndexDescriptor get(int indexId);
 }
diff --git 

(ignite-3) branch ignite-21585 updated (cc8e2fd59d -> 80ae1c115e)

2024-03-14 Thread amashenkov
This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a change to branch ignite-21585
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


omit cc8e2fd59d Minors.

This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.

 * -- * -- N   refs/heads/ignite-21585 (80ae1c115e)
\
 O -- O -- O   (cc8e2fd59d)

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .../handler/ClientPrimaryReplicaTracker.java   |  18 +--
 .../apache/ignite/internal/index/IndexManager.java |  20 +--
 .../ignite/internal/table/LongPriorityQueue.java   | 124 +++
 .../internal/table/distributed/TableManager.java   |  16 +-
 .../internal/table/LongPriorityQueueSelfTest.java  | 174 +
 5 files changed, 316 insertions(+), 36 deletions(-)
 create mode 100644 
modules/table/src/main/java/org/apache/ignite/internal/table/LongPriorityQueue.java
 create mode 100644 
modules/table/src/test/java/org/apache/ignite/internal/table/LongPriorityQueueSelfTest.java



(ignite) branch master updated: IGNITE-21678 Fix Cdc error with ignite to ignite streamer in case BinaryConfiguration is specified in config (#11275)

2024-03-14 Thread timoninmaxim
This is an automated email from the ASF dual-hosted git repository.

timoninmaxim pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
 new 2ebc8df1aa2 IGNITE-21678 Fix Cdc error with ignite to ignite streamer 
in case BinaryConfiguration is specified in config (#11275)
2ebc8df1aa2 is described below

commit 2ebc8df1aa22ac105003360b57d83bbd0e9fc2df
Author: Sergey Korotkov 
AuthorDate: Thu Mar 14 15:49:46 2024 +0700

IGNITE-21678 Fix Cdc error with ignite to ignite streamer in case 
BinaryConfiguration is specified in config (#11275)
---
 .../org/apache/ignite/internal/cdc/CdcMain.java|   9 +-
 .../wal/reader/StandaloneSpiContext.java   | 250 +
 .../ignite/cdc/CdcPushMetricsExporterTest.java | 126 ++-
 3 files changed, 376 insertions(+), 9 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/cdc/CdcMain.java 
b/modules/core/src/main/java/org/apache/ignite/internal/cdc/CdcMain.java
index a85cd9bf858..33d015bfb34 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/cdc/CdcMain.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/cdc/CdcMain.java
@@ -62,6 +62,7 @@ import 
org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAhea
 import org.apache.ignite.internal.processors.cache.persistence.wal.WALPointer;
 import 
org.apache.ignite.internal.processors.cache.persistence.wal.reader.IgniteWalIteratorFactory;
 import 
org.apache.ignite.internal.processors.cache.persistence.wal.reader.StandaloneGridKernalContext;
+import 
org.apache.ignite.internal.processors.cache.persistence.wal.reader.StandaloneSpiContext;
 import org.apache.ignite.internal.processors.metric.MetricRegistry;
 import org.apache.ignite.internal.processors.metric.impl.AtomicLongMetric;
 import org.apache.ignite.internal.processors.metric.impl.HistogramMetricImpl;
@@ -74,11 +75,11 @@ import org.apache.ignite.lang.IgniteBiPredicate;
 import org.apache.ignite.lang.IgniteBiTuple;
 import org.apache.ignite.marshaller.MarshallerUtils;
 import org.apache.ignite.platform.PlatformType;
+import org.apache.ignite.spi.IgniteSpi;
 import org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi;
 import org.apache.ignite.spi.metric.noop.NoopMetricExporterSpi;
 import org.apache.ignite.startup.cmdline.CdcCommandLineStartup;
 
-import static 
org.apache.ignite.IgniteSystemProperties.IGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK;
 import static org.apache.ignite.internal.IgniteKernal.NL;
 import static org.apache.ignite.internal.IgniteKernal.SITE;
 import static org.apache.ignite.internal.IgniteVersionUtils.ACK_VER_STR;
@@ -322,8 +323,6 @@ public class CdcMain implements Runnable {
 throw new IllegalArgumentException(ERR_MSG);
 }
 
-System.setProperty(IGNITE_SKIP_CONFIGURATION_CONSISTENCY_CHECK, 
"true");
-
 try (CdcFileLockHolder lock = lockPds()) {
 String consIdDir = cdcDir.getName(cdcDir.getNameCount() - 
1).toString();
 
@@ -419,7 +418,9 @@ public class CdcMain implements Runnable {
 
 startAllComponents(kctx);
 
-kctx.metric().onKernalStart(true);
+for (IgniteSpi metricSpi : kctx.config().getMetricExporterSpi()) {
+metricSpi.onContextInitialized(new StandaloneSpiContext());
+}
 
 mreg = kctx.metric().registry("cdc");
 
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/reader/StandaloneSpiContext.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/reader/StandaloneSpiContext.java
new file mode 100644
index 000..887d35739b3
--- /dev/null
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/wal/reader/StandaloneSpiContext.java
@@ -0,0 +1,250 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.persistence.wal.reader;
+
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Map;
+import java.util.UUID;
+import java.util.function.Consumer;

(ignite-3) branch main updated: IGNITE-21752 Improve excludes for generated rest client (#3412)

2024-03-14 Thread apolovtsev
This is an automated email from the ASF dual-hosted git repository.

apolovtsev pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new f773e0ea76 IGNITE-21752 Improve excludes for generated rest client 
(#3412)
f773e0ea76 is described below

commit f773e0ea76f45e18d0230385db3854fab3cb19be
Author: Viacheslav Blinov 
AuthorDate: Thu Mar 14 11:32:43 2024 +0300

IGNITE-21752 Improve excludes for generated rest client (#3412)
---
 check-rules/spotbugs-excludes.xml | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/check-rules/spotbugs-excludes.xml 
b/check-rules/spotbugs-excludes.xml
index 0d828b995a..e111eb9e89 100644
--- a/check-rules/spotbugs-excludes.xml
+++ b/check-rules/spotbugs-excludes.xml
@@ -29,7 +29,7 @@
   
   
   
-  
+  
   
 
   
@@ -192,6 +192,11 @@
 
 
   
+  
+
+
+
+  
   
 
 



(ignite-3) branch main updated: IGNITE-19976: Sql. ClassCastException when trying to select from indexed smallint column (#3377)

2024-03-14 Thread zstan
This is an automated email from the ASF dual-hosted git repository.

zstan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
 new 65fd2caf88 IGNITE-19976: Sql. ClassCastException when trying to select 
from indexed smallint column (#3377)
65fd2caf88 is described below

commit 65fd2caf88e486bc53e9d01aaf3b2a74c1ec134b
Author: Max Zhuravkov 
AuthorDate: Thu Mar 14 09:26:53 2024 +0200

IGNITE-19976: Sql. ClassCastException when trying to select from indexed 
smallint column (#3377)
---
 .../internal/sql/engine/ItSecondaryIndexTest.java  |  41 
 .../ignite/internal/sql/engine/util/RexUtils.java  |  34 ++--
 .../planner/IndexSearchBoundsPlannerTest.java  | 223 -
 3 files changed, 240 insertions(+), 58 deletions(-)

diff --git 
a/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSecondaryIndexTest.java
 
b/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSecondaryIndexTest.java
index 1e40ffc988..2a69a53ab1 100644
--- 
a/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSecondaryIndexTest.java
+++ 
b/modules/sql-engine/src/integrationTest/java/org/apache/ignite/internal/sql/engine/ItSecondaryIndexTest.java
@@ -17,6 +17,7 @@
 
 package org.apache.ignite.internal.sql.engine;
 
+import static org.apache.ignite.internal.lang.IgniteStringFormatter.format;
 import static 
org.apache.ignite.internal.sql.engine.util.QueryChecker.containsAnyProject;
 import static 
org.apache.ignite.internal.sql.engine.util.QueryChecker.containsAnyScan;
 import static 
org.apache.ignite.internal.sql.engine.util.QueryChecker.containsIndexScan;
@@ -28,12 +29,15 @@ import static org.hamcrest.Matchers.not;
 
 import java.time.LocalDate;
 import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
 import org.apache.ignite.internal.sql.BaseSqlIntegrationTest;
 import org.apache.ignite.internal.sql.engine.rel.IgniteKeyValueGet;
 import org.apache.ignite.internal.sql.engine.util.QueryChecker;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.CsvSource;
 
 /**
  * Basic index tests.
@@ -47,6 +51,8 @@ public class ItSecondaryIndexTest extends 
BaseSqlIntegrationTest {
 
 private static final String NAME_DATE_IDX = "NAME_DATE_IDX";
 
+private static final AtomicInteger TABLE_IDX = new AtomicInteger();
+
 /**
  * Before all.
  */
@@ -1113,4 +1119,39 @@ public class ItSecondaryIndexTest extends 
BaseSqlIntegrationTest {
 .returns(1)
 .check();
 }
+
+@ParameterizedTest
+@CsvSource(value = {
+// type, literal
+"TINYINT;50",
+"TINYINT;50::BIGINT",
+"TINYINT;50::DECIMAL(10)",
+"TINYINT;50::REAL",
+
+"REAL;50.00",
+"REAL;50.00::REAL",
+"REAL;50.00::DOUBLE",
+"REAL;50",
+
+"DOUBLE;50.00",
+"DOUBLE;50.00::REAL",
+"DOUBLE;50.00::DECIMAL(10,2)",
+"DOUBLE;50",
+
+"DECIMAL(10, 2);50.00", // DECIMAL(10,2)
+"DECIMAL(10, 2);50.00::REAL",
+"DECIMAL(10, 2);50.00::DOUBLE",
+"DECIMAL(10, 2);50",
+}, delimiter = ';')
+public void testTypeCastsIndexBounds(String type, String val) {
+int id = TABLE_IDX.getAndIncrement();
+
+sql(format("create table tt_{}(id INTEGER PRIMARY KEY, field_1 {})", 
id, type, val));
+
+sql(format("SELECT * FROM tt_{} WHERE field_1 = {}", id, val));
+
+sql(format("CREATE INDEX tt_idx_{} ON tt_{} (field_1)", id, id));
+
+sql(format("SELECT * FROM tt_{} WHERE field_1 = {}", id, val));
+}
 }
diff --git 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/util/RexUtils.java
 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/util/RexUtils.java
index d54920f62a..6dffd47ec0 100644
--- 
a/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/util/RexUtils.java
+++ 
b/modules/sql-engine/src/main/java/org/apache/ignite/internal/sql/engine/util/RexUtils.java
@@ -947,9 +947,13 @@ public class RexUtils {
 }
 
 /**
- * If the given node is a numeric literal, checks whether it the cast to 
{@code type} overflows
- * and in that case performs {@code saturated cast}, converting a value of 
that literal to the largest value of that type.
- * If overflow does can not occur, returns the same node.
+ * If the given node is a numeric literal, checks whether its cast to 
{@code type} overflows and in that case
+ * performs {@code saturated cast}, converting a value of that literal to 
the largest value of that type.
+ *
+ * If overflow 

(ignite-3) branch main updated (cfda840a37 -> 3dea2b18a8)

2024-03-14 Thread tkalkirill
This is an automated email from the ASF dual-hosted git repository.

tkalkirill pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


from cfda840a37 Bump jackson from 2.16.1 to 2.17.0 (#3410)
 add 3dea2b18a8 IGNITE-21749 Add assertions for destroyed/closed storages 
behavior (#3409)

No new revisions were added by this update.

Summary of changes:
 .../storage/AbstractMvTableStorageTest.java| 523 +++--
 .../index/AbstractPageMemoryIndexStorage.java  |   2 +-
 .../storage/pagememory/mv/ScanVersionsCursor.java  |  40 +-
 .../storage/rocksdb/RocksDbMvPartitionStorage.java |  12 +-
 4 files changed, 311 insertions(+), 266 deletions(-)