You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iggy.apache.org by hg...@apache.org on 2026/10/18 15:34:25 UTC
(iggy) branch feat/sdk-partition-routing updated (526938336 -> 16676ce82)
This is an automated email from the ASF dual-hosted git repository.
hubcio pushed a change to branch feat/sdk-partition-routing
in repository https://gitbox.apache.org/repos/asf/iggy.git
from 526938336 Merge branch 'master' into feat/sdk-partition-routing
add c771d1e38 fix(sdk): keep proved replay outcomes readable for their owner
add ff4509c8d fix(connectors): resolve an uncertain source chunk before resending
add bb87ca3ff fix(sdk): refresh stored sign-in on every committed credential change
add 9da32fa2a fix(sdk): redial a single node through its configured endpoint
add d2acb7bc5 fix(sdk): recover links after an outage longer than the retry budget
add 7f3112067 fix(sdk): keep a sent mutation uncertain after an eviction
add bdf358a8f fix(sdk): recover a lost session after the retry budget runs out
add c22b98843 fix(metadata): keep the commit proof on a refused PAT create replay
add 51cb66a65 fix(metadata): check the PAT cap after dedup so replays prove commits
add 4243f24c3 fix(node): redial a single node at its configured endpoint
add af5327447 fix(node): report an evicted written mutation as uncertain
add 4fbee7873 fix(node): restart replica links that used their retry budget
add 94e50b523 fix(node): keep proved replay outcomes readable for their owner
add 915debb61 test(node): check the sign-in after a resolve proves a password change
add 5d8a0783a fix(node): bind the same session again after a stale client eviction
add 2670169ea fix(node): end a resolve that times out behind a replay as uncertain
add 75e98152d docs(sdk): document proved outcomes in the PHP, C++ and Python SDKs
add 46aa40827 fix(go): keep an uncertain mutation uncertain after a fence change
add 18d151b4f fix(go): keep the lane of a running replay after an abandon
add b88bc9cff fix(go): fail unsent calls with 58 while the session recovers
add 9062a6c3f fix(go): keep proved replay outcomes readable for their owner
add 9c2851681 fix(go): refresh the sign-in from every committed credential change
add 2855863c7 fix(go): keep the session and the write after a stale client eviction
add 1af369a52 fix(csharp): stop consumer polls from resolving another owner's write
add 7d8701043 fix(csharp): refresh stored sign-in on every committed credential change
add 518013772 fix(csharp): keep proved replay outcomes readable for their owner
add a1eafd837 fix(csharp): keep the lane of a running replay after an abandon
add 6a179c01b fix(csharp): keep the session after a stale client eviction
add 98219e927 fix(csharp): restart replica links that used their retry budget
add ab86a2733 fix(csharp): redial a single node at its configured endpoint
add 45009447b fix(node): record a committed stale client reply as a proved outcome
add b399c0468 fix(csharp): drop the session after a committed stale client result
add 09653b725 fix(sdk): stop retrying a StaleClient reply on the same link
add 9f830592b fix(go): redial a single node at its configured endpoint
add 4606b5ab6 fix(go): retry an automatic sign-in that lost its link
add 7c54c4f85 fix(go): end a pending automatic sign-in when the caller signs in
add 1f3c366f1 fix(go): end the recovery when the caller starts to sign in
add f1a3a2ccf fix(go): drop the session after a committed stale client result
add d9cc709c7 fix(node): keep a live session after a denied stale client reply
add 8d0b0b880 fix(sdk): keep a consumer polling after StaleClient or Disconnected
add 2ac83b6a9 fix(csharp): keep a live session after a stale client refusal
add b0e5626f6 fix(go): keep a live session after a stale client deny
add b0078b9f0 fix(node): keep a consumer stream polling after a quiet rebind
add 68b9df96e fix(node): keep a consumer stream polling through a total outage
add c9463cb86 fix(csharp): keep a consumer polling after an unknown poll outcome
add 409db7171 fix(node): reject a consumer stream at creation when sign-in fails
add a23b7d2e0 fix(java): keep a mutation uncertain after a stale client eviction
add 1c9e9f64e fix(java): close the link on a malformed or unproved reply
add 940ef904b fix(java): release a replay frame when its request id cannot renew
add fe3e14a94 fix(java): keep proved replay outcomes readable for their owner
add e4203ad00 fix(java): keep the lane of a running replay after an abandon
add c3ba074f3 fix(java): keep a replay retained when a cancel races its proof
add 3b86a6484 fix(java): keep a sent mutation uncertain after an eviction
add 2a4172477 fix(java): dial a single node at its configured endpoint
add de0dc79f3 fix(java): keep a sign-out in effect when credentials are configured
add e8cacff3e fix(java): restore a lost session after the redial budget runs out
add cd9ccd6f9 fix(java): start a new session for an explicit sign-in
add fbf1ac8d6 fix(java): stop retrying a status 30 or 40 reply as a lost link
add 6a9fd0295 fix(java): close the link that carried a status 30 reply
add 3463d5d18 fix(java): keep the session when a stale eviction ends its bind
add 833035b5f fix(java): end the session when the poll attach is refused
add 24d86520b fix(java): refresh the sign-in from every committed credential change
add 08f44f3d7 fix(java): end a waiting automatic sign-in when the caller signs in
add 16676ce82 fix(java): share the login of a session with its poll links
No new revisions were added by this update.
Summary of changes:
core/common/src/traits/binary_impls/users.rs | 4 -
core/common/src/traits/binary_transport.rs | 12 -
core/common/src/traits/client.rs | 20 +-
.../quic_config/quic_client_reconnection_config.rs | 7 +
.../tcp_config/tcp_client_reconnection_config.rs | 6 +-
.../websocket_client_reconnection_config.rs | 10 +-
core/connectors/runtime/src/main.rs | 2 +
core/connectors/runtime/src/manager/source.rs | 3 +-
core/connectors/runtime/src/source.rs | 173 ++-
core/connectors/sdk/README.md | 2 +
core/consensus/src/plane_helpers.rs | 5 +-
core/metadata/src/impls/metadata.rs | 316 ++++-
core/metadata/src/stm/user.rs | 2 +-
core/sdk/README.md | 17 +-
core/sdk/src/binary/mod.rs | 16 -
core/sdk/src/clients/consumer.rs | 242 +++-
core/sdk/src/clients/mod.rs | 3 +-
core/sdk/src/clients/producer.rs | 56 +-
core/sdk/src/clients/producer_config.rs | 2 +-
core/sdk/src/clients/producer_error_callback.rs | 6 +
core/sdk/src/driver.rs | 433 ++++++-
core/sdk/src/links/fake_cluster.rs | 72 +-
core/sdk/src/links/mod.rs | 21 +-
core/sdk/src/links/replicas.rs | 300 ++++-
core/sdk/src/session_owner.rs | 70 +-
core/sdk/src/session_owner/lanes.rs | 101 +-
core/sdk/src/tcp/tcp_client.rs | 335 +++++-
core/server/src/boot/listeners.rs | 1 -
core/server/src/boot/mod.rs | 1 +
core/server/src/boot/recovery.rs | 1 -
core/server/src/dispatch/failure.rs | 3 -
core/server/src/dispatch/host.rs | 4 -
core/server/src/dispatch/mod.rs | 153 ++-
core/server/src/dispatch/submit.rs | 2 +-
core/server/src/http.rs | 2 -
core/server/src/http/handlers.rs | 11 +-
core/server/src/http/reads.rs | 92 +-
core/server/src/http/state.rs | 4 -
core/server/src/http/submit.rs | 23 +-
core/server/src/pat.rs | 137 +--
core/server/src/rewrite.rs | 42 +-
core/simulator/src/replica.rs | 6 +-
core/simulator/src/workload/mod.rs | 9 +
foreign/cpp/README.md | 3 +
foreign/cpp/include/iggy.hpp | 3 +
.../Iggy_SDK.Tests.Integration/HeartbeatTests.cs | 34 +-
.../Configuration/IggyClientConfigurator.cs | 17 +-
.../Iggy_SDK/Configuration/ReconnectionSettings.cs | 4 +-
.../Iggy_SDK/Consumers/IggyConsumer.Rented.cs | 25 +-
foreign/csharp/Iggy_SDK/Consumers/IggyConsumer.cs | 43 +-
.../Exceptions/VsrOperationNotRetainedException.cs | 9 +-
.../Exceptions/VsrSessionEvictedException.cs | 5 +-
foreign/csharp/Iggy_SDK/IggyClient/IIggyClient.cs | 17 +-
.../TcpMessageStream.PollRouting.cs | 59 +-
.../TcpMessageStream.ReplicaLinks.cs | 65 +-
.../IggyClient/Implementations/TcpMessageStream.cs | 6 +-
.../Publishers/BackgroundMessageProcessor.cs | 3 +-
foreign/csharp/Iggy_SDK/Vsr/MutationLanes.cs | 125 +-
foreign/csharp/Iggy_SDK/Vsr/VsrConnection.cs | 17 +-
.../ConsumerTests/PartitionIncarnationTests.cs | 90 +-
.../ConsumerTests/RentedConsumerTests.cs | 110 +-
.../VsrTests/EndpointFailoverTests.cs | 2 +-
.../Iggy_SDK_Tests/VsrTests/MutationLaneTests.cs | 30 +
.../Iggy_SDK_Tests/VsrTests/NativeRecoveryTests.cs | 534 ++++++++-
.../Iggy_SDK_Tests/VsrTests/PrimaryPollingTests.cs | 170 ++-
.../Iggy_SDK_Tests/VsrTests/ReplicaLinkTests.cs | 298 +++++
foreign/csharp/README.md | 42 +-
foreign/go/README.md | 74 +-
foreign/go/client/tcp/tcp_connect_test.go | 11 +-
foreign/go/client/tcp/tcp_core.go | 11 +-
foreign/go/client/tcp/tcp_core_test.go | 178 ++-
foreign/go/client/tcp/tcp_driver.go | 104 +-
foreign/go/client/tcp/tcp_driver_test.go | 329 +++++-
foreign/go/client/tcp/tcp_failover_test.go | 255 +++-
foreign/go/client/tcp/tcp_group_polling.go | 5 +-
foreign/go/client/tcp/tcp_group_polling_test.go | 70 ++
foreign/go/client/tcp/tcp_link.go | 9 +-
foreign/go/client/tcp/tcp_link_test.go | 71 +-
foreign/go/client/tcp/tcp_pending.go | 50 +-
foreign/go/client/tcp/tcp_poll_routing.go | 3 +-
foreign/go/client/tcp/tcp_poll_routing_test.go | 36 +-
foreign/go/client/tcp/tcp_replicas.go | 6 +
foreign/go/client/tcp/tcp_replicas_test.go | 260 ++++
.../go/client/tcp/tcp_session_credentials_test.go | 201 ++++
foreign/go/client/tcp/tcp_session_management.go | 64 +-
foreign/go/client/tcp/tcp_testing_test.go | 56 +
foreign/go/client/tcp/tcp_user_management.go | 72 +-
foreign/go/contracts/client.go | 7 +
foreign/java/README.md | 79 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 242 +++-
.../async/tcp/AsyncIggyTcpClientBuilder.java | 14 +-
.../iggy/client/async/tcp/AsyncTcpConnection.java | 347 ++++--
.../iggy/client/async/tcp/LeaderAwareness.java | 22 +-
.../iggy/client/async/tcp/LoginRoutingHook.java | 3 -
.../apache/iggy/client/async/tcp/PollRouter.java | 135 ++-
.../iggy/client/async/tcp/UsersTcpClient.java | 18 +-
.../client/async/tcp/vsr/ConsensusSession.java | 138 ++-
.../client/async/tcp/vsr/VsrResponseHandler.java | 21 +-
.../iggy/client/blocking/tcp/IggyTcpClient.java | 11 +-
.../client/blocking/tcp/IggyTcpClientBuilder.java | 8 +-
.../java/org/apache/iggy/config/RetryPolicy.java | 10 +-
.../AsyncIggyTcpClientEndpointFailoverTest.java | 762 +++++++++++-
.../tcp/AsyncIggyTcpClientEventLoopGroupTest.java | 2 +-
.../async/tcp/AsyncIggyTcpClientRecoveryTest.java | 1240 +++++++++++++++++++-
.../AsyncIggyTcpClientTransientFailoverTest.java | 34 +-
.../tcp/AsyncTcpConnectionConcurrencyTest.java | 165 ++-
.../iggy/client/async/tcp/PollRouterTest.java | 9 +-
.../client/async/tcp/vsr/ConsensusSessionTest.java | 188 ++-
.../async/tcp/vsr/VsrResponseHandlerTest.java | 61 +-
foreign/node/README.md | 76 +-
foreign/node/src/client/client.connection.ts | 17 +-
foreign/node/src/client/client.operation.test.ts | 23 +-
foreign/node/src/client/client.operation.ts | 92 +-
foreign/node/src/client/client.socket.test.ts | 843 ++++++++++++-
foreign/node/src/client/client.socket.ts | 91 +-
foreign/node/src/client/client.type.ts | 24 +-
foreign/node/src/stream/consumer-stream.ts | 85 +-
foreign/php/README.md | 4 +-
foreign/python/README.md | 3 +
foreign/python/apache_iggy.pyi | 9 +
foreign/python/src/config.rs | 9 +
121 files changed, 9790 insertions(+), 1305 deletions(-)
create mode 100644 foreign/csharp/Iggy_SDK_Tests/VsrTests/ReplicaLinkTests.cs