Package org.apache.cassandra.db.tries
Class InMemoryTrie.SpaceExhaustedException
java.lang.Object
java.lang.Throwable
java.lang.Exception
org.apache.cassandra.db.tries.InMemoryTrie.SpaceExhaustedException
- All Implemented Interfaces:
Serializable
- Enclosing class:
- InMemoryTrie<T>
Because we use buffers and 32-bit pointers, the trie cannot grow over 2GB of size. This exception is thrown if
a trie operation needs it to grow over that limit.
To avoid this problem, users should query
InMemoryTrie.reachedAllocatedSizeThreshold() from time to time. If the call
returns true, they should switch to a new trie (e.g. by flushing a memtable) as soon as possible. The threshold
is configurable, and is set by default to 10% under the 2GB limit to give ample time for the switch to happen.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
SpaceExhaustedException
public SpaceExhaustedException()
-