public class MemoryBudget extends Object implements EnvConfigObserver
| Modifier and Type | Class and Description |
|---|---|
static class |
MemoryBudget.Totals
Common base class for shared and private totals.
|
| Modifier and Type | Method and Description |
|---|---|
static int |
byteArraySize(int arrayLen)
Returns the memory size occupied by a byte array of a given length.
|
void |
envConfigUpdate(DbConfigManager configManager,
EnvironmentMutableConfig ignore)
Respond to config updates.
|
long |
getAdminMemoryUsage()
Used for unit testing.
|
long |
getCacheMemoryUsage() |
long |
getDOSMemoryUsage()
Used for unit testing.
|
long |
getLocalCacheUsage() |
long |
getLockMemoryUsage()
Public for unit testing.
|
long |
getLogBufferBudget() |
long |
getMaxMemory() |
long |
getMinTreeMemoryUsage()
For unit tests.
|
MemoryBudget.Totals |
getTotals() |
long |
getTrackerBudget() |
long |
getTreeMemoryUsage()
Used for unit testing.
|
static int |
intArraySize(int arrayLen) |
boolean |
isTreeUsageAboveMinimum()
Returns whether eviction of INList information is allowed.
|
static int |
longArraySize(int arrayLen) |
static int |
objectArraySize(int arrayLen) |
static int |
shortArraySize(int arrayLen) |
String |
toString() |
static int |
tupleOutputSize(TupleOutput o) |
void |
updateAdminMemoryUsage(long increment)
Update the environment wide admin memory count, wake up the evictor if
necessary.
|
void |
updateDOSMemoryUsage(long increment)
Update the environment wide tree memory count, wake up the evictor if
necessary.
|
void |
updateLockMemoryUsage(long increment,
int lockTableIndex) |
void |
updateTreeMemoryUsage(long increment)
Update the environment wide tree memory count, wake up the evictor if
necessary.
|
void |
updateTxnMemoryUsage(long increment)
Update the environment wide txn memory count, wake up the evictor if
necessary.
|
public static boolean CLEANUP_DONE
public static boolean DEBUG_ADMIN
public static boolean DEBUG_LOCK
public static boolean DEBUG_TXN
public static boolean DEBUG_TREE
public static boolean DEBUG_DOS
public static final int LONG_OVERHEAD
public static final int ARRAY_OVERHEAD
public static final int ARRAY_SIZE_INCLUDED
public static final int OBJECT_OVERHEAD
public static final int OBJECT_ARRAY_ITEM_OVERHEAD
public static final int HASHMAP_OVERHEAD
public static final int HASHMAP_ENTRY_OVERHEAD
public static final int HASHSET_OVERHEAD
public static final int HASHSET_ENTRY_OVERHEAD
public static final int TWOHASHMAPS_OVERHEAD
public static final int TREEMAP_OVERHEAD
public static final int TREEMAP_ENTRY_OVERHEAD
public static final int MAPLN_OVERHEAD
public static final int LN_OVERHEAD
public static final int VERSIONEDLN_OVERHEAD
public static final int DUPCOUNTLN_OVERHEAD
public static final int BIN_FIXED_OVERHEAD
public static final int BINDELTA_OVERHEAD
public static final int DELTAINFO_OVERHEAD
public static final int SPARSE_TARGET_ENTRY_OVERHEAD
public static final int DEFAULT_TARGET_ENTRY_OVERHEAD
public static final int DEFAULT_KEYVALS_OVERHEAD
public static final int MAX_KEY_SIZE_KEYVALS_OVERHEAD
public static final int DEFAULT_LONG_REP_OVERHEAD
public static final int SPARSE_LONG_REP_OVERHEAD
public static final int DIN_FIXED_OVERHEAD
public static final int DBIN_FIXED_OVERHEAD
public static final int IN_FIXED_OVERHEAD
public static final int KEY_OVERHEAD
public static final int LOCKIMPL_OVERHEAD
public static final int THINLOCKIMPL_OVERHEAD
public static final int LOCKINFO_OVERHEAD
public static final int WRITE_LOCKINFO_OVERHEAD
public static final int TXN_OVERHEAD
public static final int CHECKPOINT_REFERENCE_SIZE
public static final int UTILIZATION_PROFILE_ENTRY
public static final int TFS_LIST_INITIAL_OVERHEAD
public static final int TFS_LIST_SEGMENT_OVERHEAD
public static final int LN_INFO_OVERHEAD
public static final int FILESUMMARYLN_OVERHEAD
public static final int INENTRY_OVERHEAD
public static final int DELTAINENTRY_OVERHEAD
public static final int DOS_WEAK_BINREF_OVERHEAD
public static final int DOS_OFFHEAP_BINREF_OVERHEAD
public static final int DOS_DEFERRED_LSN_BATCH_OVERHEAD
public static final int DOS_DEFERRED_DELTAREF_OVERHEAD
public static final int ARRAYLIST_OVERHEAD
public static final int TUPLE_OUTPUT_OVERHEAD
public static final int PRIMITIVE_LONG_ARRAY_ITEM_OVERHEAD
public static final long MIN_MAX_MEMORY_SIZE
public static final String MIN_MAX_MEMORY_SIZE_STRING
public void envConfigUpdate(DbConfigManager configManager, EnvironmentMutableConfig ignore) throws DatabaseException
envConfigUpdate in interface EnvConfigObserverDatabaseExceptionpublic boolean isTreeUsageAboveMinimum()
public long getMinTreeMemoryUsage()
public void updateTreeMemoryUsage(long increment)
increment - note that increment may be negative.public void updateDOSMemoryUsage(long increment)
increment - note that increment may be negative.public void updateTxnMemoryUsage(long increment)
increment - note that increment may be negative.public void updateAdminMemoryUsage(long increment)
increment - note that increment may be negative.public void updateLockMemoryUsage(long increment,
int lockTableIndex)
public long getLocalCacheUsage()
public long getLockMemoryUsage()
public long getCacheMemoryUsage()
public long getMaxMemory()
public long getTreeMemoryUsage()
public long getDOSMemoryUsage()
public long getAdminMemoryUsage()
public long getLogBufferBudget()
public long getTrackerBudget()
public static int tupleOutputSize(TupleOutput o)
public static int byteArraySize(int arrayLen)
public static int shortArraySize(int arrayLen)
public static int intArraySize(int arrayLen)
public static int longArraySize(int arrayLen)
public static int objectArraySize(int arrayLen)
public MemoryBudget.Totals getTotals()
Copyright © 2024. All rights reserved.