This is an automated email from the ASF dual-hosted git repository.
krishvishal pushed a change to branch sim-workload-faults
in repository https://gitbox.apache.org/repos/asf/iggy.git
from 7317e4f3f fix: address review comments
add 1e2d2220f fix(sdk): error callback should await shard flush on
producer shutdown (#3953)
add 5068a960a chore(deps): Bump the github-actions group across 1
directory with 2 updates (#3968)
add d7c2b6180 fix(python): read consumer metadata without the consumer
lock (#3888)
add 03f5b3034 fix(server): restore the mimalloc global allocator (#3971)
add ed59b955d chore(deps): Bump gradle from 9.6.1-jdk17 to 9.7.0-jdk17 in
/bdd/java in the docker group across 1 directory (#3972)
add 37aec0877 feat(sdk): fail over to a surviving node when the current
one dies (#3944)
add 6a1c84c39 fix(partitions): stop reserving 16 MiB per active segment
index (#3974)
add ffb186dba feat(gateways): iggy gateway for kafka listener (#3519)
add 9c6451d62 fix(consensus): keep a late retry's reply instead of
refusing it (#3945)
add 7b491c09f fix(cluster): prevent repaired prepares from rewinding WAL
parent (#3978)
add 46442ed2e Merge branch 'master' into sim-workload-faults
No new revisions were added by this update.
Summary of changes:
.github/actions/rust/pre-merge/action.yml | 38 +
.github/config/components.yml | 10 +
.github/workflows/_common.yml | 4 +-
.github/workflows/_test_examples.yml | 2 +-
.github/workflows/coverage-baseline.yml | 6 +-
.github/workflows/post-merge.yml | 2 +-
.github/workflows/pr-title.yml | 1 +
.gitignore | 1 +
Cargo.lock | 70 +
Cargo.toml | 2 +
bdd/java/Dockerfile | 2 +-
bdd/rust/tests/helpers/cluster.rs | 19 +
bdd/rust/tests/steps/leader_redirection.rs | 14 +-
.../actors/consumer/typed_benchmark_consumer.rs | 12 +-
.../traits/binary_impls/personal_access_tokens.rs | 10 +-
core/common/src/traits/binary_impls/users.rs | 14 +-
core/common/src/traits/binary_transport.rs | 24 +-
.../tcp_config/tcp_client_reconnection_config.rs | 35 +-
.../configs/src/configs_impl/typed_env_provider.rs | 13 +-
core/consensus/src/client_table.rs | 254 ++-
core/consensus/src/metadata_helpers.rs | 8 +-
core/consensus/src/plane_helpers.rs | 62 +
.../tests/cluster/client_table_adversarial.rs | 56 +-
.../tests/cluster/failover_client_continuity.rs | 47 +-
core/integration/tests/sdk/disconnect_relogin.rs | 66 +
core/integration/tests/sdk/mod.rs | 1 +
core/journal/src/prepare_journal.rs | 40 +
core/partitions/src/iggy_index_reader.rs | 3 +-
core/partitions/src/iggy_partition.rs | 125 +-
core/partitions/src/log.rs | 7 +-
core/partitions/src/poll_plan.rs | 11 +-
.../src/clients/binary_personal_access_tokens.rs | 10 +
core/sdk/src/clients/binary_users.rs | 10 +
core/sdk/src/clients/consumer.rs | 388 +++--
core/sdk/src/clients/mod.rs | 33 +
core/sdk/src/clients/producer_dispatcher.rs | 110 +-
core/sdk/src/leader_aware.rs | 314 +++-
core/sdk/src/prelude.rs | 2 +-
core/sdk/src/quic/quic_client.rs | 11 +-
core/sdk/src/tcp/tcp_client.rs | 1746 +++++++++++++++++---
core/sdk/src/vsr.rs | 2 +-
core/sdk/src/websocket/websocket_client.rs | 11 +-
core/server/src/lib.rs | 8 +
core/server/src/main.rs | 4 +
core/shard/src/lib.rs | 29 +-
core/simulator/src/lib.rs | 155 ++
.../Iggy_SDK.Tests.Integration/HeartbeatTests.cs | 31 +-
.../Implementations/TcpMessageStream.Vsr.cs | 31 +
.../IggyClient/Implementations/TcpMessageStream.cs | 229 ++-
.../Iggy_SDK_Tests/VsrTests/DialCandidatesTests.cs | 79 +
.../VsrTests/EndpointFailoverTests.cs | 576 +++++++
foreign/csharp/README.md | 27 +-
foreign/go/client/tcp/tcp_connect_test.go | 15 +-
foreign/go/client/tcp/tcp_core.go | 426 ++++-
foreign/go/client/tcp/tcp_core_review_test.go | 13 +-
foreign/go/client/tcp/tcp_failover_test.go | 750 +++++++++
.../go/client/tcp/tcp_session_credentials_test.go | 66 +
foreign/go/client/tcp/tcp_session_management.go | 81 +-
.../iggy/client/async/tcp/AsyncIggyTcpClient.java | 323 +++-
.../iggy/client/async/tcp/AsyncTcpConnection.java | 61 +-
.../iggy/client/async/tcp/LeaderAwareness.java | 76 +-
.../iggy/client/async/tcp/LoginRoutingHook.java | 6 +
.../iggy/client/async/tcp/ReconnectPlan.java | 17 +-
.../iggy/client/async/tcp/UsersTcpClient.java | 1 +
.../client/async/tcp/vsr/VsrResponseHandler.java | 11 +-
.../AsyncIggyTcpClientEndpointFailoverTest.java | 562 +++++++
.../AsyncIggyTcpClientTransientFailoverTest.java | 197 ++-
.../tcp/AsyncTcpConnectionConcurrencyTest.java | 4 +-
.../iggy/client/async/tcp/LeaderAwarenessTest.java | 99 +-
.../iggy/client/async/tcp/ReconnectPlanTest.java | 18 -
.../async/tcp/vsr/VsrResponseHandlerTest.java | 10 +-
foreign/node/src/client/client.connection.test.ts | 359 ++++
foreign/node/src/client/client.connection.ts | 262 ++-
foreign/node/src/client/client.socket.test.ts | 485 +++++-
foreign/node/src/client/client.socket.ts | 360 +++-
foreign/node/src/client/client.type.ts | 26 +-
foreign/python/apache_iggy.pyi | 31 +-
foreign/python/pyproject.toml | 4 +
foreign/python/src/client.rs | 8 +
foreign/python/src/config.rs | 19 +-
foreign/python/src/consumer.rs | 122 +-
foreign/python/tests/test_consumer_group.py | 118 ++
gateways/README.md | 9 +
{core/bench => gateways/kafka}/Cargo.toml | 57 +-
gateways/kafka/README.md | 63 +
gateways/kafka/docs/MANUAL_TESTING.md | 307 ++++
gateways/kafka/docs/SCOPE.md | 138 ++
gateways/kafka/docs/TEST_SUITE.md | 66 +
gateways/kafka/docs/kafka_api_keys_reference.md | 316 ++++
gateways/kafka/scripts/ci-wire-fixtures.sh | 57 +
gateways/kafka/src/error.rs | 45 +
.../steps/mod.rs => gateways/kafka/src/lib.rs | 12 +-
gateways/kafka/src/main.rs | 240 +++
gateways/kafka/src/protocol/api.rs | 637 +++++++
gateways/kafka/src/protocol/bounds_guard.rs | 906 ++++++++++
gateways/kafka/src/protocol/header.rs | 40 +
.../helpers => gateways/kafka/src/protocol}/mod.rs | 6 +-
gateways/kafka/src/protocol/responses.rs | 318 ++++
gateways/kafka/src/server.rs | 896 ++++++++++
gateways/kafka/tests/api_handler_tests.rs | 989 +++++++++++
gateways/kafka/tests/broker_advertise_tests.rs | 117 ++
gateways/kafka/tests/common/codec.rs | 292 ++++
gateways/kafka/tests/common/fixtures.rs | 91 +
.../kafka/tests/common/scope.rs | 26 +-
gateways/kafka/tests/common/server.rs | 68 +
gateways/kafka/tests/common/tcp.rs | 258 +++
gateways/kafka/tests/common/wire.rs | 447 +++++
.../kafka/tests/fixtures_canary_tests.rs | 36 +-
gateways/kafka/tests/golden_wire_fixtures_tests.rs | 122 ++
gateways/kafka/tests/header_tests.rs | 282 ++++
gateways/kafka/tests/listener_robustness_tests.rs | 624 +++++++
gateways/kafka/tests/response_negative_tests.rs | 277 ++++
gateways/kafka/tests/server_e2e_tests.rs | 451 +++++
gateways/kafka/tests/server_integration_tests.rs | 129 ++
gateways/kafka/tests/version_firewall_tests.rs | 799 +++++++++
.../kafka/tools/kafka-tool}/Cargo.toml | 20 +-
gateways/kafka/tools/kafka-tool/README.md | 251 +++
gateways/kafka/tools/kafka-tool/src/main.rs | 864 ++++++++++
gateways/kafka/tools/kafka-tool/src/response.rs | 389 +++++
.../tools/kafka-tool/tests/generate_cli_tests.rs | 82 +
scripts/ci/coverage-baseline-affected.sh | 2 +-
121 files changed, 18939 insertions(+), 1085 deletions(-)
create mode 100644 core/integration/tests/sdk/disconnect_relogin.rs
create mode 100644
foreign/csharp/Iggy_SDK_Tests/VsrTests/DialCandidatesTests.cs
create mode 100644
foreign/csharp/Iggy_SDK_Tests/VsrTests/EndpointFailoverTests.cs
create mode 100644 foreign/go/client/tcp/tcp_failover_test.go
create mode 100644 foreign/go/client/tcp/tcp_session_credentials_test.go
create mode 100644
foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientEndpointFailoverTest.java
create mode 100644 gateways/README.md
copy {core/bench => gateways/kafka}/Cargo.toml (54%)
create mode 100644 gateways/kafka/README.md
create mode 100644 gateways/kafka/docs/MANUAL_TESTING.md
create mode 100644 gateways/kafka/docs/SCOPE.md
create mode 100644 gateways/kafka/docs/TEST_SUITE.md
create mode 100644 gateways/kafka/docs/kafka_api_keys_reference.md
create mode 100755 gateways/kafka/scripts/ci-wire-fixtures.sh
create mode 100644 gateways/kafka/src/error.rs
copy bdd/rust/tests/steps/mod.rs => gateways/kafka/src/lib.rs (85%)
create mode 100644 gateways/kafka/src/main.rs
create mode 100644 gateways/kafka/src/protocol/api.rs
create mode 100644 gateways/kafka/src/protocol/bounds_guard.rs
create mode 100644 gateways/kafka/src/protocol/header.rs
copy {bdd/rust/tests/helpers => gateways/kafka/src/protocol}/mod.rs (91%)
create mode 100644 gateways/kafka/src/protocol/responses.rs
create mode 100644 gateways/kafka/src/server.rs
create mode 100644 gateways/kafka/tests/api_handler_tests.rs
create mode 100644 gateways/kafka/tests/broker_advertise_tests.rs
create mode 100644 gateways/kafka/tests/common/codec.rs
create mode 100644 gateways/kafka/tests/common/fixtures.rs
copy bdd/rust/tests/stream_crud.rs => gateways/kafka/tests/common/scope.rs
(60%)
create mode 100644 gateways/kafka/tests/common/server.rs
create mode 100644 gateways/kafka/tests/common/tcp.rs
create mode 100644 gateways/kafka/tests/common/wire.rs
copy foreign/csharp/Iggy_SDK_Tests/Utils/DummyObj/DummyObjFactory.cs =>
gateways/kafka/tests/fixtures_canary_tests.rs (51%)
create mode 100644 gateways/kafka/tests/golden_wire_fixtures_tests.rs
create mode 100644 gateways/kafka/tests/header_tests.rs
create mode 100644 gateways/kafka/tests/listener_robustness_tests.rs
create mode 100644 gateways/kafka/tests/response_negative_tests.rs
create mode 100644 gateways/kafka/tests/server_e2e_tests.rs
create mode 100644 gateways/kafka/tests/server_integration_tests.rs
create mode 100644 gateways/kafka/tests/version_firewall_tests.rs
copy {core/bench/runner => gateways/kafka/tools/kafka-tool}/Cargo.toml (73%)
create mode 100644 gateways/kafka/tools/kafka-tool/README.md
create mode 100644 gateways/kafka/tools/kafka-tool/src/main.rs
create mode 100644 gateways/kafka/tools/kafka-tool/src/response.rs
create mode 100644 gateways/kafka/tools/kafka-tool/tests/generate_cli_tests.rs