public abstract class SSTableWriter extends SSTable implements Transactional
Modifier and Type | Class and Description |
---|---|
static class |
SSTableWriter.Factory |
protected class |
SSTableWriter.TransactionalProxy |
Transactional.AbstractTransactional
Modifier and Type | Field and Description |
---|---|
protected SerializationHeader |
header |
protected boolean |
isTransient |
protected long |
keyCount |
protected long |
maxDataAge |
protected MetadataCollector |
metadataCollector |
protected java.util.Collection<SSTableFlushObserver> |
observers |
protected java.util.UUID |
pendingRepair |
protected long |
repairedAt |
protected RowIndexEntry.IndexSerializer |
rowIndexEntrySerializer |
protected SSTableWriter.TransactionalProxy |
txnProxy |
components, compression, descriptor, first, last, metadata, optimizationStrategy, TOMBSTONE_HISTOGRAM_BIN_SIZE, TOMBSTONE_HISTOGRAM_SPOOL_SIZE, TOMBSTONE_HISTOGRAM_TTL_ROUND_SECONDS
Modifier | Constructor and Description |
---|---|
protected |
SSTableWriter(Descriptor descriptor,
long keyCount,
long repairedAt,
java.util.UUID pendingRepair,
boolean isTransient,
TableMetadataRef metadata,
MetadataCollector metadataCollector,
SerializationHeader header,
java.util.Collection<SSTableFlushObserver> observers) |
Modifier and Type | Method and Description |
---|---|
void |
abort() |
java.lang.Throwable |
abort(java.lang.Throwable accumulate) |
abstract RowIndexEntry |
append(UnfilteredRowIterator iterator)
Appends partition data to this writer.
|
void |
close() |
java.lang.Throwable |
commit(java.lang.Throwable accumulate) |
static void |
copy(Descriptor tmpdesc,
Descriptor newdesc,
java.util.Set<Component> components) |
static SSTableWriter |
create(Descriptor descriptor,
long keyCount,
long repairedAt,
java.util.UUID pendingRepair,
boolean isTransient,
int sstableLevel,
SerializationHeader header,
java.util.Collection<Index> indexes,
LifecycleNewTracker lifecycleNewTracker) |
static SSTableWriter |
create(Descriptor descriptor,
long keyCount,
long repairedAt,
java.util.UUID pendingRepair,
boolean isTransient,
SerializationHeader header,
java.util.Collection<Index> indexes,
LifecycleNewTracker lifecycleNewTracker) |
static SSTableWriter |
create(Descriptor descriptor,
java.lang.Long keyCount,
java.lang.Long repairedAt,
java.util.UUID pendingRepair,
boolean isTransient,
TableMetadataRef metadata,
MetadataCollector metadataCollector,
SerializationHeader header,
java.util.Collection<Index> indexes,
LifecycleNewTracker lifecycleNewTracker) |
static SSTableWriter |
create(TableMetadataRef metadata,
Descriptor descriptor,
long keyCount,
long repairedAt,
java.util.UUID pendingRepair,
boolean isTransient,
int sstableLevel,
SerializationHeader header,
java.util.Collection<Index> indexes,
LifecycleNewTracker lifecycleNewTracker) |
protected java.util.Map<MetadataType,MetadataComponent> |
finalizeMetadata() |
SSTableReader |
finish(boolean openResult) |
SSTableReader |
finish(long repairedAt,
long maxDataAge,
boolean openResult) |
SSTableReader |
finished()
Open the resultant SSTableReader once it has been fully written, and all related state
is ready to be finalised including other sstables being written involved in the same operation
|
long |
getEstimatedOnDiskBytesWritten() |
abstract long |
getFilePointer() |
abstract long |
getOnDiskFilePointer() |
static void |
hardlink(Descriptor tmpdesc,
Descriptor newdesc,
java.util.Set<Component> components) |
abstract void |
mark() |
abstract SSTableReader |
openEarly()
Open the resultant SSTableReader before it has been fully written
|
abstract SSTableReader |
openFinalEarly()
Open the resultant SSTableReader once it has been fully written, but before the
_set_ of tables that are being written together as one atomic operation are all ready
|
void |
prepareToCommit() |
void |
releaseMetadataOverhead() |
static void |
rename(Descriptor tmpdesc,
Descriptor newdesc,
java.util.Set<Component> components) |
abstract void |
resetAndTruncate() |
SSTableWriter |
setMaxDataAge(long maxDataAge) |
SSTableWriter |
setOpenResult(boolean openResult) |
SSTableWriter |
setRepairedAt(long repairedAt) |
protected StatsMetadata |
statsMetadata() |
protected abstract SSTableWriter.TransactionalProxy |
txnProxy() |
addComponents, appendTOC, bytesOnDisk, componentsFor, decorateKey, delete, discoverComponentsFor, estimateRowsFromIndex, getAllFilePaths, getBounds, getColumnFamilyName, getFilename, getIndexFilename, getKeyspaceName, getMinimalKey, getPartitioner, metadata, readTOC, readTOC, toString, tryComponentFromFilename, tryDescriptorFromFilename, validateRepairedMetadata
protected long repairedAt
protected java.util.UUID pendingRepair
protected boolean isTransient
protected long maxDataAge
protected final long keyCount
protected final MetadataCollector metadataCollector
protected final RowIndexEntry.IndexSerializer rowIndexEntrySerializer
protected final SerializationHeader header
protected final SSTableWriter.TransactionalProxy txnProxy
protected final java.util.Collection<SSTableFlushObserver> observers
protected SSTableWriter(Descriptor descriptor, long keyCount, long repairedAt, java.util.UUID pendingRepair, boolean isTransient, TableMetadataRef metadata, MetadataCollector metadataCollector, SerializationHeader header, java.util.Collection<SSTableFlushObserver> observers)
protected abstract SSTableWriter.TransactionalProxy txnProxy()
public static SSTableWriter create(Descriptor descriptor, java.lang.Long keyCount, java.lang.Long repairedAt, java.util.UUID pendingRepair, boolean isTransient, TableMetadataRef metadata, MetadataCollector metadataCollector, SerializationHeader header, java.util.Collection<Index> indexes, LifecycleNewTracker lifecycleNewTracker)
public static SSTableWriter create(Descriptor descriptor, long keyCount, long repairedAt, java.util.UUID pendingRepair, boolean isTransient, int sstableLevel, SerializationHeader header, java.util.Collection<Index> indexes, LifecycleNewTracker lifecycleNewTracker)
public static SSTableWriter create(TableMetadataRef metadata, Descriptor descriptor, long keyCount, long repairedAt, java.util.UUID pendingRepair, boolean isTransient, int sstableLevel, SerializationHeader header, java.util.Collection<Index> indexes, LifecycleNewTracker lifecycleNewTracker)
public static SSTableWriter create(Descriptor descriptor, long keyCount, long repairedAt, java.util.UUID pendingRepair, boolean isTransient, SerializationHeader header, java.util.Collection<Index> indexes, LifecycleNewTracker lifecycleNewTracker)
public abstract void mark()
public abstract RowIndexEntry append(UnfilteredRowIterator iterator)
iterator
- the partition to writeiterator
wasn't empty, null
otherwise.FSWriteError
- if a write to the dataFile failspublic abstract long getFilePointer()
public abstract long getOnDiskFilePointer()
public long getEstimatedOnDiskBytesWritten()
public abstract void resetAndTruncate()
public SSTableWriter setRepairedAt(long repairedAt)
public SSTableWriter setMaxDataAge(long maxDataAge)
public SSTableWriter setOpenResult(boolean openResult)
public abstract SSTableReader openEarly()
public abstract SSTableReader openFinalEarly()
public SSTableReader finish(long repairedAt, long maxDataAge, boolean openResult)
public SSTableReader finish(boolean openResult)
public SSTableReader finished()
public final void prepareToCommit()
prepareToCommit
in interface Transactional
public final java.lang.Throwable commit(java.lang.Throwable accumulate)
commit
in interface Transactional
public final java.lang.Throwable abort(java.lang.Throwable accumulate)
abort
in interface Transactional
public final void close()
close
in interface java.lang.AutoCloseable
close
in interface Transactional
public final void abort()
protected java.util.Map<MetadataType,MetadataComponent> finalizeMetadata()
protected StatsMetadata statsMetadata()
public void releaseMetadataOverhead()
public static void rename(Descriptor tmpdesc, Descriptor newdesc, java.util.Set<Component> components)
public static void copy(Descriptor tmpdesc, Descriptor newdesc, java.util.Set<Component> components)
public static void hardlink(Descriptor tmpdesc, Descriptor newdesc, java.util.Set<Component> components)
Copyright © 2009- The Apache Software Foundation