public class NoOpTransactionStateStorage extends com.google.common.util.concurrent.AbstractIdleService implements TransactionStateStorage
TransactionStateStorage implementation that does nothing, i.e. does not maintain any actual state.| Constructor and Description |
|---|
NoOpTransactionStateStorage(SnapshotCodecProvider codecProvider) |
| Modifier and Type | Method and Description |
|---|---|
TransactionLog |
createLog(long timestamp)
Creates a new
TransactionLog. |
void |
deleteLogsOlderThan(long timestamp)
Removes any transaction logs with a timestamp older than the given value.
|
long |
deleteOldSnapshots(int numberToKeep)
Removes any snapshots prior to the
numberToKeep most recent. |
TransactionSnapshot |
getLatestSnapshot()
Returns the most recent snapshot that has been successfully written.
|
TransactionVisibilityState |
getLatestTransactionVisibilityState()
Returns the most recent transaction visibility state that has been successfully written.
|
String |
getLocation()
Returns a string representation of the location used for persistence.
|
List<TransactionLog> |
getLogsSince(long timestamp)
Returns all
TransactionLogs with a timestamp greater than or equal to the given timestamp. |
List<String> |
listLogs()
Returns the (non-qualified) names of available logs.
|
List<String> |
listSnapshots()
Returns the (non-qualified) names of available snapshots.
|
void |
setupStorage()
Create the directories required for the transaction state stage.
|
protected void |
shutDown() |
protected void |
startUp() |
void |
writeSnapshot(OutputStream out,
TransactionSnapshot snapshot)
Persists a snapshot of transaction state to an output stream.
|
void |
writeSnapshot(TransactionSnapshot snapshot)
Persists a snapshot of transaction state.
|
addListener, executor, isRunning, start, startAndWait, state, stop, stopAndWait, toString@Inject public NoOpTransactionStateStorage(SnapshotCodecProvider codecProvider)
protected void startUp()
throws Exception
startUp in class com.google.common.util.concurrent.AbstractIdleServiceExceptionprotected void shutDown()
throws Exception
shutDown in class com.google.common.util.concurrent.AbstractIdleServiceExceptionpublic void writeSnapshot(OutputStream out, TransactionSnapshot snapshot) throws IOException
TransactionStateStoragewriteSnapshot in interface TransactionStateStorageIOExceptionpublic void writeSnapshot(TransactionSnapshot snapshot) throws IOException
TransactionStateStoragewriteSnapshot in interface TransactionStateStorageIOExceptionpublic TransactionSnapshot getLatestSnapshot() throws IOException
TransactionStateStoragenull
if no completed snapshot files are found.getLatestSnapshot in interface TransactionStateStorageIOExceptionpublic TransactionVisibilityState getLatestTransactionVisibilityState() throws IOException
TransactionStateStoragenull if no completed snapshot files are found.getLatestTransactionVisibilityState in interface TransactionStateStorageTransactionVisibilityStateIOExceptionpublic long deleteOldSnapshots(int numberToKeep)
throws IOException
TransactionStateStoragenumberToKeep most recent.deleteOldSnapshots in interface TransactionStateStoragenumberToKeep - The number of most recent snapshots to keep.IOException - If an error occurs while deleting old snapshots.public List<String> listSnapshots() throws IOException
TransactionStateStoragelistSnapshots in interface TransactionStateStorageIOExceptionpublic List<TransactionLog> getLogsSince(long timestamp) throws IOException
TransactionStateStorageTransactionLogs with a timestamp greater than or equal to the given timestamp. Note that
the returned list is guaranteed to be sorted in ascending timestamp order.getLogsSince in interface TransactionStateStorageIOExceptionpublic TransactionLog createLog(long timestamp) throws IOException
TransactionStateStorageTransactionLog.createLog in interface TransactionStateStorageIOExceptionpublic void deleteLogsOlderThan(long timestamp)
throws IOException
TransactionStateStoragedeleteLogsOlderThan in interface TransactionStateStoragetimestamp - The timestamp to delete up to. Logs with a timestamp less than this value will be removed.IOException - If an error occurs while removing logs.public void setupStorage()
throws IOException
TransactionStateStoragesetupStorage in interface TransactionStateStorageIOException - If an error occurred during the creation of required directories for transaction state storage.public List<String> listLogs() throws IOException
TransactionStateStoragelistLogs in interface TransactionStateStorageIOExceptionpublic String getLocation()
TransactionStateStoragegetLocation in interface TransactionStateStorageCopyright © 2016 The Apache Software Foundation. All rights reserved.