This is an automated email from the ASF dual-hosted git repository.
hgruszecki pushed a change to branch refactor-binary-7-http
in repository https://gitbox.apache.org/repos/asf/iggy.git
omit 922cf933d refactor(server,sdk): add wire validation for user headers
and fix encoding defects
omit db8240702 fix(server,sdk): fix O(n^2) memory in HTTP SendMessages and
missing transport codes
omit b1af71426 fix(server,sdk): harden wire type migration
omit 1e513e11a fix(server,sdk): harden wire type migration from review
findings
omit ac535ca53 fix(server): restore partition count validation in binary
handlers
omit baf4a9cd4 refactor(sdk): delete BytesSerializable trait entirely
omit 079e9e56f refactor(server): migrate WAL to WireEncode/WireDecode traits
omit 49635db1c refactor(server): remove dead BytesSerializable impls from
10 types
omit 4bc3af28b refactor(server): extract shared HTTP DTOs to iggy_common
omit de8dbac74 refactor(server): switch WAL to wire types and move domain
commands to http DTOs
omit ceb065ea9 refactor(server): delete dead command structs and simplify
SDK traits
omit 90c865c48 refactor(server): route wire types through
ShardRequestPayload and SDK
add 0935a76eb feat(partitions): rework partitions using new message (#3020)
add 0460de9bd feat(connectors): implement InfluxDB Sink and Source (#2933)
add 3904ef310 feat(cpp): Add functions related to consumer groups (#2988)
add c9e40b693 feat(connectors): add generic HTTP sink connector (#2925)
add e42a6eb35 chore(repo): update connectors versions and readme (#3066)
add 57bbc014f refactor(server): route wire types through
ShardRequestPayload and SDK
add 199f2cbc3 refactor(server): delete dead command structs and simplify
SDK traits
add 4e753f08b refactor(server): switch WAL to wire types and move domain
commands to http DTOs
add f77e7b138 refactor(server): extract shared HTTP DTOs to iggy_common
add ff436485f refactor(server): remove dead BytesSerializable impls from
10 types
add abe89ecb6 refactor(server): migrate WAL to WireEncode/WireDecode traits
add e68fb8963 refactor(sdk): delete BytesSerializable trait entirely
add 9f5ff700a fix(server): restore partition count validation in binary
handlers
add 8d1738b01 fix(server,sdk): harden wire type migration from review
findings
add e4b3de33d fix(server,sdk): harden wire type migration
add a2d3eacb4 fix(server,sdk): fix O(n^2) memory in HTTP SendMessages and
missing transport codes
add 365bf1bb9 refactor(server,sdk): add wire validation for user headers
and fix encoding defects
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 (922cf933d)
\
N -- N -- N refs/heads/refactor-binary-7-http (365bf1bb9)
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:
.typos.toml | 5 +
Cargo.lock | 420 ++--
Cargo.toml | 6 +
DEPENDENCIES.md | 53 +-
README.md | 8 +-
assets/vsr.pdf | Bin 0 -> 174431 bytes
core/binary_protocol/Cargo.toml | 2 +
core/binary_protocol/src/consensus/message.rs | 660 +++---
core/binary_protocol/src/consensus/mod.rs | 7 +-
core/binary_protocol/src/lib.rs | 8 +-
core/common/Cargo.toml | 2 +
core/common/src/error/iggy_error.rs | 6 +-
core/common/src/lib.rs | 2 +
core/common/src/types/mod.rs | 1 +
.../src/types/segment_storage/messages_writer.rs | 5 +-
core/common/src/types/send_messages2.rs | 755 +++++++
.../example_config/connectors/influxdb_sink.toml} | 32 +-
.../connectors/influxdb_source.toml} | 43 +-
core/connectors/sdk/Cargo.toml | 6 +
core/connectors/sdk/src/convert.rs | 52 +
core/connectors/sdk/src/lib.rs | 42 +
core/connectors/sdk/src/retry.rs | 448 ++++
.../connectors/sinks/elasticsearch_sink/src/lib.rs | 28 +-
.../http_sink}/Cargo.toml | 24 +-
core/connectors/sinks/http_sink/README.md | 812 ++++++++
core/connectors/sinks/http_sink/config.toml | 90 +
core/connectors/sinks/http_sink/src/lib.rs | 2130 ++++++++++++++++++++
.../{postgres_sink => influxdb_sink}/Cargo.toml | 14 +-
.../{mongodb_sink => influxdb_sink}/config.toml | 27 +-
core/connectors/sinks/influxdb_sink/src/lib.rs | 1624 +++++++++++++++
.../influxdb_source}/Cargo.toml | 17 +-
.../influxdb_source}/config.toml | 38 +-
core/connectors/sources/influxdb_source/src/lib.rs | 1399 +++++++++++++
core/consensus/Cargo.toml | 2 +
core/consensus/src/impls.rs | 360 +++-
core/consensus/src/lib.rs | 23 +-
core/consensus/src/namespaced_pipeline.rs | 50 +-
core/consensus/src/observability.rs | 604 ++++++
core/consensus/src/plane_helpers.rs | 122 +-
core/consensus/src/plane_mux.rs | 12 +-
core/harness_derive/src/codegen.rs | 95 +-
core/integration/Cargo.toml | 5 +-
core/integration/src/harness/seeds.rs | 36 +
.../tests/connectors/fixtures/elasticsearch/mod.rs | 6 +-
.../tests/connectors/fixtures/http/container.rs | 230 +++
.../fixtures/{elasticsearch => http}/mod.rs | 7 +-
.../tests/connectors/fixtures/http/sink.rs | 216 ++
.../connectors/fixtures/influxdb/container.rs | 253 +++
.../tests/connectors/fixtures/influxdb}/mod.rs | 7 +
.../tests/connectors/fixtures/influxdb/sink.rs | 277 +++
.../tests/connectors/fixtures/influxdb/source.rs | 201 ++
core/integration/tests/connectors/fixtures/mod.rs | 11 +
.../integration/tests/connectors/http/http_sink.rs | 854 ++++++++
.../tests/connectors/http}/mod.rs | 5 +-
.../tests/connectors/{stdout => http}/sink.toml | 2 +-
.../wiremock/mappings/accept-ingest.json} | 7 +-
.../tests/connectors/influxdb/docker-compose.yml | 77 +
.../tests/connectors/influxdb/influxdb_sink.rs | 262 +++
.../connectors/influxdb/influxdb_sink_formats.rs | 557 +++++
.../tests/connectors/influxdb/influxdb_source.rs | 238 +++
.../connectors/influxdb/influxdb_source_formats.rs | 619 ++++++
.../tests/connectors/{mongodb => influxdb}/mod.rs | 7 +-
.../connectors/{mongodb => influxdb}/sink.toml | 20 +-
.../source.toml => influxdb/sink_base64.toml} | 20 +-
.../connectors/influxdb/sink_no_metadata.toml | 36 +
.../source.toml => influxdb/sink_text.toml} | 20 +-
.../connectors/{postgres => influxdb}/source.toml | 10 +-
.../sink.toml => influxdb/source_raw.toml} | 12 +-
.../sink.toml => influxdb/source_text.toml} | 12 +-
.../tests/connectors/influxdb_sink.toml} | 43 +-
.../tests/connectors/influxdb_source.toml} | 45 +-
core/integration/tests/connectors/mod.rs | 2 +
core/iobuf/Cargo.toml | 1 +
core/iobuf/src/lib.rs | 647 +++---
core/journal/Cargo.toml | 2 +-
core/journal/src/metadata_journal.rs | 43 +-
core/message_bus/src/lib.rs | 16 +-
core/metadata/Cargo.toml | 1 +
core/metadata/src/impls/metadata.rs | 171 +-
core/metadata/src/impls/recovery.rs | 10 +-
core/metadata/src/stm/mod.rs | 8 +-
core/partitions/Cargo.toml | 4 +
core/partitions/src/iggy_index.rs | 164 ++
.../src/iggy_index_writer.rs} | 61 +-
core/partitions/src/iggy_partition.rs | 181 +-
core/partitions/src/iggy_partitions.rs | 916 ++++++---
core/partitions/src/journal.rs | 367 ++--
core/partitions/src/lib.rs | 49 +-
core/partitions/src/log.rs | 57 +-
.../src}/messages_writer.rs | 99 +-
core/partitions/src/segment.rs | 85 +
.../src/send_messages2.rs} | 0
core/partitions/src/types.rs | 65 +-
core/shard/src/lib.rs | 1 +
core/shard/src/router.rs | 36 +-
core/simulator/Cargo.toml | 1 +
core/simulator/src/bus.rs | 26 +-
core/simulator/src/client.rs | 114 +-
core/simulator/src/deps.rs | 20 +-
core/simulator/src/lib.rs | 21 +-
core/simulator/src/main.rs | 17 +-
core/simulator/src/packet.rs | 22 +-
foreign/cpp/BUILD.bazel | 25 +-
foreign/cpp/Cargo.toml | 1 +
foreign/cpp/build.rs | 1 +
foreign/cpp/src/client.rs | 213 +-
foreign/cpp/src/consumer_group.rs | 46 +
foreign/cpp/src/identifier.rs | 16 +
foreign/cpp/src/lib.rs | 58 +-
foreign/cpp/src/stream.rs | 2 +-
foreign/cpp/src/topic.rs | 4 +-
foreign/cpp/tests/client/low_level_e2e.cpp | 1 +
foreign/cpp/tests/common/test_helpers.hpp | 16 +-
foreign/cpp/tests/consumer_group/low_level_e2e.cpp | 572 ++++++
foreign/cpp/tests/identifier/unit_tests.cpp | 152 ++
foreign/cpp/tests/partition/low_level_e2e.cpp | 530 +++++
foreign/cpp/tests/stream/low_level_e2e.cpp | 23 +
foreign/cpp/tests/topic/low_level_e2e.cpp | 2 +
foreign/go/README.md | 6 +
scripts/ci/trailing-whitespace.sh | 2 +-
120 files changed, 16910 insertions(+), 2096 deletions(-)
create mode 100644 assets/vsr.pdf
create mode 100644 core/common/src/types/send_messages2.rs
copy core/connectors/{sinks/mongodb_sink/config.toml =>
runtime/example_config/connectors/influxdb_sink.toml} (67%)
copy core/connectors/{sinks/mongodb_sink/config.toml =>
runtime/example_config/connectors/influxdb_source.toml} (54%)
create mode 100644 core/connectors/sdk/src/convert.rs
create mode 100644 core/connectors/sdk/src/retry.rs
copy core/connectors/{sources/elasticsearch_source =>
sinks/http_sink}/Cargo.toml (72%)
create mode 100644 core/connectors/sinks/http_sink/README.md
create mode 100644 core/connectors/sinks/http_sink/config.toml
create mode 100644 core/connectors/sinks/http_sink/src/lib.rs
copy core/connectors/sinks/{postgres_sink => influxdb_sink}/Cargo.toml (80%)
copy core/connectors/sinks/{mongodb_sink => influxdb_sink}/config.toml (72%)
create mode 100644 core/connectors/sinks/influxdb_sink/src/lib.rs
copy core/connectors/{sinks/postgres_sink =>
sources/influxdb_source}/Cargo.toml (78%)
copy core/connectors/{sinks/mongodb_sink =>
sources/influxdb_source}/config.toml (62%)
create mode 100644 core/connectors/sources/influxdb_source/src/lib.rs
create mode 100644 core/consensus/src/observability.rs
create mode 100644 core/integration/tests/connectors/fixtures/http/container.rs
copy core/integration/tests/connectors/fixtures/{elasticsearch => http}/mod.rs
(82%)
create mode 100644 core/integration/tests/connectors/fixtures/http/sink.rs
create mode 100644
core/integration/tests/connectors/fixtures/influxdb/container.rs
copy core/{connectors/runtime/src/manager =>
integration/tests/connectors/fixtures/influxdb}/mod.rs (75%)
create mode 100644 core/integration/tests/connectors/fixtures/influxdb/sink.rs
create mode 100644
core/integration/tests/connectors/fixtures/influxdb/source.rs
create mode 100644 core/integration/tests/connectors/http/http_sink.rs
copy core/{connectors/runtime/src/configs =>
integration/tests/connectors/http}/mod.rs (93%)
copy core/integration/tests/connectors/{stdout => http}/sink.toml (94%)
copy
core/integration/tests/connectors/{http_config_provider/wiremock/mappings/wrapped/delete-sink-config.json
=> http/wiremock/mappings/accept-ingest.json} (56%)
create mode 100644
core/integration/tests/connectors/influxdb/docker-compose.yml
create mode 100644 core/integration/tests/connectors/influxdb/influxdb_sink.rs
create mode 100644
core/integration/tests/connectors/influxdb/influxdb_sink_formats.rs
create mode 100644
core/integration/tests/connectors/influxdb/influxdb_source.rs
create mode 100644
core/integration/tests/connectors/influxdb/influxdb_source_formats.rs
copy core/integration/tests/connectors/{mongodb => influxdb}/mod.rs (89%)
copy core/integration/tests/connectors/{mongodb => influxdb}/sink.toml (51%)
copy core/integration/tests/connectors/{elasticsearch/source.toml =>
influxdb/sink_base64.toml} (51%)
create mode 100644
core/integration/tests/connectors/influxdb/sink_no_metadata.toml
copy core/integration/tests/connectors/{elasticsearch/source.toml =>
influxdb/sink_text.toml} (51%)
copy core/integration/tests/connectors/{postgres => influxdb}/source.toml (65%)
copy core/integration/tests/connectors/{iceberg/sink.toml =>
influxdb/source_raw.toml} (61%)
copy core/integration/tests/connectors/{iceberg/sink.toml =>
influxdb/source_text.toml} (61%)
copy core/{connectors/sinks/mongodb_sink/config.toml =>
integration/tests/connectors/influxdb_sink.toml} (57%)
copy core/{connectors/sinks/mongodb_sink/config.toml =>
integration/tests/connectors/influxdb_source.toml} (56%)
create mode 100644 core/partitions/src/iggy_index.rs
copy core/{common/src/types/segment_storage/index_writer.rs =>
partitions/src/iggy_index_writer.rs} (60%)
copy core/{common/src/types/segment_storage =>
partitions/src}/messages_writer.rs (53%)
create mode 100644 core/partitions/src/segment.rs
copy core/{server/src/streaming/segments/memory_journal.rs =>
partitions/src/send_messages2.rs} (100%)
create mode 100644 foreign/cpp/src/consumer_group.rs
create mode 100644 foreign/cpp/tests/consumer_group/low_level_e2e.cpp
create mode 100644 foreign/cpp/tests/identifier/unit_tests.cpp
create mode 100644 foreign/cpp/tests/partition/low_level_e2e.cpp