This is an automated email from the ASF dual-hosted git repository.
hubcio pushed a change to branch parallel-log-index-fsync
in repository https://gitbox.apache.org/repos/asf/iggy.git
omit 44230dc23 fix(server): stop index-anchored recovery from skipping
damage
omit a1dac8b36 fix(server): yield during the index anchor search over a
floored index
omit a6df96fc5 refactor(partitions): narrow segment writer save methods to
the crate
omit 91f26c3ca fix(bench): backfill latency extremes only when all three
are absent
omit 2fe00541d feat(partitions): cache the active segment's read descriptor
omit 9b5ccaf1d feat(partitions): persist segment log and sparse index
concurrently
add 996ac04c8 fix(cluster): recover writes after a fast partition primary
rejoin (#3987)
add b1af0b25e feat(partitions): persist segment log and sparse index
concurrently
add 561f5810c feat(partitions): cache the active segment's read descriptor
add 13171b212 fix(bench): backfill latency extremes only when all three
are absent
add e8df42170 refactor(partitions): narrow segment writer save methods to
the crate
add 92a6ac730 fix(server): yield during the index anchor search over a
floored index
add a48b40411 fix(server): stop index-anchored recovery from skipping
damage
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 (44230dc23)
\
N -- N -- N refs/heads/parallel-log-index-fsync (a48b40411)
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:
Cargo.lock | 20 +-
Cargo.toml | 8 +-
bdd/python/uv.lock | 2 +-
bdd/rust/tests/steps/streams.rs | 22 +-
core/ai/mcp/Cargo.toml | 2 +-
core/bench/Cargo.toml | 2 +-
core/binary_protocol/Cargo.toml | 2 +-
core/cli/Cargo.toml | 2 +-
core/common/Cargo.toml | 2 +-
core/connectors/runtime/Cargo.toml | 2 +-
.../src/harness/handle/client_builder.rs | 61 ++-
.../tests/cluster/fast_primary_rejoin.rs | 472 +++++++++++++++++++
core/integration/tests/cluster/mod.rs | 1 +
core/integration/tests/server/mod.rs | 2 +-
core/partitions/src/iggy_partition.rs | 323 +++++++++----
core/partitions/src/journal.rs | 14 +
core/partitions/src/types.rs | 16 +-
core/sdk/Cargo.toml | 2 +-
core/sdk/src/leader_aware.rs | 521 +++++++++++++++++++++
core/sdk/src/quic/quic_client.rs | 370 +++++++++++++--
core/sdk/src/tcp/tcp_client.rs | 373 ++++++++++++---
core/sdk/src/vsr.rs | 35 +-
core/sdk/src/websocket/websocket_client.rs | 423 +++++++++++++++--
core/server/Cargo.toml | 2 +-
core/server/src/http.rs | 37 +-
core/server/src/http/forward.rs | 201 +++++++-
core/server/src/partition_reconciler.rs | 4 +-
core/shard/src/lib.rs | 151 +++++-
examples/node/package-lock.json | 2 +-
examples/python/uv.lock | 2 +-
foreign/cpp/Cargo.toml | 2 +-
foreign/cpp/MODULE.bazel | 2 +-
.../Implementations/TcpMessageStream.Vsr.cs | 85 +++-
.../IggyClient/Implementations/TcpMessageStream.cs | 17 +-
foreign/csharp/Iggy_SDK/Iggy_SDK.csproj | 2 +-
.../VsrTests/EndpointFailoverTests.cs | 128 ++++-
foreign/go/client/tcp/tcp_core.go | 47 +-
foreign/go/client/tcp/tcp_failover_test.go | 61 +++
foreign/go/client/tcp/tcp_session_management.go | 70 +++
foreign/go/contracts/version.go | 2 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 85 ++--
.../iggy/client/async/tcp/AsyncTcpConnection.java | 55 ++-
.../iggy/client/async/tcp/LeaderAwareness.java | 33 ++
.../AsyncIggyTcpClientTransientFailoverTest.java | 126 ++++-
.../iggy/client/async/tcp/LeaderAwarenessTest.java | 42 ++
foreign/node/package-lock.json | 4 +-
foreign/node/package.json | 2 +-
foreign/node/src/client/client.connection.test.ts | 27 ++
foreign/node/src/client/client.connection.ts | 32 ++
foreign/node/src/client/client.socket.test.ts | 139 ++++++
foreign/node/src/client/client.socket.ts | 98 +++-
foreign/php/Cargo.toml | 2 +-
foreign/python/Cargo.toml | 4 +-
foreign/python/pyproject.toml | 2 +-
foreign/python/uv.lock | 2 +-
55 files changed, 3740 insertions(+), 405 deletions(-)
create mode 100644 core/integration/tests/cluster/fast_primary_rejoin.rs