@Override public final void reset() { if (mBorked == null) { try { rollback(); } catch (Throwable e) { borked(e, true, false); // rollback = true, rethrow = false } } else { super.scopeExitAll(); } }
@Override public final void reset() { if (mBorked == null) { try { rollback(); } catch (Throwable e) { borked(e, true, false); // rollback = true, rethrow = false } } else { super.scopeExitAll(); } }
@Override public final void reset() throws IOException { if (mBorked != null) { super.scopeExitAll(); return; super.scopeExitAll();
private void rollback() throws IOException { int hasState = mHasState; ParentScope parentScope = mParentScope; while (parentScope != null) { hasState |= parentScope.mHasState; parentScope = parentScope.mParentScope; } try { if ((hasState & (HAS_SCOPE | HAS_COMMIT)) != 0) { mContext.redoRollbackFinal(mRedo, mTxnId); } mHasState = 0; } catch (UnmodifiableReplicaException e) { // Suppress and let undo proceed. } _UndoLog undo = mUndoLog; if (undo != null) { undo.rollback(); } // Exit and release all locks. super.scopeExitAll(); mSavepoint = 0; if (undo != null) { mContext.unregister(undo); mUndoLog = null; } mTxnId = 0; }
private void rollback() throws IOException { int hasState = mHasState; ParentScope parentScope = mParentScope; while (parentScope != null) { hasState |= parentScope.mHasState; parentScope = parentScope.mParentScope; } try { if ((hasState & (HAS_SCOPE | HAS_COMMIT)) != 0) { mContext.redoRollbackFinal(mRedo, mTxnId); } mHasState = 0; } catch (UnmodifiableReplicaException e) { // Suppress and let undo proceed. } _UndoLog undo = mUndoLog; if (undo != null) { undo.rollback(); } // Exit and release all locks. super.scopeExitAll(); mSavepoint = 0; if (undo != null) { mContext.unregister(undo); mUndoLog = null; } mTxnId = 0; }
undo.rollback(); super.scopeExitAll(); if (undo != null) { mTxnContext.unregister(undo);