public interface LowLevelCache
Modifier and Type | Interface and Description |
---|---|
static class |
LowLevelCache.Priority |
Modifier and Type | Method and Description |
---|---|
DiskRangeList |
getFileData(Object fileKey,
DiskRangeList range,
long baseOffset,
DataCache.DiskRangeListFactory factory,
LowLevelCacheCounters qfCounters,
DataCache.BooleanRef gotAllData)
Gets file data for particular offsets.
|
long |
markBuffersForProactiveEviction(Predicate<CacheTag> predicate,
boolean isInstantDeallocation)
Iterates through the file entries of this cache and for those that match the given predicate (aka have a matching
CacheTag) will have their buffers marked for (a later) proactive eviction.
|
void |
notifyEvicted(MemoryBuffer buffer)
Notifies the cache that a particular buffer should be removed due to eviction.
|
long[] |
putFileData(Object fileKey,
DiskRange[] ranges,
MemoryBuffer[] chunks,
long baseOffset,
LowLevelCache.Priority priority,
LowLevelCacheCounters qfCounters,
CacheTag tag)
Puts file data into cache.
|
DiskRangeList getFileData(Object fileKey, DiskRangeList range, long baseOffset, DataCache.DiskRangeListFactory factory, LowLevelCacheCounters qfCounters, DataCache.BooleanRef gotAllData)
baseOffset
- base offset for the ranges (stripe/stream offset in case of ORC).long[] putFileData(Object fileKey, DiskRange[] ranges, MemoryBuffer[] chunks, long baseOffset, LowLevelCache.Priority priority, LowLevelCacheCounters qfCounters, CacheTag tag)
void notifyEvicted(MemoryBuffer buffer)
long markBuffersForProactiveEviction(Predicate<CacheTag> predicate, boolean isInstantDeallocation)
predicate
- - matching the predicate indicates eligibility for proactive evictionisInstantDeallocation
- - whether to ask allocator to deallocate eligible buffers immediately after markingCopyright © 2022 The Apache Software Foundation. All rights reserved.