Package org.rocksdb
Class TransactionDB
- java.lang.Object
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public class TransactionDB extends RocksDB
Database with Transaction support
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTransactionDB.DeadlockInfostatic classTransactionDB.DeadlockPathstatic classTransactionDB.KeyLockInfo-
Nested classes/interfaces inherited from class org.rocksdb.RocksDB
RocksDB.CountAndSize, RocksDB.LiveFiles, RocksDB.Version
-
-
Field Summary
-
Fields inherited from class org.rocksdb.RocksDB
DEFAULT_COLUMN_FAMILY, NOT_FOUND, options_
-
Fields inherited from class org.rocksdb.RocksObject
nativeHandle_
-
Fields inherited from class org.rocksdb.AbstractImmutableNativeReference
owningHandle_
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TransactionbeginTransaction(WriteOptions writeOptions)TransactionbeginTransaction(WriteOptions writeOptions, Transaction oldTransaction)TransactionbeginTransaction(WriteOptions writeOptions, TransactionOptions transactionOptions)TransactionbeginTransaction(WriteOptions writeOptions, TransactionOptions transactionOptions, Transaction oldTransaction)voidclose()This is similar tocloseE()except that it silently ignores any errors.voidcloseE()This is similar toclose()except that it throws an exception if any error occurs.protected voiddisposeInternal(long handle)java.util.List<Transaction>getAllPreparedTransactions()TransactionDB.DeadlockPath[]getDeadlockInfoBuffer()java.util.Map<java.lang.Long,TransactionDB.KeyLockInfo>getLockStatusData()Returns map of all locks held.TransactiongetTransactionByName(java.lang.String transactionName)static TransactionDBopen(DBOptions dbOptions, TransactionDBOptions transactionDbOptions, java.lang.String path, java.util.List<ColumnFamilyDescriptor> columnFamilyDescriptors, java.util.List<ColumnFamilyHandle> columnFamilyHandles)Open a TransactionDB, similar toRocksDB.open(DBOptions, String, List, List).static TransactionDBopen(Options options, TransactionDBOptions transactionDbOptions, java.lang.String path)Open a TransactionDB, similar toRocksDB.open(Options, String).voidsetDeadlockInfoBufferSize(int targetSize)-
Methods inherited from class org.rocksdb.RocksDB
cancelAllBackgroundWork, compactFiles, compactFiles, compactRange, compactRange, compactRange, compactRange, compactRange, compactRange, compactRange, compactRange, compactRange, continueBackgroundWork, createColumnFamilies, createColumnFamilies, createColumnFamily, delete, delete, delete, delete, delete, delete, delete, delete, delete, delete, deleteFile, deleteFilesInRanges, deleteRange, deleteRange, deleteRange, deleteRange, destroyColumnFamilyHandle, destroyDB, disableFileDeletions, dropColumnFamilies, dropColumnFamily, enableAutoCompaction, enableFileDeletions, endTrace, flush, flush, flush, flushWal, get, get, get, get, get, get, get, get, get, get, get, get, get, get, get, get, get, get, getAggregatedLongProperty, getApproximateMemTableStats, getApproximateMemTableStats, getApproximateSizes, getApproximateSizes, getColumnFamilyMetaData, getColumnFamilyMetaData, getDefaultColumnFamily, getEnv, getLatestSequenceNumber, getLiveFiles, getLiveFiles, getLiveFilesMetaData, getLongProperty, getLongProperty, getMapProperty, getMapProperty, getName, getPropertiesOfAllTables, getPropertiesOfAllTables, getPropertiesOfTablesInRange, getPropertiesOfTablesInRange, getProperty, getProperty, getSnapshot, getSortedWalFiles, getUpdatesSince, ingestExternalFile, ingestExternalFile, keyMayExist, keyMayExist, keyMayExist, keyMayExist, keyMayExist, keyMayExist, keyMayExist, keyMayExist, level0StopWriteTrigger, level0StopWriteTrigger, listColumnFamilies, loadLibrary, loadLibrary, maxMemCompactionLevel, maxMemCompactionLevel, merge, merge, merge, merge, merge, merge, merge, merge, multiGet, multiGet, multiGet, multiGet, multiGetAsList, multiGetAsList, multiGetAsList, multiGetAsList, newIterator, newIterator, newIterator, newIterator, newIterators, newIterators, numberLevels, numberLevels, open, open, open, open, openAsSecondary, openAsSecondary, openReadOnly, openReadOnly, openReadOnly, openReadOnly, openReadOnly, openReadOnly, pauseBackgroundWork, promoteL0, promoteL0, put, put, put, put, put, put, put, put, put, put, releaseSnapshot, remove, remove, remove, remove, resetStats, rocksdbVersion, setDBOptions, setOptions, setOptions, setPreserveDeletesSequenceNumber, singleDelete, singleDelete, singleDelete, singleDelete, startTrace, storeOptionsInstance, suggestCompactRange, suggestCompactRange, syncWal, tryCatchUpWithPrimary, verifyChecksum, write, write
-
Methods inherited from class org.rocksdb.RocksObject
disposeInternal, getNativeHandle
-
Methods inherited from class org.rocksdb.AbstractImmutableNativeReference
disOwnNativeHandle, isOwningHandle
-
Methods inherited from class org.rocksdb.AbstractNativeReference
dispose, finalize
-
-
-
-
Method Detail
-
open
public static TransactionDB open(Options options, TransactionDBOptions transactionDbOptions, java.lang.String path) throws RocksDBException
Open a TransactionDB, similar toRocksDB.open(Options, String).- Parameters:
options-Optionsinstance.transactionDbOptions-TransactionDBOptionsinstance.path- the path to the rocksdb.- Returns:
- a
TransactionDBinstance on success, null if the specifiedTransactionDBcan not be opened. - Throws:
RocksDBException- if an error occurs whilst opening the database.
-
open
public static TransactionDB open(DBOptions dbOptions, TransactionDBOptions transactionDbOptions, java.lang.String path, java.util.List<ColumnFamilyDescriptor> columnFamilyDescriptors, java.util.List<ColumnFamilyHandle> columnFamilyHandles) throws RocksDBException
Open a TransactionDB, similar toRocksDB.open(DBOptions, String, List, List).- Parameters:
dbOptions-DBOptionsinstance.transactionDbOptions-TransactionDBOptionsinstance.path- the path to the rocksdb.columnFamilyDescriptors- list of column family descriptorscolumnFamilyHandles- will be filled with ColumnFamilyHandle instances- Returns:
- a
TransactionDBinstance on success, null if the specifiedTransactionDBcan not be opened. - Throws:
RocksDBException- if an error occurs whilst opening the database.
-
closeE
public void closeE() throws RocksDBExceptionThis is similar toclose()except that it throws an exception if any error occurs. This will not fsync the WAL files. If syncing is required, the caller must first callRocksDB.syncWal()orRocksDB.write(WriteOptions, WriteBatch)using an empty write batch withWriteOptions.setSync(boolean)set to true. See alsoclose().- Overrides:
closeEin classRocksDB- Throws:
RocksDBException- if an error occurs whilst closing.
-
close
public void close()
This is similar tocloseE()except that it silently ignores any errors. This will not fsync the WAL files. If syncing is required, the caller must first callRocksDB.syncWal()orRocksDB.write(WriteOptions, WriteBatch)using an empty write batch withWriteOptions.setSync(boolean)set to true. See alsoclose().
-
beginTransaction
public Transaction beginTransaction(WriteOptions writeOptions)
-
beginTransaction
public Transaction beginTransaction(WriteOptions writeOptions, TransactionOptions transactionOptions)
-
beginTransaction
public Transaction beginTransaction(WriteOptions writeOptions, Transaction oldTransaction)
-
beginTransaction
public Transaction beginTransaction(WriteOptions writeOptions, TransactionOptions transactionOptions, Transaction oldTransaction)
-
getTransactionByName
public Transaction getTransactionByName(java.lang.String transactionName)
-
getAllPreparedTransactions
public java.util.List<Transaction> getAllPreparedTransactions()
-
getLockStatusData
public java.util.Map<java.lang.Long,TransactionDB.KeyLockInfo> getLockStatusData()
Returns map of all locks held.- Returns:
- a map of all the locks held.
-
getDeadlockInfoBuffer
public TransactionDB.DeadlockPath[] getDeadlockInfoBuffer()
-
setDeadlockInfoBufferSize
public void setDeadlockInfoBufferSize(int targetSize)
-
disposeInternal
protected final void disposeInternal(long handle)
- Overrides:
disposeInternalin classRocksDB
-
-