aio-libs / aiokafka

asyncio client for kafka
http://aiokafka.readthedocs.io/
Apache License 2.0
1.13k stars 227 forks source link

Kafka Exactly Once Semantics Support (Kafka 0.11.0.x) #182

Closed vineetgoel closed 5 years ago

vineetgoel commented 7 years ago

Is there a plan on when aiokafka will support the newly added exactly once semantics using Idempotent and Transactional Producers?

tvoinarovskyi commented 7 years ago

I will definitely work on this, but aiokafka needs a lot of old features finished, so I would expect kafka-python to have the feature first. Do you have a need for exactly Transactional Producer, or you would be ok with Idempotent delivery. The later is much easier and will probably be the first goal.

tvoinarovskyi commented 7 years ago

Lets add the KIP-98 link here

vineetgoel commented 7 years ago

I think we would need both of them for our use case.

tvoinarovskyi commented 6 years ago

I start development of Transactional producer and plan to finish it till the end of this month, as I will have some spare time.

tvoinarovskyi commented 6 years ago

If there are suggestions on how the API should be structured, would be glad to hear. @ask @vineetgoel

vineetgoel commented 6 years ago

@tvoinarovskyi sorry about the late response. The standard API (in the java clients) should work well for us.

Particularly the things we would need are:

We will typically be sending a bunch of messages in a transaction and then committing offsets and ending the transaction.

While reading, we would typically only want to read committed transactions.

tvoinarovskyi commented 5 years ago

@vineetgoel The implementation was merged to master if you have time/eagerness I'm open to API suggestions or fixups. Hope will release it as 0.5 this year ;) Thanks for the patience, was a long year with this!

tvoinarovskyi commented 5 years ago

Released as part of v0.5.0