This is an automated email from the ASF dual-hosted git repository.
lukaszzborek pushed a change to branch dotnet-vsr-cleanup
in repository https://gitbox.apache.org/repos/asf/iggy.git
from ee5ad3bda Merge branch 'master' into dotnet-vsr-cleanup
add a7c320a81 refactor(csharp): enhance session epoch handling and clean
up connection management
add 0a1758c63 fix(server): preserve producer batches across replication
(#3859)
add b7b62a088 chore(deps): Bump
org.apache.httpcomponents.client5:httpclient5 from 5.6.2 to 5.6.3 (#3865)
add f14e5e6e9 ci: make Rust image matching portable (#3871)
add 550ff8660 chore(deps): Bump rules_rust from 0.72.0 to 0.73.0 in
/foreign/cpp in the cpp group across 1 directory (#3863)
add f4a9aac56 chore(deps): Bump the node group across 2 directories with 2
updates (#3861)
add cb0818c1c chore(deps): Bump github.com/cucumber/godog from 0.15.1 to
0.16.0 in /bdd/go in the go group across 1 directory (#3862)
add 9b1938b81 chore(deps): Bump the web group across 1 directory with 2
updates (#3864)
add 7dee4d8d2 chore(deps): Bump the github-actions group with 2 updates
(#3868)
add cde4fe996 Merge branch 'master' into dotnet-vsr-cleanup
add fb9307e01 feat(server)!: auth-gate cluster metadata, forward register
to primary (#3872)
add aca992a96 Merge branch 'master' into dotnet-vsr-cleanup
add 6ce3fe0dd refactor(csharp): improve TCP message handling and
coalescing logic
No new revisions were added by this update.
Summary of changes:
.github/workflows/_common.yml | 4 +-
.github/workflows/coverage-baseline.yml | 4 +-
.github/workflows/post-merge.yml | 2 +-
Cargo.lock | 62 +-
Cargo.toml | 10 +-
bdd/go/go.mod | 9 +-
bdd/go/go.sum | 40 +-
bdd/python/uv.lock | 2 +-
core/ai/mcp/Cargo.toml | 2 +-
core/bench/Cargo.toml | 2 +-
core/bench/dashboard/frontend/Cargo.toml | 2 +-
core/bench/dashboard/server/Cargo.toml | 2 +-
core/bench/report/Cargo.toml | 2 +-
core/binary_protocol/Cargo.toml | 2 +-
core/binary_protocol/src/consensus/command.rs | 21 +-
core/binary_protocol/src/consensus/header.rs | 777 +++++++++++-
core/binary_protocol/src/consensus/mod.rs | 4 +-
core/binary_protocol/src/lib.rs | 15 +-
core/cli/Cargo.toml | 2 +-
core/common/Cargo.toml | 2 +-
core/common/src/traits/cluster_client.rs | 3 +-
core/configs/src/common/defaults.rs | 1 +
core/configs/src/common/displays.rs | 4 +-
core/configs/src/common/system.rs | 2 +
core/connectors/runtime/Cargo.toml | 2 +-
core/connectors/sdk/Cargo.toml | 2 +-
core/connectors/sinks/clickhouse_sink/Cargo.toml | 2 +-
core/connectors/sinks/delta_sink/Cargo.toml | 2 +-
core/connectors/sinks/doris_sink/Cargo.toml | 2 +-
.../connectors/sinks/elasticsearch_sink/Cargo.toml | 2 +-
core/connectors/sinks/http_sink/Cargo.toml | 2 +-
core/connectors/sinks/iceberg_sink/Cargo.toml | 2 +-
core/connectors/sinks/influxdb_sink/Cargo.toml | 2 +-
core/connectors/sinks/meilisearch_sink/Cargo.toml | 2 +-
core/connectors/sinks/mongodb_sink/Cargo.toml | 2 +-
core/connectors/sinks/postgres_sink/Cargo.toml | 2 +-
core/connectors/sinks/quickwit_sink/Cargo.toml | 2 +-
core/connectors/sinks/s3_sink/Cargo.toml | 2 +-
core/connectors/sinks/stdout_sink/Cargo.toml | 2 +-
core/connectors/sinks/surrealdb_sink/Cargo.toml | 2 +-
.../sources/elasticsearch_source/Cargo.toml | 2 +-
core/connectors/sources/influxdb_source/Cargo.toml | 2 +-
core/connectors/sources/postgres_source/Cargo.toml | 2 +-
core/connectors/sources/random_source/Cargo.toml | 2 +-
core/consensus/src/plane_helpers.rs | 276 ++++-
core/integration/src/harness/handle/common.rs | 30 +
core/integration/src/harness/handle/server.rs | 17 +
.../tests/cluster/client_table_restart.rs | 5 +
core/integration/tests/cluster/mod.rs | 1 +
.../tests/cluster/register_forwarding.rs | 382 ++++++
core/integration/tests/server/legacy_login_vsr.rs | 6 +-
.../server/scenarios/authentication_scenario.rs | 9 +-
core/metadata/src/impls/metadata.rs | 19 +-
core/partitions/Cargo.toml | 4 +
core/partitions/src/iggy_partition.rs | 530 ++++++---
core/partitions/src/messages_writer.rs | 89 +-
core/partitions/src/state_transfer.rs | 1 +
core/partitions/src/types.rs | 2 +
core/sdk/Cargo.toml | 2 +-
core/sdk/src/leader_aware.rs | 38 +
core/sdk/src/quic/quic_client.rs | 34 +-
core/sdk/src/tcp/tcp_client.rs | 34 +-
core/sdk/src/websocket/websocket_client.rs | 32 +-
core/server/Cargo.toml | 2 +-
core/server/config.toml | 2 +
core/server/src/auth.rs | 102 +-
core/server/src/bootstrap.rs | 87 +-
core/server/src/dispatch.rs | 1246 ++++++++++++++++++--
core/server/src/dispatch/authz.rs | 56 +-
core/server/src/http/state.rs | 80 +-
core/server/src/partition_helpers.rs | 5 +
core/server/src/partition_reconciler.rs | 1 +
core/server/src/server_error.rs | 13 +
core/server/src/session_manager.rs | 2 +-
core/server_common/src/consensus_message.rs | 84 +-
core/server_common/src/send_messages2.rs | 130 +-
core/shard/src/lib.rs | 324 +++--
core/shard/src/router.rs | 24 +-
core/simulator/src/deps.rs | 17 +-
core/simulator/src/executor/mod.rs | 47 +-
core/simulator/src/lib.rs | 129 ++
core/simulator/src/replica.rs | 1 +
examples/node/package-lock.json | 12 +-
examples/node/package.json | 2 +-
examples/python/uv.lock | 2 +-
foreign/cpp/MODULE.bazel | 2 +-
foreign/cpp/MODULE.bazel.lock | 4 +-
foreign/cpp/tests/e2e/client.cpp | 18 +-
.../StepDefinitions/LeaderRedirectionSteps.cs | 25 +-
.../ClusterRedirectionTests.cs | 20 +-
.../IggyTlsConnectionTests.cs | 7 +-
foreign/csharp/Iggy_SDK/Consumers/IggyConsumer.cs | 46 +-
.../Implementations/TcpMessageStream.Vsr.cs | 54 +-
.../IggyClient/Implementations/TcpMessageStream.cs | 23 +-
foreign/csharp/Iggy_SDK/Iggy_SDK.csproj | 2 -
.../csharp/Iggy_SDK/Vsr/ISessionEpochProvider.cs | 8 +-
foreign/csharp/Iggy_SDK/Vsr/VsrConnection.cs | 52 +-
.../ConsumerTests/ConsumerSessionEpochTests.cs | 13 +-
.../UtilityTests/SlicedMemoryOwnerTests.cs | 88 --
foreign/go/client/tcp/tcp_connect_test.go | 123 +-
foreign/go/client/tcp/tcp_core.go | 56 +-
foreign/go/client/tcp/tcp_core_review_test.go | 20 +-
foreign/go/client/tcp/tcp_session_management.go | 74 +-
foreign/go/contracts/version.go | 2 +-
foreign/go/internal/util/leader_aware.go | 115 +-
foreign/go/internal/util/leader_aware_test.go | 44 +
foreign/go/tests/e2e_test.go | 11 +-
foreign/java/gradle/libs.versions.toml | 2 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 60 +-
.../iggy/client/async/tcp/AsyncTcpConnection.java | 9 +-
.../client/async/AsyncConnectionPoolAuthTest.java | 9 +-
.../tcp/AsyncIggyTcpClientLoginRoutingTest.java | 13 +-
.../tcp/AsyncTcpConnectionConcurrencyTest.java | 25 +-
foreign/node/package-lock.json | 58 +-
foreign/node/package.json | 4 +-
foreign/node/src/client/client.socket.test.ts | 275 ++++-
foreign/node/src/client/client.socket.ts | 166 ++-
foreign/python/Cargo.toml | 4 +-
foreign/python/pyproject.toml | 2 +-
foreign/python/uv.lock | 2 +-
scripts/ci/sync-rustc-version.sh | 8 +-
web/package-lock.json | 136 +--
web/package.json | 6 +-
123 files changed, 5231 insertions(+), 1250 deletions(-)
create mode 100644 core/integration/tests/cluster/register_forwarding.rs
delete mode 100644
foreign/csharp/Iggy_SDK_Tests/UtilityTests/SlicedMemoryOwnerTests.cs