hubcio opened a new pull request, #1679: URL: https://github.com/apache/iggy/pull/1679
This commit introduces significant refactoring across the SDK and server to enable zero-copy operations for message polling and sending within the append-only log streaming framework. The primary goal is to improve performance by reducing memory allocations and copies, especially for message payloads, leading to lower latency and higher throughput. Changes: - Refactored Message Structures: introduced `IggyMessage` and `IggyMessagesBatchMut` / `IggyMessagesBatchSet` to handle message data with minimal copying, which replaced previous `PolledMessages` and `Message` structures in many contexts - Serialization/Deserialization: Updated the `BytesSerializable` trait and implementations to support more efficient serialization and direct buffer manipulation, avoiding intermediate copies where possible - Command Handling: Modified `PollMessages`, `SendMessages`, and corresponding server-side handlers (`poll_messages_handler`, `send_messages_handler`) to work with the new zero-copy structures and mechanisms - Client/SDK: Updated `MessageClient` trait, `IggyClient`, `IggyConsumer`, and CLI commands (`poll-messages`, `send-messages`) to align with the new message handling logic -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
