Class FDBLocalityUtil
- java.lang.Object
-
- com.apple.foundationdb.record.provider.foundationdb.FDBLocalityUtil
-
- All Implemented Interfaces:
FDBLocalityProvider
public class FDBLocalityUtil extends Object implements FDBLocalityProvider
An implementation of theFDBLocalityProvider
interface that uses foundationDB'sLocalityUtil
API to discover the storage locations of keys within a cluster.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description CloseableAsyncIterator<byte[]>
getBoundaryKeys(Transaction tr, byte[] begin, byte[] end)
Return an estimate of the keys boundaries within the given range.static FDBLocalityUtil
instance()
Get the single instance of this utility class.
-
-
-
Method Detail
-
instance
@Nonnull public static FDBLocalityUtil instance()
Get the single instance of this utility class.- Returns:
- the only instance of the class
-
getBoundaryKeys
@Nonnull public CloseableAsyncIterator<byte[]> getBoundaryKeys(@Nonnull Transaction tr, @Nonnull byte[] begin, @Nonnull byte[] end)
Return an estimate of the keys boundaries within the given range.The method results in a
CloseableAsyncIterator
of keysk
such thatbegin <= k < end
andk
is located at the start of a contiguous range stored on a single server.- Specified by:
getBoundaryKeys
in interfaceFDBLocalityProvider
- Parameters:
tr
- the transaction on which to base the querybegin
- the inclusive start of the rangeend
- the exclusive end of the range- Returns:
- a sequence of keys denoting the start of single-server ranges
- See Also:
LocalityUtil.getBoundaryKeys(Transaction, byte[], byte[])
-
-