@NotNull public Xid[] recover(final int flag, final String parentNodeName) throws XAException { try { try { final Xid[] xids = ext.doRecover(null, parentNodeName); return xids == null ? SimpleXid.NO_XIDS : xids; } catch (NotSupportedException e) { throw new XAException(XAException.XAER_RMFAIL); } } catch (XAException e) { throw e; } catch (Throwable t) { throw Log.log.resourceManagerErrorXa(XAException.XAER_RMFAIL, t); } } }
JBossLocalTransactionProvider(final ExtendedJBossXATerminator ext, final int staleTransactionTime, final TransactionManager tm, final XAResourceRecoveryRegistry registry, final Path xaRecoveryDirRelativeToPath) { Assert.checkMinimumParameter("setTransactionTimeout", 0, staleTransactionTime); this.staleTransactionTime = staleTransactionTime; this.ext = Assert.checkNotNullParam("ext", ext); this.tm = Assert.checkNotNullParam("tm", tm); try { ext.doRecover(null, null); } catch (Exception e) { // the recover method is called to load transactions from Narayana object store at startup // if it fails we ignore, troubles will be adjusted during runtime Log.log.doRecoverFailureOnIntialization(e); } this.fileSystemXAResourceRegistry = new FileSystemXAResourceRegistry(this, xaRecoveryDirRelativeToPath); registry.addXAResourceRecovery(fileSystemXAResourceRegistry::getInDoubtXAResources); }
if (! importedTransaction.doCommit()) { dropLocal(importedTransaction); ext.doRecover(null, null); throw new XAException(XAException.XA_RETRY);
@NotNull public Xid[] recover(final int flag, final String parentNodeName) throws XAException { try { try { final Xid[] xids = ext.doRecover(null, parentNodeName); return xids == null ? SimpleXid.NO_XIDS : xids; } catch (NotSupportedException e) { throw new XAException(XAException.XAER_RMFAIL); } } catch (XAException e) { throw e; } catch (Throwable t) { throw Log.log.resourceManagerErrorXa(XAException.XAER_RMFAIL, t); } } }
@NotNull public Xid[] recover(final int flag, final String parentNodeName) throws XAException { try { try { final Xid[] xids = ext.doRecover(null, parentNodeName); return xids == null ? SimpleXid.NO_XIDS : xids; } catch (NotSupportedException e) { throw new XAException(XAException.XAER_RMFAIL); } } catch (XAException e) { throw e; } catch (Throwable t) { throw Log.log.resourceManagerErrorXa(XAException.XAER_RMFAIL, t); } } }
JBossLocalTransactionProvider(final ExtendedJBossXATerminator ext, final int staleTransactionTime, final TransactionManager tm, final XAResourceRecoveryRegistry registry, final Path xaRecoveryDirRelativeToPath) { Assert.checkMinimumParameter("setTransactionTimeout", 0, staleTransactionTime); this.staleTransactionTime = staleTransactionTime; this.ext = Assert.checkNotNullParam("ext", ext); this.tm = Assert.checkNotNullParam("tm", tm); try { ext.doRecover(null, null); } catch (Exception e) { // the recover method is called to load transactions from Narayana object store at startup // if it fails we ignore, troubles will be adjusted during runtime Log.log.doRecoverFailureOnIntialization(e); } this.fileSystemXAResourceRegistry = new FileSystemXAResourceRegistry(this, xaRecoveryDirRelativeToPath); registry.addXAResourceRecovery(fileSystemXAResourceRegistry::getInDoubtXAResources); }
JBossLocalTransactionProvider(final ExtendedJBossXATerminator ext, final int staleTransactionTime, final TransactionManager tm, final XAResourceRecoveryRegistry registry, final Path xaRecoveryDirRelativeToPath) { Assert.checkMinimumParameter("setTransactionTimeout", 0, staleTransactionTime); this.staleTransactionTime = staleTransactionTime; this.ext = Assert.checkNotNullParam("ext", ext); this.tm = Assert.checkNotNullParam("tm", tm); try { ext.doRecover(null, null); } catch (Exception e) { // the recover method is called to load transactions from Narayana object store at startup // if it fails we ignore, troubles will be adjusted during runtime Log.log.doRecoverFailureOnIntialization(e); } this.fileSystemXAResourceRegistry = new FileSystemXAResourceRegistry(this, xaRecoveryDirRelativeToPath); registry.addXAResourceRecovery(fileSystemXAResourceRegistry::getInDoubtXAResources); }
if (! importedTransaction.doCommit()) { dropLocal(importedTransaction); ext.doRecover(null, null); throw new XAException(XAException.XA_RETRY);
if (! importedTransaction.doCommit()) { dropLocal(importedTransaction); ext.doRecover(null, null); throw new XAException(XAException.XA_RETRY);