public class CloudSpannerXAConnection extends CloudSpannerPooledConnection implements XAConnection, XAResource
XAResource.
This implementation doesn't support transaction interleaving (see JTA specification, section
3.4.4) and suspend/resume.
Two-phase commit requires PostgreSQL server version 8.1 or higher.| Modifier and Type | Field and Description |
|---|---|
static String |
XA_MUTATION_COLUMN |
static String |
XA_NUMBER_COLUMN |
static String |
XA_PREPARED_MUTATIONS_TABLE |
static String |
XA_XID_COLUMN |
TMENDRSCAN, TMFAIL, TMJOIN, TMNOFLAGS, TMONEPHASE, TMRESUME, TMSTARTRSCAN, TMSUCCESS, TMSUSPEND, XA_OK, XA_RDONLY| Constructor and Description |
|---|
CloudSpannerXAConnection(CloudSpannerConnection conn) |
CloudSpannerXAConnection(CloudSpannerConnection conn,
boolean createXATable) |
| Modifier and Type | Method and Description |
|---|---|
void |
commit(Xid xid,
boolean onePhase) |
void |
end(Xid xid,
int flags)
Preconditions: 1.
|
void |
forget(Xid xid) |
ICloudSpannerConnection |
getConnection()
XAConnection interface
|
int |
getTransactionTimeout()
We don't do transaction timeouts.
|
XAResource |
getXAResource() |
boolean |
isSameRM(XAResource xares) |
int |
prepare(Xid xid)
Preconditions: 1.
|
Xid[] |
recover(int flag)
Preconditions: 1.
|
void |
rollback(Xid xid)
Preconditions: 1.
|
boolean |
setTransactionTimeout(int seconds)
We don't do transaction timeouts.
|
void |
start(Xid xid,
int flags)
Preconditions: 1.
|
addConnectionEventListener, addStatementEventListener, close, createConnectionEvent, getParentLogger, removeConnectionEventListener, removeStatementEventListenerclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddConnectionEventListener, addStatementEventListener, close, removeConnectionEventListener, removeStatementEventListenerpublic static final String XA_PREPARED_MUTATIONS_TABLE
public static final String XA_XID_COLUMN
public static final String XA_NUMBER_COLUMN
public static final String XA_MUTATION_COLUMN
public CloudSpannerXAConnection(CloudSpannerConnection conn) throws SQLException
SQLExceptionpublic CloudSpannerXAConnection(CloudSpannerConnection conn, boolean createXATable) throws SQLException
SQLExceptionpublic ICloudSpannerConnection getConnection() throws SQLException
getConnection in interface PooledConnectiongetConnection in class CloudSpannerPooledConnectionSQLExceptionpublic XAResource getXAResource()
getXAResource in interface XAConnectionpublic void start(Xid xid, int flags) throws XAException
start in interface XAResourceXAExceptionXAResource.start(Xid, int)public void end(Xid xid, int flags) throws XAException
end in interface XAResourceXAExceptionXAResource.end(Xid, int)public int prepare(Xid xid) throws XAException
prepare in interface XAResourceXAExceptionXAResource.prepare(Xid)public Xid[] recover(int flag) throws XAException
recover in interface XAResourceXAExceptionXAResource.recover(int)public void rollback(Xid xid) throws XAException
rollback in interface XAResourceXAExceptionpublic void commit(Xid xid, boolean onePhase) throws XAException
commit in interface XAResourceXAExceptionpublic boolean isSameRM(XAResource xares) throws XAException
isSameRM in interface XAResourceXAExceptionpublic void forget(Xid xid) throws XAException
forget in interface XAResourceXAExceptionpublic int getTransactionTimeout()
getTransactionTimeout in interface XAResourcepublic boolean setTransactionTimeout(int seconds)
setTransactionTimeout in interface XAResourceCopyright © 2018. All rights reserved.