quarkusio / quarkus

Quarkus: Supersonic Subatomic Java.
https://quarkus.io
Apache License 2.0
13.59k stars 2.63k forks source link

Add support for REST-AT #15364

Open tomsontom opened 3 years ago

tomsontom commented 3 years ago

Description I'm trying to gradually break apart a big EE application who relies on distributed transactions but I also think that there are situations where using 2pc setup is better suited than using compensations or the use of the saga-pattern. So having support for REST-AT built into Quarkus would be a great addition to the toolset of developers.

Implementation ideas I started a thread some time ago at the Narayana user group [1] and @mmusgrov gave some interesting pointers and even hacked together a working solution.

[1] https://groups.google.com/g/narayana-users/c/acJ_7Us6JAI

famod commented 3 years ago

Very interesting proposal! I read that mail thread briefly and I must say that I haven't fully understood whether this can/should be a (quarkiverse?) extension or some core extension?

/cc @gsmet @Sanne @geoand

geoand commented 3 years ago

I don't really have an opinion on this TBH

gsmet commented 3 years ago

Well, before even deciding where it should be, we would need someone to develop and maintain the extension :).

Sanne commented 3 years ago

Right. Looks very interesting but it depends on the Transactions team to be able to develop & maintain this. cc/ @ochaloup @mmusgrov and @tomjenkinson

mmusgrov commented 3 years ago

We think we may have a resource to work on this task. We will keep you informed when we have a firm commitment and have planned out the work.

mmusgrov commented 3 years ago

There is some preparatory work that we need to do in narayana before we can provide this extension which we have captured in a JIRA issue. Sweta is doing the work and is making good progress.

geoand commented 2 years ago

@mmusgrov any update on this?

mmusgrov commented 2 years ago

@geoand we have all the bits that we need so we just need to pull them together on the narayana side and then we can start work on providing a quarkus extension. Is there any particular priority level for doing this work?

geoand commented 2 years ago

Thanks for the info.

I personally am not aware of any specific priority for this

mmusgrov commented 2 years ago

Ok but it is definitely something that we wish to provide.

zhfeng commented 2 years ago

@mmusgrov I think we can denfinely raise a quarkiverse extension proposal for supporting narayana REST-AT, might name it as quarkus-narayana-rts?

quarkus-bot[bot] commented 1 year ago

/cc @mmusgrov

mmusgrov commented 1 year ago

We use rts, short for RESTful transaction service, to refer to any REST API to our transaction models, so far we have at least two: