com.palantir.atlasdb.transaction.api.Transaction.abort()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(2.2k)|赞(0)|评价(0)|浏览(101)

本文整理了Java中com.palantir.atlasdb.transaction.api.Transaction.abort()方法的一些代码示例,展示了Transaction.abort()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Transaction.abort()方法的具体详情如下:
包路径:com.palantir.atlasdb.transaction.api.Transaction
类名称:Transaction
方法名:abort

Transaction.abort介绍

[英]Aborts the transaction. Can be called repeatedly.

Cannot be called after a call to #commit(). Check #isUncommitted() to be sure.
[中]中止交易。可以反复调用。
在调用#commit()后无法调用。检查#isUncommitted()以确定。

代码示例

代码示例来源:origin: palantir/atlasdb

@Override
public void abort(TransactionToken token) {
  TransactionAndImmutableTsLock txAndLock = transactions.getIfPresent(token);
  if (txAndLock != null) {
    txManager.finishRunTaskWithLockThrowOnConflict(txAndLock, (TxTask) transaction -> {
      transaction.abort();
      return null;
    });
    transactions.invalidate(token);
  }
}

代码示例来源:origin: palantir/atlasdb

@Override
public void abort() {
  delegate().abort();
}

代码示例来源:origin: palantir/atlasdb

protected final <T, E extends Exception> T runTaskThrowOnConflict(TransactionTask<T, E> task, Transaction txn)
    throws E, TransactionFailedException {
  checkOpen();
  try {
    T ret = task.execute(txn);
    if (txn.isUncommitted()) {
      txn.commit();
    }
    return ret;
  } finally {
    // Make sure that anyone trying to retain a reference to this transaction
    // will not be able to use it.
    if (txn.isUncommitted()) {
      txn.abort();
    }
  }
}

代码示例来源:origin: com.palantir.atlasdb/atlasdb-server

@Override
  public Void execute(Transaction t) {
    t.abort();
    return null;
  }
});

代码示例来源:origin: com.palantir.atlasdb/atlasdb-service

@Override
public void abort(TransactionToken token) {
  TransactionAndImmutableTsLock txAndLock = transactions.getIfPresent(token);
  if (txAndLock != null) {
    txManager.finishRunTaskWithLockThrowOnConflict(txAndLock, (TxTask) transaction -> {
      transaction.abort();
      return null;
    });
    transactions.invalidate(token);
  }
}

代码示例来源:origin: com.palantir.atlasdb/atlasdb-client

@Override
public void abort() {
  delegate().abort();
}

代码示例来源:origin: com.palantir.atlasdb/atlasdb-client

protected final <T, E extends Exception> T runTaskThrowOnConflict(TransactionTask<T, E> task, Transaction txn)
    throws E, TransactionFailedException {
  checkOpen();
  try {
    T ret = task.execute(txn);
    if (txn.isUncommitted()) {
      txn.commit();
    }
    return ret;
  } finally {
    // Make sure that anyone trying to retain a reference to this transaction
    // will not be able to use it.
    if (txn.isUncommitted()) {
      txn.abort();
    }
  }
}

相关文章