sujitn opened a new pull request, #3038:
URL: https://github.com/apache/iggy/pull/3038

   Spike for Kafka wire protocol compatibility, discussed on Discord.
   Submitting as WIP for architectural feedback.
   
   Adds an in-process Kafka transport that accepts standard Kafka clients
   (kcat, librdkafka) on a configurable port. Translates Kafka protocol
   requests into direct shard API calls (append_messages, poll_messages),
   bypassing binary dispatch. Topic names map to Iggy topics within a
   configurable default stream.
   
   Supported: ApiVersions (v0-v3), Metadata (v1), Produce (v3), Fetch (v4),
   ListOffsets (v1), FindCoordinator (v0), CreateTopics (v0), DeleteTopics (v0).
   
   Verified end-to-end with kcat — metadata, produce, consume all work.
   Smoke test: ./scripts/test-kafka-transport.sh
   
   ```
   [kafka]
   enabled = false
   address = "127.0.0.1:9092"
   default_stream = "kafka"
   auto_create_topics = true
   num_partitions = 1
   max_request_size = 67108864
   ```
   
   ~40 additive lines touch existing files (ServerConfig field, IggyShard
   bound address, init_tasks block, config re-exports). Everything else
   is new code under core/server/src/kafka/.
   
   Not yet implemented: SASL, TLS, consumer group protocol, record key
   preservation, multi-shard listeners.
   
   Looking for feedback on the overall approach and module structure.


-- 
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]

Reply via email to