}
private void commitTest(final boolean explicit)
throws Exception {
final TransactionRunner runner = new TransactionRunner(env);
runner.setAllowNestedTransactions(DbCompat.NESTED_TRANSACTIONS);
assertNull(currentTxn.getTransaction());
runner.run(new TransactionWorker() {
public void doWork() throws Exception {
final Transaction txn1 = currentTxn.getTransaction();
assertNotNull(txn1);
assertNull(map.put(ONE, ONE));
assertEquals(ONE, map.get(ONE));
runner.run(new TransactionWorker() {
public void doWork() throws Exception {
final Transaction txn2 = currentTxn.getTransaction();
assertNotNull(txn2);
if (DbCompat.NESTED_TRANSACTIONS) {
assertTrue(txn1 != txn2);