@Override public <T, C extends PreCommitCondition, E extends Exception> T runTaskWithConditionThrowOnConflict( C condition, ConditionAwareTransactionTask<T, C, E> task) throws E, TransactionFailedRetriableException { checkOpen(); try { TransactionAndImmutableTsLock txAndLock = runTimed(() -> setupRunTaskWithConditionThrowOnConflict(condition), "setupTask"); return finishRunTaskWithLockThrowOnConflict(txAndLock, transaction -> task.execute(transaction, condition)); } finally { condition.cleanup(); } }
new ReadTransaction(transaction, sweepStrategyManager)); } finally { condition.cleanup();
@Override public <T, C extends PreCommitCondition, E extends Exception> T runTaskWithConditionThrowOnConflict( C condition, ConditionAwareTransactionTask<T, C, E> task) throws E, TransactionFailedRetriableException { checkOpen(); try { TransactionAndImmutableTsLock txAndLock = runTimed(() -> setupRunTaskWithConditionThrowOnConflict(condition), "setupTask"); return finishRunTaskWithLockThrowOnConflict(txAndLock, transaction -> task.execute(transaction, condition)); } finally { condition.cleanup(); } }
new ReadTransaction(transaction, sweepStrategyManager)); } finally { condition.cleanup();