[
https://issues.jboss.org/browse/WFLY-10258?page=com.atlassian.jira.plugin...
]
Tom Jenkinson edited comment on WFLY-10258 at 11/15/18 9:57 AM:
----------------------------------------------------------------
[~dmlloyd] [~flavia.rainone] [~tomekadamski] Could this be solved by allowing an
XAResource to provide a comparator that we use to sort the list of XAR before calling
prepare? In that way you can return -1 for anything you are going to return RDONLY on.
I added that to
https://issues.jboss.org/projects/JBTM/issues/JBTM-3020 in case we discuss
there or we could create a new discussion.
was (Author: tomjenkinson):
[~dmlloyd] [~flavia.rainone] [~tomekadamski] Could this be solved by allowing an
XAResource to provide a comparator that we use to sort the list of XAR before calling
prepare? In that way you can return -1 for anything you are going to return RDONLY on.
Prevent enlisting additional resources on EJB caller side in case of
server side @RequiresNew
---------------------------------------------------------------------------------------------
Key: WFLY-10258
URL:
https://issues.jboss.org/browse/WFLY-10258
Project: WildFly
Issue Type: Bug
Components: EJB, Transactions
Affects Versions: 12.0.0.Final
Reporter: Jörg Bäsner
Priority: Major
Labels: downstream_dependency
Scenario:
- server-1 (intermediary)
-- Running standalone profile
-- Has a remote-outbound-connection pointing at server-2 through server-2's public IP
address
-- Intermediary bean need to lookup the Target bean in server-2 and also inject the
{{TransactionManager}}
-- Intermediary bean need to enlist a _dummy_ XAResource
- server-2 (target)
-- disable {{JBOSS-LOCAL-USER}} auth
-- Target bean needs to be annotated with {{@REQUIRES_NEW}} (important)
- Standalone EJB client invokes an intermediary bean server-1, which as a result invokes
target bean on server-2.
The _dummy_ XAResource should log in the {{commit}} method whether one-phase optimization
is being used like:
{code}
@Override
public void commit(Xid arg0, boolean onePhaseOptim) throws XAException {
logger.info("-- Committing in the client resource. One-phase optimisation
is: " + onePhaseOptim + " --"
+ (onePhaseOptim ? "" : " -> TWO-PHASE COMMIT
!!!"));
}
{code}
In this scenario it is expected that the one-phase optimization is being used!
--
This message was sent by Atlassian Jira
(v7.12.1#712002)