org.apache.cassandra.db.compaction
Class PrecompactedRow
java.lang.Object
org.apache.cassandra.db.compaction.AbstractCompactedRow
org.apache.cassandra.db.compaction.PrecompactedRow
public class PrecompactedRow
- extends AbstractCompactedRow
PrecompactedRow merges its rows in its constructor in memory.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PrecompactedRow
public PrecompactedRow(DecoratedKey<?> key,
ColumnFamily compacted)
PrecompactedRow
public PrecompactedRow(DecoratedKey<?> key,
CompactionController controller,
ColumnFamily cf)
- it is caller's responsibility to call removeDeleted + removeOldShards from the cf before calling this constructor
PrecompactedRow
public PrecompactedRow(CompactionController controller,
java.util.List<SSTableIdentityIterator> rows)
removeDeletedAndOldShards
public static ColumnFamily removeDeletedAndOldShards(DecoratedKey<?> key,
CompactionController controller,
ColumnFamily cf)
removeDeletedAndOldShards
public static ColumnFamily removeDeletedAndOldShards(boolean shouldPurge,
CompactionController controller,
ColumnFamily cf)
write
public long write(java.io.DataOutput out)
throws java.io.IOException
- Description copied from class:
AbstractCompactedRow
- write the row (size + column index + filter + column data, but NOT row key) to @param out.
It is an error to call this if isEmpty is false. (Because the key is appended first,
so we'd have an incomplete row written.)
write() may change internal state; it is NOT valid to call write() or update() a second time.
- Specified by:
write
in class AbstractCompactedRow
- Throws:
java.io.IOException
update
public void update(java.security.MessageDigest digest)
- Description copied from class:
AbstractCompactedRow
- update @param digest with the data bytes of the row (not including row key or row size).
May be called even if empty.
update() may change internal state; it is NOT valid to call write() or update() a second time.
- Specified by:
update
in class AbstractCompactedRow
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in class AbstractCompactedRow
- Returns:
- true if there are no columns in the row AND there are no row-level tombstones to be preserved
columnCount
public int columnCount()
- Specified by:
columnCount
in class AbstractCompactedRow
- Returns:
- the number of columns in the row
maxTimestamp
public long maxTimestamp()
- Specified by:
maxTimestamp
in class AbstractCompactedRow
- Returns:
- the max column timestamp in the row
getFullColumnFamily
public ColumnFamily getFullColumnFamily()
throws java.io.IOException
- Returns:
- the full column family represented by this compacted row.
We do not provide this method for other AbstractCompactedRow, because this fits the whole row into
memory and don't make sense for those other implementations.
- Throws:
java.io.IOException
Copyright © 2011 The Apache Software Foundation