Package org.apache.cassandra.db
Interface PartitionPosition
- All Superinterfaces:
ByteComparable,Comparable<PartitionPosition>,RingPosition<PartitionPosition>
- All Known Implementing Classes:
BufferDecoratedKey,CachedHashDecoratedKey,DecoratedKey,NativeDecoratedKey,PreHashedDecoratedKey,Token.KeyBound
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classstatic enumstatic classNested classes/interfaces inherited from interface org.apache.cassandra.utils.bytecomparable.ByteComparable
ByteComparable.Version -
Field Summary
FieldsFields inherited from interface org.apache.cassandra.utils.bytecomparable.ByteComparable
EMPTY -
Method Summary
Modifier and TypeMethodDescriptionasComparableBound(boolean before) Produce a byte-comparable representation for the position before or after the key.asComparableBytes(ByteComparable.Version version) Produce a prefix-free byte-comparable representation of the key, i.e.booleankind()Methods inherited from interface org.apache.cassandra.utils.bytecomparable.ByteComparable
byteComparableAsStringMethods inherited from interface java.lang.Comparable
compareToMethods inherited from interface org.apache.cassandra.dht.RingPosition
getPartitioner, getToken, minValue
-
Field Details
-
serializer
-
-
Method Details
-
kind
PartitionPosition.Kind kind() -
isMinimum
boolean isMinimum()- Specified by:
isMinimumin interfaceRingPosition<PartitionPosition>
-
asComparableBytes
Produce a prefix-free byte-comparable representation of the key, i.e. such a sequence of bytes that any pair x, y of valid positions (with the same key column types and partitioner), x.compareTo(y) == compareLexicographicallyUnsigned(x.asComparableBytes(), y.asComparableBytes()) and x.asComparableBytes() is not a prefix of y.asComparableBytes() We use a two-component tuple for decorated keys, and a one-component tuple for key bounds, where the terminator byte is chosen to yield the correct comparison result. No decorated key can be a prefix of another (per the tuple encoding), and no key bound can be a prefix of one because it uses a terminator byte that is different from the tuple separator.- Specified by:
asComparableBytesin interfaceByteComparable
-
asComparableBound
Produce a byte-comparable representation for the position before or after the key. This does nothing for token boundaries (which are already at a position between valid keys), and changes the terminator byte for keys.
-