Class AbstractPersistentOffHeapCache<K,V>
java.lang.Object
java.util.AbstractMap<K,V>
org.terracotta.offheapstore.OffHeapHashMap<K,V>
org.terracotta.offheapstore.AbstractLockedOffHeapHashMap<K,V>
org.terracotta.offheapstore.AbstractOffHeapClockCache<K,V>
org.terracotta.offheapstore.disk.persistent.AbstractPersistentOffHeapCache<K,V>
- All Implemented Interfaces:
ConcurrentMap<K,V>, ReadWriteLock, Map<K, V>, Persistent, HashingMap<K, V>, MapInternals, PinnableCache<K, V>, PinnableSegment<K, V>, Segment<K, V>, StorageEngine.Owner
- Direct Known Subclasses:
PersistentReadWriteLockedOffHeapClockCache
public abstract class AbstractPersistentOffHeapCache<K,V>
extends AbstractOffHeapClockCache<K,V>
implements Persistent
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractLockedOffHeapHashMap
AbstractLockedOffHeapHashMap.LockedEntryIterator, AbstractLockedOffHeapHashMap.LockedEntrySet, AbstractLockedOffHeapHashMap.LockedKeyIterator, AbstractLockedOffHeapHashMap.LockedKeySetNested classes/interfaces inherited from class OffHeapHashMap
OffHeapHashMap.EncodingIterator, OffHeapHashMap.EncodingSet, OffHeapHashMap.EntryIterator, OffHeapHashMap.EntrySet, OffHeapHashMap.HashIterator<T>, OffHeapHashMap.KeyIterator, OffHeapHashMap.KeySetNested classes/interfaces inherited from class AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> -
Field Summary
FieldsFields inherited from class OffHeapHashMap
ENCODING, ENTRY_BIT_SHIFT, ENTRY_SIZE, hashtable, hashTablePage, KEY_HASHCODE, modCount, removedSlots, reprobeLimit, RESERVED_STATUS_BITS, size, STATUS, STATUS_REMOVED, STATUS_USED, storageEngine, tableSource -
Constructor Summary
ConstructorsConstructorDescriptionAbstractPersistentOffHeapCache(MappedPageSource tableSource, PersistentStorageEngine<? super K, ? super V> storageEngine, boolean bootstrap) AbstractPersistentOffHeapCache(MappedPageSource tableSource, PersistentStorageEngine<? super K, ? super V> storageEngine, int tableSize, boolean bootstrap) -
Method Summary
Modifier and TypeMethodDescriptionvoidbootstrap(ObjectInput input) voidclose()voidflush()voidpersist(ObjectOutput output) Methods inherited from class AbstractOffHeapClockCache
evict, evictable, getAndPin, getEvictionIndex, hit, isPinned, putPinned, setPinning, storageEngineFailure, tableExpansionFailureMethods inherited from class AbstractLockedOffHeapHashMap
clear, computeIfAbsentWithMetadata, computeIfPresentWithMetadata, computeWithMetadata, containsKey, createEntrySet, createKeySet, destroy, fill, fill, get, getAndSetMetadata, getEncodingForHashAndBinary, getMetadata, getValueAndSetMetadata, installMappingForHashAndEncoding, put, put, putIfAbsent, readLock, remove, remove, removeAllWithHash, removeMapping, removeNoReturn, replace, replace, shrink, size, writeLockMethods inherited from class OffHeapHashMap
added, createEncodingSet, encodingSet, entrySet, fill, freePendingTables, getAllocatedMemory, getAtTableOffset, getDataAllocatedMemory, getDataOccupiedMemory, getDataSize, getDataVitalMemory, getEntryAtTableOffset, getOccupiedMemory, getRemovedSlotCount, getReprobeLength, getSize, getSlotForHashAndEncoding, getStorageEngine, getTableCapacity, getUsedSlotCount, getVitalMemory, indexFor, indexFor, isAvailable, isPresent, isRemoved, isRemoved, isTerminating, isTerminating, isThiefForTableAllocations, keySet, readLong, readLong, removeAtTableOffset, removed, shrinkTable, spread, tryIncreaseReprobe, updated, updateEncodingMethods inherited from class AbstractMap
clone, containsValue, equals, hashCode, isEmpty, putAll, toString, valuesMethods inherited from interface ConcurrentMap
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAllMethods inherited from interface HashingMap
removeAllWithHashMethods inherited from interface Map
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, put, putAll, remove, size, valuesMethods inherited from interface MapInternals
getAllocatedMemory, getDataAllocatedMemory, getDataOccupiedMemory, getDataSize, getDataVitalMemory, getOccupiedMemory, getRemovedSlotCount, getReprobeLength, getSize, getTableCapacity, getUsedSlotCount, getVitalMemoryMethods inherited from interface ReadWriteLock
readLock, writeLockMethods inherited from interface Segment
computeIfAbsentWithMetadata, computeIfPresentWithMetadata, computeWithMetadata, destroy, fill, fill, getAndSetMetadata, getLock, getMetadata, getValueAndSetMetadata, put, removeNoReturn, shrink
-
Field Details
-
MAGIC
private static final int MAGIC- See Also:
-
-
Constructor Details
-
AbstractPersistentOffHeapCache
public AbstractPersistentOffHeapCache(MappedPageSource tableSource, PersistentStorageEngine<? super K, ? super V> storageEngine, boolean bootstrap) -
AbstractPersistentOffHeapCache
public AbstractPersistentOffHeapCache(MappedPageSource tableSource, PersistentStorageEngine<? super K, ? super V> storageEngine, int tableSize, boolean bootstrap)
-
-
Method Details
-
flush
- Specified by:
flushin interfacePersistent- Throws:
IOException
-
close
- Specified by:
closein interfacePersistent- Throws:
IOException
-
persist
- Specified by:
persistin interfacePersistent- Throws:
IOException
-
bootstrap
- Specified by:
bootstrapin interfacePersistent- Throws:
IOException
-