-
Notifications
You must be signed in to change notification settings - Fork 81
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
[CLOUD-2262][EAP7-1192] txn propagation over ejb remoting on OpenShift #175
[CLOUD-2262][EAP7-1192] txn propagation over ejb remoting on OpenShift #175
Conversation
8c8334c
to
12a627d
Compare
Just updating the status: Tomek reviewed the PR and I did some small adjustment in the text. Please @fmarchioni let us know what you think from the QA perspective. Thank you. |
Thanks @ochaloup I have gone through the document.
|
Hi @fmarchioni , if you don't mind I will put my answers to points
|
12a627d
to
4e7a523
Compare
@fmarchioni @ochaloup EJB-client programmatic configuration should work. As JBEAP-16149 is still in progress, for now, we have to provide the AS with default Elytron configuration that provides appropriate rules for all JTA invocations. The stateful-set template that we are using to deploy services to OpenShift uses that configuration out of the box currently. So to sum up, each configuration should work - if it doesn't we have to analyze it. |
@tadamski ok, I see, I thought the EJB-client programmatic configuration does not work with txn recovery... it should be probably verified. |
@fmarchioni we should concentrate of filesystem object-store to make sure that stateful-set persistent storage guarantees are being held @ochaloup I agree, but we imo we should treat all not working configs as bugs and if they are detected they should be jirified and fixed; my current understanding is that we have workarounds for the known bugs |
@ochaloup I didn't realize this had been submitted and had a link to your branch from a meeting today so i commented there. If I get a chance I'll try and make the same comments here. You can see the comments here but the context of what I was commenting on is lost. |
Thanks @ochaloup and @bstansberry for your comments. |
4e7a523
to
666da3f
Compare
@bstansberry sorry, for misguiding you. The comments should be available here ochaloup@4e7a523#commitcomment-32415797 I updated the PR based on your comments. Just I need to rewrite the section about hard requirements. |
@fmarchioni yes, I will update the requirements to be clearer. Just when I will be back from PTO.
Yes, it should be and we expect it works. Just is still under investigating if this functionality is really out of the box functionality or some changes in remoting/clustering/transactions are needed. |
* distributed transactional operations among those applications should be fully supported | ||
* transactions should recover properly if the transaction is interrupted | ||
* users would create the applications using provided template, which would hide the complexity associated with operation in cloud | ||
* users would be able to configure connections between applications by configuring remoting subsystem in 'standalone-openshift.xml' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the requirement here that the user provides their own standalone-openshift.xml, or is there a requirement that our images will be able to add necessary elements to the standard standalone-openshift.xml prior to server launch, i.e. by reading env vars and adding management resources?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think than in tech-preview (CD17) we would like it to be configured by standalone-openshift.xml modification. The target solution should decouple user from OpenShift internals and create the config based on provided data (maybe from template). I think we can implement it as an extension after we are sure that the core functionality is working correctly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tadamski So "configured by standalone-openshift.xml modification" means the user provides their own standalone-openshift.xml?
If so, +1. I don't really want to see significant new work on us doing specialized xml config customization on the user's behalf in the WF 17 / WF 18 time frame. There's a lot of work going on related to using Galleon in s2i and we don't have bandwidth to take on a other forms of config customization.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bstansberry Yes - users have to provide their own standalone-openshift.xml. I'm also in favor of that solution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor point -- it would be good to clarify that a bit in the doc so there's no need to refer to these comments if there's ever any question about this in the future.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TBH I needed to research the code a bit more. I'm working on draft implementation currently and will update the document this week according to what I have learned.
This LGTM. @jmesnil @jfdenise FYI, as this conceptually relates to the WildFly Operator |
@tadamski @ochaloup as discussed on meeting. Can you please clarify scope of this?
This means new template in https://github.com/jboss-container-images/jboss-eap-7-openshift-image/tree/eap72-dev/templates, right?
As already mentioned by @bstansberry. It would be good to clarify that a bit in the doc.
Also I would like to see mentioned why it should be technical preview and what is missing for full support.
|
a0bd991
to
770a7e7
Compare
770a7e7
to
ed0dda8
Compare
Updated with definition of operator being requirements for the scale-down recovery functionality. |
@tadamski @ochaloup I have one more question this RFE, does only recovery for EJB remoting on Openshift start to be supported? Does this RFE include all the scenarios which migration pod handled as well? Also by implementing this RFE, migration pod must not be used, right? I think it should be mentioned as well. |
@mnovak1 yes, correct.
I don't understand what you mean by 'only recovery for EJB remoting on OpenShift start'? Only EJB remoting is supported - not JTS. One node recovery is supported as well (transaction is not propagated to the different node). Something more which I should add? |
@ochaloup thanks
Sorry, I meant XTS transactions - distributed XA transactions. |
@mnovak1 I will try to clarify this. Let me know if there is something I should elaborate on. The scope of the RFE is only EJB remoting for distributed transactions[1]. But the XA transactions are supported as part of this RFE implicitly too. The XA transaction is any transaction with multiple resources driven by a transaction manager. The XA transaction can be then distributed over the EJB call to a different transaction manager which plays a role of a subordinate transaction manager and is driven by the top level one (the one which started the transaction). The XTS (SOAP WebService transactions) is not in the scope of this RFE. Neither RTS (atomic RESTtransactions, probably not so interesting as WFLY provides it still as a dev preview), nor JTS (transactions over IIOP with CORBA interfaces). [1] WildFly/Narayana.io documentation differs the distributed transactions (a transaction context passed amongst transaction managers) and XA transactions (a transaction manager which manages multiple remote/distributed resources/participants). |
@ochaloup Thanks and sorry for confusion. I wanted to be clarified that XTS and JTS (transactions over IIOP with CORBA interfaces) are still not supported by this RFE. |
…d requirement, adding points to the implementation plan
… WildFly operator is requirements for the safe recovery
26bfd02
to
e482dbb
Compare
@bstansberry do you think this could be merged now? |
https://issues.jboss.org/browse/EAP7-1192
https://issues.jboss.org/browse/CLOUD-2262
The design document for the EAP7-1192/CLOUD-2262. It needs to be review by @tadamski and it could be good to be checked by @fmarchioni