-
Notifications
You must be signed in to change notification settings - Fork 753
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Transactions #216
Comments
The plan sounds solid to me 👍 |
@VictorDenisov @achille-roussel |
It's difficult to say. Of course I'm just like you are interested in delivering it as soon as possible. |
@achille-roussel I have a question about this function: Line 105 in 50823e6
and this function Line 193 in 50823e6
Was there any specific reason to implement I'm asking because transactions introduce control messages and control messages should not surface to the client app. The key of control messages specifies the type of the control message - aborted or committed transaction. It means I need to read the key of a control message within Line 440 in 50823e6
If this message is an abort message then I need to abandon the whole chunk of messages between the previous control message and the current control message. It means I need to read the messages, store them somewhere and once I understand what message I want to return to the client I need to invoke the key function for the key of the message.
Long story short - it would make more sense to me to return full message from readMessage function. |
@VictorDenisov great initiative! 👍 I saw you closed some of your PRs, is it still something you're working on? Thank you, |
@sneko I merged reading transactional messages(#261) to the master branch of my personal repository: https://github.com/VictorDenisov/kafka-go so that it can be imported in go programs. If you decide to give it a try let me know how it goes. |
Sorry for the delay of my answer @VictorDenisov , I need to finish other things before digging into Kafka transactions, but I will 😄 During last months, did you get critical issue with the last version you pushed onto your repo? Thanks 🐰 |
@sneko I actually ended up using confluent's kafka go. It has a way worse api, but it has all the features. One producer per topic turned out to be a major blocker to me. |
hi there, what is the staus of transactional support for kafka-go? I saw the field in the conn config but it is hard for me to use. Basically if I want t conn like this
How can I set the partition for the connForward in that example? Without this, the method
will return error that it tries to connect to non leader partition. |
Bugger. I found it in the conn config struct. Should work, trying now ... |
And then I realized that I already set it correctly but I got error
|
and if I use the conn like this (and I guess transaction is not enabled?)
then the write is ok without errors |
I'm not sure about the state of transactions in this client. Last time I left it, it could only consume records with transactions and couldn't really write transactional records. |
I will close this issue as the work to support transactions is being tracked elsewhere in #755 Thanks a lot for your valuable contributions! |
I would like to work on transactions for kafka-go: https://www.confluent.io/blog/transactions-apache-kafka/
Are there any objections?
Tasks:
The text was updated successfully, but these errors were encountered: