This is an automated email from the ASF dual-hosted git repository.
amashenkov pushed a change to branch ignite-22988
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
from 7d090efd22 Minor after review
add 6c65c1fb57 IGNITE-22876 Implement cluster reset initiation (#4272)
add 0b993adcd4 IGNITE-23095 Fix crashes in
SystemDisasterRecoveryManagerImplTest (#4301)
add 7d25de79af IGNITE-23099 Fix writeUnlock() contract in
VersatileReadWriteLock (#4305)
add 71631f769b IGNITE-23089 Node config update command show terminal
control symbols (#4299)
add d32ef2e80c IGNITE-23100 Improve semantic of authenticateAsync (#4306)
add 1aead9b121 IGNITE-23104 Add validation of some fields in
GcConfigurationSchema (#4307)
add 35fbde0e70 IGNITE-22777 Improve CLI usability (#4280)
add 3c43871cbf IGNITE-22160: Sql. Usability of error message in case of
numeric overflow (#4296)
add e2a7921ffc IGNITE-23086 Fix
ItTxDistributedTestThreeNodesThreeReplicas.testDeleteUpsertAllRollback (#4302)
add 1eb86a241c IGNITE-23098 Make sure raft is closed before storage (#4310)
add 01b2306c26 IGNITE-22787 Support Marshallers in MapReduce API (#4260)
add 2ffebf67e0 IGNITE-23063
ItReplicaLifecycleTest.testStableAreWrittenAfterRestart(TestInfo) is flaky
(#4291)
add eab9fef44f IGNITE-23084 Implement checkpoint buffer draining in
checkpoint threads if it's close to overflow (#4308)
add 5d7de62ea4 IGNITE-23111 Fix docker compose config (#4313)
add e17117496a IGNITE-22882 Thin client: support multiple cluster IDs in
handshake (#4314)
add d8fb1f4d0b IGNITE-23101 CLI should show HOCON representation of the
config (#4309)
add c03667bff5 IGNITE-23049 Add HybridClock benchmark (#4270)
add b9ebbae99c IGNITE-22807 Repair CMG on node start (#4304)
add 27ce7f278d IGNITE-22808 Migrate running node missed during CMG
reparation to new cluster (#4315)
add 5c81840191 IGNITE-20889 Sql. Remove extra coercion code (#4297)
add 9972b3b232 IGNITE-23078 Fix flaky test
CatalogCompactionRunnerSelfTest.mustNotPerformWhenAssignmentNodeIsMissing
(#4319)
add de11d33ff1 IGNITE-22747 Python Client: add tox.ini for CI/CD (#4289)
add 535d22dcb0 IGNITE-22942 Add ability to StaticNodeFinder to resolve
multiple IP addresses under the same host name (#4320)
add bb51f3cc7c IGNITE-22741 DB API Driver 3: Implement Data Fetching
(#4321)
add 53e8bfafc7 IGNITE-22679 Explain the workflow at the start of catalog
manager. (#4300)
add 003edce538 IGNITE-22956 Implement local events about zone replica
start in PartitionReplicaLifecycleManager. (#4294)
add 6ffcc007aa IGNITE-22883 Send all cluster IDs to thin client on
connection (#4322)
add fc98b16952 IGNITE-23102 Usernames in basic authentication should be
case insensitive (#4311)
add 37c98e6e1b IGNITE-23088 Sql. Serialization/deserialization of exact
numbers with approx types can be different (#4303)
add 0723a0fd3e IGNITE-23083 Sql. Avoid planner cache pollution with simple
insert queries (#4295)
add 677b5babd5 Merge branch 'main' into ignite-22988
No new revisions were added by this update.
Summary of changes:
.../org/apache/ignite/compute/TaskDescriptor.java | 57 ++-
.../apache/ignite/compute/task/MapReduceTask.java | 11 +
.../CatalogCompactionRunnerSelfTest.java | 6 +-
.../configuration/ItConfigCommandTest.java | 25 +-
.../call/configuration/NodeConfigUpdateCall.java | 3 +-
.../ignite/internal/cli/commands/BaseCommand.java | 29 +-
.../internal/cli/commands/CommandConstants.java | 41 ++
.../ignite/internal/cli/commands/ProfileMixin.java | 3 +-
.../internal/cli/commands/TopLevelCliCommand.java | 3 +-
.../cli/commands/TopLevelCliReplCommand.java | 29 +-
.../cli/commands/cluster/ClusterUrlMixin.java | 8 +-
.../commands/cluster/init/ClusterInitCommand.java | 6 +-
.../commands/cluster/init/ClusterInitOptions.java | 13 +-
.../commands/sql/SqlReplTopLevelCliCommand.java | 24 +-
.../cli/commands/sql/help/SqlHelpCommand.java | 26 +-
.../highlighter/JsonAnsiHighlighter.java | 1 +
.../internal/cli/decorators/JsonDecorator.java | 18 +-
.../commands/cluster/config/ClusterConfigTest.java | 12 +-
.../cli/commands/node/config/NodeConfigTest.java | 17 +-
.../internal/cli/commands/sql/SqlCommandTest.java | 2 +-
.../client/handler/ItClientHandlerMetricsTest.java | 4 +-
.../ignite/client/handler/ItClientHandlerTest.java | 6 +-
.../apache/ignite/client/handler/TestServer.java | 6 +-
.../ignite/client/handler/ClientHandlerModule.java | 22 +-
.../handler/ClientInboundMessageHandler.java | 25 +-
.../apache/ignite/client/handler/ClusterInfo.java} | 31 +-
.../ClientComputeExecuteMapReduceRequest.java | 9 +-
.../ignite/internal/client/ProtocolContext.java | 28 +-
.../ignite/internal/client/ReliableChannel.java | 8 +-
.../ignite/internal/client/TcpClientChannel.java | 16 +-
.../internal/client/compute/ClientCompute.java | 32 +-
.../client/compute/ClientTaskExecution.java | 6 +-
.../ignite/client/TestClientHandlerModule.java | 12 +-
.../java/org/apache/ignite/client/TestServer.java | 7 +-
.../apache/ignite/client/fakes/FakeCompute.java | 76 +--
modules/cluster-management/build.gradle | 5 +
.../management/ClusterManagementGroupManager.java | 81 +++-
.../internal/cluster/management/ClusterState.java | 26 +
.../network/messages/CmgInitMessage.java | 2 +
.../raft/ClusterStateStorageManager.java | 2 +-
.../ClusterManagementGroupManagerTest.java | 2 +
.../management/BaseItClusterManagementTest.java | 13 +-
.../cluster/management/ClusterIdHolder.java | 0
.../internal/cluster/management/MockNode.java | 2 +
.../internal/compute/TaskExecutionWrapper.java | 12 +-
.../compute/task/DelegatingTaskExecution.java | 11 +-
.../compute/task/TaskExecutionInternal.java | 16 +-
modules/core/build.gradle | 2 +
.../ignite/internal/hlc/HybridClockImpl.java | 2 +-
.../ignite/internal/util/CompletableFutures.java | 2 +-
.../internal/util/VersatileReadWriteLock.java | 8 +-
.../hlc/benchmarks/HybridClockBenchmark.java | 94 ++++
modules/distribution-zones/build.gradle | 1 +
...niteDistributionZoneManagerNodeRestartTest.java | 4 +-
.../distributionzones/DistributionZoneManager.java | 7 +-
modules/low-watermark/build.gradle | 1 -
modules/metastorage/build.gradle | 1 +
.../ItMetaStorageMultipleNodesAbstractTest.java | 2 +
.../impl/ItMetaStorageServicePersistenceTest.java | 5 +-
.../metastorage/impl/ItMetaStorageWatchTest.java | 2 +
.../metastorage/impl/MetaStorageManagerImpl.java | 2 +-
.../ignite/internal/network/StaticNodeFinder.java | 52 +-
.../internal/network/StaticNodeFinderMain.java | 53 ++
.../internal/network/StaticNodeFinderTest.java | 170 +++++++
.../persistence/PersistentPageMemory.java | 57 ++-
.../checkpoint/CheckpointDirtyPages.java | 8 +
.../checkpoint/CheckpointPagesWriter.java | 128 ++++-
.../checkpoint/CheckpointPagesWriterFactory.java | 4 +
.../persistence/checkpoint/CheckpointWorkflow.java | 2 +
.../persistence/checkpoint/Checkpointer.java | 4 +
.../RandomLruPageReplacementPolicy.java | 1 +
.../checkpoint/CheckpointPagesWriterTest.java | 8 +-
modules/partition-replicator/build.gradle | 1 +
.../replicator/ItReplicaLifecycleTest.java | 72 ++-
.../replicator/LocalPartitionReplicaEvent.java} | 23 +-
.../PartitionReplicaEventParameters.java} | 31 +-
.../PartitionReplicaLifecycleManager.java | 125 ++++-
.../replicator/ZonePartitionReplicaListener.java | 11 +
.../ignite/client/detail/cluster_connection.cpp | 21 +-
.../cpp/ignite/client/detail/cluster_connection.h | 4 +-
.../platforms/cpp/ignite/odbc/query/data_query.cpp | 11 +-
.../platforms/cpp/ignite/odbc/query/data_query.h | 14 +
modules/platforms/cpp/ignite/protocol/messages.cpp | 13 +-
.../cpp/ignite/protocol/protocol_context.h | 18 +-
.../dotnet/Apache.Ignite.Tests/FakeServer.cs | 1 +
.../dotnet/Apache.Ignite.Tests/MetricsTests.cs | 6 +-
.../Apache.Ignite/Internal/ClientFailoverSocket.cs | 5 +-
.../dotnet/Apache.Ignite/Internal/ClientSocket.cs | 15 +-
.../Apache.Ignite/Internal/Compute/Compute.cs | 3 +-
.../Apache.Ignite/Internal/ConnectionContext.cs | 13 +-
modules/platforms/python/cpp_module/CMakeLists.txt | 3 +
modules/platforms/python/cpp_module/module.cpp | 131 ++---
.../platforms/python/cpp_module/py_connection.cpp | 6 +-
modules/platforms/python/cpp_module/py_cursor.cpp | 143 +++++-
modules/platforms/python/pyignite3/__init__.py | 128 +++--
modules/platforms/python/setup.py | 2 +-
modules/platforms/python/tests/test_execute.py | 6 +-
.../platforms/python/tests/test_fetch_constants.py | 188 ++++++++
modules/platforms/python/tests/test_fetch_table.py | 193 ++++++++
modules/platforms/python/tox.ini | 30 ++
.../ignite/internal/replicator/ReplicaManager.java | 77 ++-
modules/runner/build.gradle | 3 +
.../ItDistributedConfigurationPropertiesTest.java | 2 +
.../ItDistributedConfigurationStorageTest.java | 2 +
.../runner/app/ItIgniteNodeRestartTest.java | 6 +-
.../apache/ignite/internal/runner/app/Jobs.java | 62 ++-
.../client/ItThinClientComputeMarshallingTest.java | 55 ++-
.../org/apache/ignite/internal/app/IgniteImpl.java | 53 +-
.../ignite/internal/app/IgniteServerImpl.java | 50 +-
.../java/org/apache/ignite/internal/Cluster.java | 11 +-
.../configuration/GcConfigurationSchema.java | 3 +
.../authentication/AuthenticationManagerImpl.java | 43 +-
.../authentication/basic/BasicAuthenticator.java | 17 +-
.../AuthenticationManagerImplTest.java | 30 +-
.../authentication/UserDetailsMatcher.java} | 30 +-
.../basic/BasicAuthenticatorTest.java | 50 +-
.../internal/sql/engine/ItDataTypesTest.java | 6 +-
.../integrationTest/sql/cast/test_cast_bigint.test | 12 +-
.../sql/cast/test_cast_decimal.test | 32 +-
.../sql/engine/exec/exp/IgniteSqlFunctions.java | 23 +-
.../exec/mapping/largecluster/AbstractTarget.java | 2 +-
.../exec/mapping/smallcluster/AbstractTarget.java | 2 +-
.../internal/sql/engine/externalize/RelJson.java | 8 +
.../sql/engine/prepare/IgniteSqlValidator.java | 41 --
.../sql/engine/prepare/IgniteTypeCoercion.java | 8 -
.../sql/engine/prepare/PrepareServiceImpl.java | 93 +++-
.../mapping/ExecutionTargetFactorySelfTest.java | 4 +-
.../datatypes/NumericCaseTypeCoercionTest.java | 5 +-
.../sql/engine/prepare/PrepareServiceImplTest.java | 43 +-
modules/system-disaster-recovery-api/README.md | 3 +
.../build.gradle | 17 +-
.../system/message/ResetClusterMessage.java} | 18 +-
.../SystemDisasterRecoveryMessageGroup.java} | 24 +-
.../system/storage/ClusterResetStorage.java} | 29 +-
modules/system-disaster-recovery/README.md | 3 +
.../build.gradle | 28 +-
.../disaster/system/ItCmgDisasterRecoveryTest.java | 375 +++++++++++++++
.../disaster/system}/ClusterIdService.java | 46 +-
.../disaster/system/ClusterResetException.java} | 23 +-
.../internal/disaster/system/ServerRestarter.java} | 24 +-
.../system/SystemDisasterRecoveryManager.java | 58 +++
.../system/SystemDisasterRecoveryManagerImpl.java | 320 +++++++++++++
.../system/SystemDisasterRecoveryStorage.java | 82 ++++
.../SystemDisasterRecoveryManagerImplTest.java | 533 +++++++++++++++++++++
modules/table/build.gradle | 1 +
...ItTxDistributedTestThreeNodesThreeReplicas.java | 4 +-
.../rebalance/ItRebalanceDistributedTest.java | 2 +
.../internal/table/distributed/TableManager.java | 175 +++++--
.../replicator/PartitionReplicaListener.java | 42 +-
.../apache/ignite/distributed/ItTxTestCluster.java | 58 ++-
packaging/docker/cluster.conf | 10 +-
settings.gradle | 4 +
152 files changed, 4463 insertions(+), 820 deletions(-)
create mode 100644
modules/cli/src/main/java/org/apache/ignite/internal/cli/commands/CommandConstants.java
copy
modules/{network/src/main/java/org/apache/ignite/internal/network/StaticNodeFinder.java
=>
client-handler/src/main/java/org/apache/ignite/client/handler/ClusterInfo.java}
(56%)
rename modules/cluster-management/src/{main =>
testFixtures}/java/org/apache/ignite/internal/cluster/management/ClusterIdHolder.java
(100%)
create mode 100644
modules/core/src/test/java/org/apache/ignite/internal/hlc/benchmarks/HybridClockBenchmark.java
create mode 100644
modules/network/src/test/java/org/apache/ignite/internal/network/StaticNodeFinderMain.java
create mode 100644
modules/network/src/test/java/org/apache/ignite/internal/network/StaticNodeFinderTest.java
copy
modules/{cli/src/main/java/org/apache/ignite/internal/cli/commands/sql/SqlReplTopLevelCliCommand.java
=>
partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/LocalPartitionReplicaEvent.java}
(60%)
copy
modules/{network/src/main/java/org/apache/ignite/internal/network/StaticNodeFinder.java
=>
partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/PartitionReplicaEventParameters.java}
(52%)
create mode 100644 modules/platforms/python/tests/test_fetch_constants.py
create mode 100644 modules/platforms/python/tests/test_fetch_table.py
create mode 100644 modules/platforms/python/tox.ini
copy
modules/{network/src/main/java/org/apache/ignite/internal/network/StaticNodeFinder.java
=>
security/src/test/java/org/apache/ignite/internal/security/authentication/UserDetailsMatcher.java}
(52%)
create mode 100644 modules/system-disaster-recovery-api/README.md
copy modules/{low-watermark => system-disaster-recovery-api}/build.gradle (63%)
copy
modules/{cluster-management/src/main/java/org/apache/ignite/internal/cluster/management/network/messages/CmgInitMessage.java
=>
system-disaster-recovery-api/src/main/java/org/apache/ignite/internal/disaster/system/message/ResetClusterMessage.java}
(71%)
copy
modules/{cli/src/main/java/org/apache/ignite/internal/cli/commands/sql/SqlReplTopLevelCliCommand.java
=>
system-disaster-recovery-api/src/main/java/org/apache/ignite/internal/disaster/system/message/SystemDisasterRecoveryMessageGroup.java}
(60%)
copy
modules/{cli/src/main/java/org/apache/ignite/internal/cli/commands/sql/SqlReplTopLevelCliCommand.java
=>
system-disaster-recovery-api/src/main/java/org/apache/ignite/internal/disaster/system/storage/ClusterResetStorage.java}
(60%)
create mode 100644 modules/system-disaster-recovery/README.md
copy modules/{low-watermark => system-disaster-recovery}/build.gradle (59%)
create mode 100644
modules/system-disaster-recovery/src/integrationTest/java/org/apache/ignite/internal/disaster/system/ItCmgDisasterRecoveryTest.java
rename
modules/{cluster-management/src/main/java/org/apache/ignite/internal/cluster/management
=>
system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system}/ClusterIdService.java
(53%)
copy
modules/{cli/src/main/java/org/apache/ignite/internal/cli/commands/sql/SqlReplTopLevelCliCommand.java
=>
system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system/ClusterResetException.java}
(60%)
copy
modules/{cli/src/main/java/org/apache/ignite/internal/cli/commands/sql/SqlReplTopLevelCliCommand.java
=>
system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system/ServerRestarter.java}
(60%)
create mode 100644
modules/system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system/SystemDisasterRecoveryManager.java
create mode 100644
modules/system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system/SystemDisasterRecoveryManagerImpl.java
create mode 100644
modules/system-disaster-recovery/src/main/java/org/apache/ignite/internal/disaster/system/SystemDisasterRecoveryStorage.java
create mode 100644
modules/system-disaster-recovery/src/test/java/org/apache/ignite/internal/disaster/system/SystemDisasterRecoveryManagerImplTest.java