@SuppressWarnings("squid:S1181") @Override public void abortTransaction(TxnId txnId) throws RemoteException { try { transactionSubsystem.getTransactionManager().abortTransaction(txnId); } catch (Throwable th) { // Metadata node should abort all uncommitted transactions on re-start LOGGER.fatal("Failure committing a metadata transaction", th); ExitUtil.halt(ExitUtil.EC_FAILED_TO_ABORT_METADATA_TXN); } }
@Override public void jobletFinish(JobStatus jobStatus) { try { ITransactionManager txnManager = ((INcApplicationContext) jobletContext.getServiceContext().getApplicationContext()) .getTransactionSubsystem().getTransactionManager(); for (TxnId subTxnId : txnIdMap.values()) { ITransactionContext txnContext = txnManager.getTransactionContext(subTxnId); txnContext.setWriteTxn(transactionalWrite); if (jobStatus != JobStatus.FAILURE) { txnManager.commitTransaction(subTxnId); } else { txnManager.abortTransaction(subTxnId); } } } catch (ACIDException e) { throw new Error(e); } }
@Override public void jobletFinish(JobStatus jobStatus) { try { ITransactionManager txnManager = ((INcApplicationContext) jobletContext.getServiceContext().getApplicationContext()) .getTransactionSubsystem().getTransactionManager(); ITransactionContext txnContext = txnManager.getTransactionContext(txnId); txnContext.setWriteTxn(transactionalWrite); if (jobStatus != JobStatus.FAILURE) { txnManager.commitTransaction(txnId); } else { txnManager.abortTransaction(txnId); } } catch (ACIDException e) { throw new Error(e); } }
private void testAbort(ITupleReference tuple) throws Exception { setFailModificationCallback(lsmBtree); abortOp.open(); boolean aborted = false; VSizeFrame frame = new VSizeFrame(ctx); FrameTupleAppender tupleAppender = new FrameTupleAppender(frame); try { DataflowUtils.addTupleToFrame(tupleAppender, tuple, abortOp); tupleAppender.write(abortOp, true); } catch (HyracksDataException e) { StorageTestUtils.allowAllOps(lsmBtree); nc.getTransactionManager().abortTransaction(abortTxnCtx.getTxnId()); aborted = true; } finally { abortOp.close(); } Assert.assertTrue(aborted); }
nc.getTransactionManager().abortTransaction(txnCtx.getTxnId()); } else { nc.getTransactionManager().commitTransaction(txnCtx.getTxnId());