Class AppendableSymbolManager<STRING_LIKE_TYPE>
java.lang.Object
com.illumon.iris.db.tables.appendable.symbolmanagers.AppendableSymbolManager<STRING_LIKE_TYPE>
- All Implemented Interfaces:
BufferedAppendable,SymbolManager<STRING_LIKE_TYPE>
- Direct Known Subclasses:
BoundedAppendableSymbolManager,StrictAppendableSymbolManager
public abstract class AppendableSymbolManager<STRING_LIKE_TYPE>
extends Object
implements SymbolManager<STRING_LIKE_TYPE>, BufferedAppendable
Abstract parent for symbol managers that grow their mapping tables by appending to a column.
-
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Flush all appended data to the underlying store, release any resources held, and force all appended data to be persisted to permanent storage.voidSeeBufferedAppendableColumn.doneAppending()for reference.voidEnsure the file for this column exists.voidflush()Write all appended data to the underlying store and prepare for subsequent writes.voidforce()Force all flushed data to be persisted to permanent storage.voidrelease()Release any resources held.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.illumon.iris.db.tables.appendable.BufferedAppendable
maybeForce, prepareCheckpointMethods inherited from interface com.illumon.iris.db.tables.utils.SymbolManager
getSymbolId
-
Method Details
-
toString
-
flush
public void flush()Description copied from interface:BufferedAppendableWrite all appended data to the underlying store and prepare for subsequent writes. Does not implyBufferedAppendable.force().- Specified by:
flushin interfaceBufferedAppendable
-
force
public void force()Description copied from interface:BufferedAppendableForce all flushed data to be persisted to permanent storage. Will consistently and atomically persist the last prepared checkpoint in implementations that implementBufferedAppendable.prepareCheckpoint(). Does not implyBufferedAppendable.flush(), as this is a distinct operation in all implementations. May be called concurrently by threads other than the "writing thread".- Specified by:
forcein interfaceBufferedAppendable
-
doneAppending
public void doneAppending()SeeBufferedAppendableColumn.doneAppending()for reference. -
close
public void close()Description copied from interface:BufferedAppendableFlush all appended data to the underlying store, release any resources held, and force all appended data to be persisted to permanent storage. This should be the final access to this appendable (if successful) with the exception of any asynchronousBufferedAppendable.force()operations. ABufferedAppendable.release()is appropriate afterwards, especially on error.- Specified by:
closein interfaceBufferedAppendable
-
release
public void release()Description copied from interface:BufferedAppendableRelease any resources held. Called after an error in preparation for termination. For external callers, this should be done as the final access to this column with the exception of any asynchronousBufferedAppendable.force()operations.- Specified by:
releasein interfaceBufferedAppendable
-
ensureFileExists
public void ensureFileExists()Ensure the file for this column exists.
-