## org.h2.mvstore.db
Class TransactionStore

    java.lang.Object
      org.h2.mvstore.db.TransactionStore

    public class TransactionStore

extends java.lang.Object

A store that supports concurrent transactions.

Nested Class Summary
`static class` `TransactionStore.ArrayType` A data type that contains an array of objects with the specified data types.
`static class` `TransactionStore.Change` A change in a map.
`static class` `TransactionStore.Transaction` A transaction.
`static class` `TransactionStore.TransactionMap<K,V>` A map that supports transactions.
`static class` `TransactionStore.VersionedValueType` The value type for a versioned value.

Constructor Summary
`TransactionStore(MVStore store)` Create a new transaction store.
`TransactionStore(MVStore store, DataType dataType)` Create a new transaction store.

Method Summary
`TransactionStore.Transaction` `begin()` Begin a new transaction.
`void` `close()` Close the transaction store.
`java.util.List<TransactionStore.Transaction>` `getOpenTransactions()` Get the list of unclosed transactions that have pending writes.
`void` `logUndo(TransactionStore.Transaction t, long logId)` Remove a log entry.
`void` `setMaxTransactionId(int max)` Set the maximum transaction id, after which ids are re-used.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TransactionStore

    public TransactionStore(MVStore store)

  Create a new transaction store.

  Parameters:
    `store` - the store

### TransactionStore

    public TransactionStore(MVStore store,
                            DataType dataType)

  Create a new transaction store.

  Parameters:
    `store` - the store
    `dataType` - the data type for map keys and values

Method Detail

### setMaxTransactionId

    public void setMaxTransactionId(int max)

  Set the maximum transaction id, after which ids are re-used. If the old transaction is still in use when re-using an old id, the new transaction fails.

  Parameters:
    `max` - the maximum id

### getOpenTransactions

    public java.util.List<TransactionStore.Transaction> getOpenTransactions()

  Get the list of unclosed transactions that have pending writes.

  Returns:
    the list of transactions (sorted by id)

### close

    public void close()

  Close the transaction store.

### begin

    public TransactionStore.Transaction begin()

  Begin a new transaction.

  Returns:
    the transaction

### logUndo

    public void logUndo(TransactionStore.Transaction t,
                        long logId)

  Remove a log entry.

  Parameters:
    `t` - the transaction
    `logId` - the log id