public void setRollbackOnly() {
    TransactionID txId = currentTransactionIdThreadLocal.get();
    if (txId == null) {
      throw new TransactionException("no transaction started");
    }

    TransactionContext currentTx = contextMap.get(txId);

    currentTx.setRollbackOnly(true);
  }