Class LocalAppendableColumn<DATA_TYPE>

java.lang.Object
com.illumon.iris.db.tables.appendable.BaseAppendableColumn<DATA_TYPE>
com.illumon.iris.db.tables.appendable.local.LocalAppendableColumn<DATA_TYPE>
All Implemented Interfaces:
AppendableColumn<DATA_TYPE>, BufferedAppendable, BufferedAppendableColumn<DATA_TYPE>, TableTransactionProcessor
Direct Known Subclasses:
FixedWidthObjectCodecLocalAppendableColumn, NanosBackedTimeAppendableColumn, SymbolManagerLocalAppendableColumn, VariableWidthObjectLocalAppendableColumn

public class LocalAppendableColumn<DATA_TYPE>
extends BaseAppendableColumn<DATA_TYPE>
implements TableTransactionProcessor, BufferedAppendableColumn<DATA_TYPE>

AppendableColumn for output to a local column location.

Application threads must synchronize in order to ensure mutually-exclusive concurrent access for all operations other than force() (which may proceed concurrently).

release() or close() must only be called after all other operations besides force() are completed, in any thread. The expectation is that after an error in writing applications will release() scarce resources, or after successful writing applications will close() the column.

Note that code assumes correct usage, and omits validation for alignment issues that would occur with incorrect usage.