Hi Rowland,
KIP-939 
https://cwiki.apache.org/confluence/display/KAFKA/KIP-939%3A+Support+Participation+in+2PC
introduces two-phase commit, but not XA support. I believe the KIP is expected 
to be delivered in
Kafka 4.0 later this year. The way that it works and the use cases that it’s 
intended for were carefully
considered and it intentionally does not support XA.

There would be a considerable amount of work for full XA support, in particular 
when you start to include
other related technologies such as Java EE resource adapters that most people 
use in practice to exploit XA.
I wonder whether the KIP-939 changes would make it viable to implement 
XAResource on top of the Kafka
client for some specific scenarios at a much lower cost than full support.

Personally, as a non-PMC member, I would not advocate trying to put full XA 
support into Kafka.

Thanks,
Andrew

> On 1 Jan 2024, at 22:20, Rowland Smith <rowl...@gmail.com> wrote:
> 
> Hi All,
> 
> I am new to the Kafka developer community. After learning more about
> Kafka's transactional capabilities recently, I became interested in
> exploring what would be required to provide support for the XA interface
> specified in the X/ Open Distributed Processing Model in the Kafka producer
> client. I have put together a proof of concept to satisfy my curiosity, and
> based on that work, I think that extending the Kafka producer with XA
> support is doable with reasonable effort.
> 
> As I understand the Kafka development team's process, the first step in the
> process would be to produce a KIP describing the feature's goals and
> design. My question in this email is whether XA support has ever been
> considered previously by the PMC and if so, with what result. I don't want
> to spend time working on a KIP if XA support is not something that the PMC
> sees value in including and supporting in the Kafka codebase.
> 
> Any feedback would be appreciated. I am excited to work on this feature if
> there is interest in the community.
> 
> Regards,
> Rowland

Reply via email to