Replies: 8 comments
|
This is huge milestone for Iggy as a message streaming platform |
0 replies
|
Great work. Most sought after features and getting enterprise adoption ready. |
0 replies
|
Once we resolve remaining todo/fixme annotations from the codebase we can begin the release vote. |
0 replies
|
Amazing that we're at this point, this has been a long-awaited release! |
0 replies
|
Excited for the release :) |
0 replies
|
Can't wait to have the initial version of clustering released! Not to mention all the additional work related to the SDKs, connectors, tooling and overall efficiency + reliability. |
0 replies
|
Really excited to see how the new VSR feature performs in production! |
0 replies
|
Gz! |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hello, Apache Iggy (incubating) Community,
This is a call to discuss the release of Apache Iggy (incubating) version 0.9.0.
This is biggest release and a major milestone: 0.9.0 is the first version of the iggy server with built-in data replication based on Viewstamped Replication (VSR), together with a completely new binary wire protocol shared by all our SDKs. As usual, we will also release the accompanying SDKs and tooling (CLI, Connectors, bench and Web UI) from the same repository. Documentation will also be updated in the upcoming days, before release.
Below is the full changelog since 0.8.0 (~412 commits from ~41 contributors, plus dependabot; a few outstanding PRs will be merged before initiating the vote).
Highlights
Viewstamped Replication. The server can now run as a multi-node cluster: replica bootstrap (#3163), view changes preserving committed operations (#3824), state transfer (#3808, #3765), replica rejoin with message repair (#3667), per-partition consensus groups (#3071), and client session resume across restarts (#3753). The replica plane is authenticated with a PSK + BLAKE3 handshake, optionally over TLS 1.3 (#3425, #3461). Single-node deployment remains the default; clustering is opt-in via the
[cluster]config section.New binary protocol. The wire protocol was redesigned around a fixed VSR request/reply header, and every SDK has been migrated: Rust (#3254), Java (#3841), C# (#3800), Go (#3834), Node.js (#3763); Python, C++, and PHP build on the Rust client. Incompatible clients are rejected at login via a protocol version handshake (#3454).
Server promotion. The next-generation server (thread-per-core, io_uring + compio) is now the Apache Iggy server (#3856), replacing the previous implementation while keeping all transports: TCP (+TLS), QUIC, WebSocket, and HTTP. It is exercised by a deterministic simulator with seed-based workload fuzzing and consensus oracles (#3591), plus Miri checks in CI (#3284).
Breaking changes
[cluster]and sharding sections), so operators should reviewconfig.toml.SDKs and Connectors
A brand-new PHP SDK landed (#3235), however it is not yet release to any package manager. The C++ SDK gained messaging, system, consumer group, and topic APIs; the Python SDK closed most API gaps (user management, permissions, consumer groups, topic operations); the Go SDK added context.Context support and structured logging.
Six new sink connectors: ClickHouse (#2886), Delta Lake (#2889), S3 (#3103), Apache Doris (#3215), SurrealDB (#3453), and Meilisearch (#3497), plus InfluxDB v2/v3 source/sink rework (#3140) and Avro payload support (#3141).
Performance and operations
Single-pass batch checksums (#3746), per-partition LRU for sealed-segment handles (#3806), zero-copy user-header decoding (#3708), CPU affinity and cgroup awareness (#3615, #3647), advertised address selectors for NAT/Kubernetes (#3818), systemd watchdog (#3233), MSRV declared at Rust 1.95 (#3558), and SECURITY.md with the ASF reporting process (#3787).
Thanks,
Hubert
All reactions