LP #1498066: Add support for JOIN clause in XA START

Description

**Reported in Launchpad by Valerii Kravchuk last update 21-09-2015 18:24:18

Documentation of all MySQL versions says (see http://dev.mysql.com/doc/refman/5.7/en/xa-statements.html):

"For XA START, the JOIN and RESUME clauses are not supported"

This limitation causes a well known problem for Weblogic that looks like the following error message from various Connector/J version used:

Xid:bea1-0001e1c7904375b56b2b Resource: gemalto_xa_failover.ds
XAResource.start(bea1-0001e1c7904375b56b2b-67656d616c746f5f78615f6661696c6f7665722e64735f67656d616c746f5f646f6d61696e, XAResource.TMNOFLAGS) for
XAResource.end(bea1-0001e1c7904375b56b2b-67656d616c746f5f78615f6661696c6f7665722e64735f67656d616c746f5f646f6d61696e, XAResource.TMSUCCESS)
XAResource.start(bea1-0001e1c7904375b56b2b-67656d616c746f5f78615f6661696c6f7665722e64735f67656d616c746f5f646f6d61696e, XAResource.TMJOIN)
####<2015-06-29_13:39:58,100> <Debug> <JTAXA> <rhel65> <managed1> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-0001E1C7904375B56B2B> <> <1435556398100> <BEA-000000> <BEA1-0001E1C7904375B56B2B: null: XA.start FAILED (rm=gemalto_xa_failover.ds_gemalto_domain, xar=gemalto_xa_failover.ds
com.mysql.jdbc.jdbc2.optional.MysqlXAException: XAER_INVAL: Invalid arguments (or unsupported command)
at com.mysql.jdbc.jdbc2.optional.MysqlXAConnection.mapXAExceptionFromSQLException(MysqlXAConnection.java:585)
at com.mysql.jdbc.jdbc2.optional.MysqlXAConnection.dispatchCommand(MysqlXAConnection.java:568)
at com.mysql.jdbc.jdbc2.optional.MysqlXAConnection.start(MysqlXAConnection.java:508)
at weblogic.jdbc.jta.DataSource.start(DataSource.java:811)

See

https://bugs.mysql.com/bug.php?id=78498
https://bugs.mysql.com/bug.php?id=77573
https://bugs.mysql.com/bug.php?id=40591
https://bugs.mysql.com/bug.php?id=40591

for more details and test case.

Basically, this fails at server level:

mysql> XA START 0x8a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0x01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,0x1 JOIN;
ERROR 1398 (XAE05): XAER_INVAL: Invalid arguments (or unsupported command)
mysql> select version();
-----------------

version()

-----------------

5.6.26-74.0-log

-----------------
1 row in set (0.03 sec)

There is no way to join XA transaction and Weblogic needs this to work.

This is a feature request to add proper support for this clause in Percona Server.

Environment

None

Smart Checklist

Activity

Show:

Julia Vural March 4, 2025 at 9:04 PM

It appears that this issue is no longer being worked on, so we are closing it for housekeeping purposes. If you believe the issue still exists, please open a new ticket after confirming it's present in the latest release.

Won't Do

Details

Assignee

Reporter

Priority

Smart Checklist

Created January 23, 2018 at 4:04 PM
Updated March 4, 2025 at 9:04 PM
Resolved March 4, 2025 at 9:04 PM