public class SliceQueryFilter extends java.lang.Object implements IDiskAtomFilter
Modifier and Type | Class and Description |
---|---|
static class |
SliceQueryFilter.Serializer |
Modifier and Type | Field and Description |
---|---|
int |
compositesToGroup |
int |
count |
static int |
IGNORE_TOMBSTONED_PARTITIONS
A special value for compositesToGroup that indicates that partitioned tombstones should not be included in results
or count towards the limit.
|
boolean |
reversed |
ColumnSlice[] |
slices |
Constructor and Description |
---|
SliceQueryFilter(ColumnSlice[] slices,
boolean reversed,
int count)
Constructor that accepts multiple slices.
|
SliceQueryFilter(ColumnSlice[] slices,
boolean reversed,
int count,
int compositesToGroup) |
SliceQueryFilter(ColumnSlice slice,
boolean reversed,
int count) |
SliceQueryFilter(ColumnSlice slice,
boolean reversed,
int count,
int compositesToGroup) |
SliceQueryFilter(Composite start,
Composite finish,
boolean reversed,
int count) |
SliceQueryFilter(Composite start,
Composite finish,
boolean reversed,
int count,
int compositesToGroup) |
Modifier and Type | Method and Description |
---|---|
SliceQueryFilter |
cloneShallow() |
void |
collectReducedColumns(ColumnFamily container,
java.util.Iterator<Cell> reducedColumns,
DecoratedKey key,
int gcBefore,
long now)
collects columns from reducedColumns into returnCF.
|
ColumnCounter |
columnCounter(CellNameType comparator,
long now) |
boolean |
countCQL3Rows(CellNameType comparator) |
Composite |
finish() |
java.util.Comparator<Cell> |
getColumnComparator(CellNameType comparator) |
java.util.Iterator<Cell> |
getColumnIterator(ColumnFamily cf)
returns an iterator that returns columns from the given columnFamily
matching the Filter criteria in sorted order.
|
OnDiskAtomIterator |
getColumnIterator(DecoratedKey key,
ColumnFamily cf) |
int |
getLiveCount(ColumnFamily cf,
long now) |
java.util.Iterator<RangeTombstone> |
getRangeTombstoneIterator(ColumnFamily source) |
OnDiskAtomIterator |
getSSTableColumnIterator(SSTableReader sstable,
DecoratedKey key)
returns an iterator that returns columns from the given SSTable
matching the Filter criteria in sorted order.
|
OnDiskAtomIterator |
getSSTableColumnIterator(SSTableReader sstable,
FileDataInput file,
DecoratedKey key,
RowIndexEntry indexEntry)
Get an iterator that returns columns from the given SSTable using the opened file
matching the Filter criteria in sorted order.
|
boolean |
hasStaticSlice(CFMetaData cfm) |
boolean |
isFullyCoveredBy(ColumnFamily cf,
long now)
Whether the provided cf, that is assumed to contain the head of the
partition, contains enough data to cover this filter.
|
boolean |
isHeadFilter() |
boolean |
isReversed() |
int |
lastCounted() |
int |
lastLive() |
int |
lastTombstones() |
boolean |
maySelectPrefix(CType type,
Composite prefix) |
protected boolean |
respectTombstoneThresholds() |
void |
setStart(Composite start) |
boolean |
shouldInclude(SSTableReader sstable) |
Pair<SliceQueryFilter,SliceQueryFilter> |
splitOutStaticSlice(CFMetaData cfm)
Splits this filter into two SliceQueryFilters: one that slices only the static columns, and one that slices the
remainder of the normal data.
|
Composite |
start() |
java.lang.String |
toString() |
ColumnFamily |
trim(ColumnFamily cf,
int trimTo,
long now) |
void |
updateColumnsLimit(int newLimit) |
SliceQueryFilter |
withUpdatedCount(int newCount) |
SliceQueryFilter |
withUpdatedSlices(ColumnSlice[] newSlices) |
SliceQueryFilter |
withUpdatedStart(Composite newStart,
CFMetaData cfm) |
public static final int IGNORE_TOMBSTONED_PARTITIONS
public final ColumnSlice[] slices
public final boolean reversed
public volatile int count
public final int compositesToGroup
public SliceQueryFilter(Composite start, Composite finish, boolean reversed, int count)
public SliceQueryFilter(Composite start, Composite finish, boolean reversed, int count, int compositesToGroup)
public SliceQueryFilter(ColumnSlice slice, boolean reversed, int count)
public SliceQueryFilter(ColumnSlice slice, boolean reversed, int count, int compositesToGroup)
public SliceQueryFilter(ColumnSlice[] slices, boolean reversed, int count)
public SliceQueryFilter(ColumnSlice[] slices, boolean reversed, int count, int compositesToGroup)
public SliceQueryFilter cloneShallow()
cloneShallow
in interface IDiskAtomFilter
public SliceQueryFilter withUpdatedCount(int newCount)
public SliceQueryFilter withUpdatedSlices(ColumnSlice[] newSlices)
public boolean hasStaticSlice(CFMetaData cfm)
public Pair<SliceQueryFilter,SliceQueryFilter> splitOutStaticSlice(CFMetaData cfm)
public SliceQueryFilter withUpdatedStart(Composite newStart, CFMetaData cfm)
public java.util.Iterator<Cell> getColumnIterator(ColumnFamily cf)
IDiskAtomFilter
getColumnIterator
in interface IDiskAtomFilter
public OnDiskAtomIterator getColumnIterator(DecoratedKey key, ColumnFamily cf)
getColumnIterator
in interface IDiskAtomFilter
public OnDiskAtomIterator getSSTableColumnIterator(SSTableReader sstable, DecoratedKey key)
IDiskAtomFilter
getSSTableColumnIterator
in interface IDiskAtomFilter
public OnDiskAtomIterator getSSTableColumnIterator(SSTableReader sstable, FileDataInput file, DecoratedKey key, RowIndexEntry indexEntry)
IDiskAtomFilter
getSSTableColumnIterator
in interface IDiskAtomFilter
file
- Already opened file data input, saves us opening another onekey
- The key of the row we are about to iterate overpublic java.util.Comparator<Cell> getColumnComparator(CellNameType comparator)
getColumnComparator
in interface IDiskAtomFilter
public void collectReducedColumns(ColumnFamily container, java.util.Iterator<Cell> reducedColumns, DecoratedKey key, int gcBefore, long now)
IDiskAtomFilter
collectReducedColumns
in interface IDiskAtomFilter
protected boolean respectTombstoneThresholds()
public int getLiveCount(ColumnFamily cf, long now)
getLiveCount
in interface IDiskAtomFilter
public ColumnCounter columnCounter(CellNameType comparator, long now)
columnCounter
in interface IDiskAtomFilter
public ColumnFamily trim(ColumnFamily cf, int trimTo, long now)
public Composite start()
public Composite finish()
public void setStart(Composite start)
public int lastCounted()
public int lastTombstones()
public int lastLive()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean isReversed()
isReversed
in interface IDiskAtomFilter
public void updateColumnsLimit(int newLimit)
updateColumnsLimit
in interface IDiskAtomFilter
public boolean maySelectPrefix(CType type, Composite prefix)
maySelectPrefix
in interface IDiskAtomFilter
public boolean shouldInclude(SSTableReader sstable)
shouldInclude
in interface IDiskAtomFilter
public boolean isHeadFilter()
isHeadFilter
in interface IDiskAtomFilter
public boolean countCQL3Rows(CellNameType comparator)
countCQL3Rows
in interface IDiskAtomFilter
public boolean isFullyCoveredBy(ColumnFamily cf, long now)
IDiskAtomFilter
isFullyCoveredBy
in interface IDiskAtomFilter
public java.util.Iterator<RangeTombstone> getRangeTombstoneIterator(ColumnFamily source)
getRangeTombstoneIterator
in interface IDiskAtomFilter
Copyright © 2018 The Apache Software Foundation