Package org.apache.cassandra.db.tries
package org.apache.cassandra.db.tries
-
ClassDescriptionIn-memory trie built for fast modification and reads executing concurrently with writes from a single mutator thread.InMemoryTrie<T>In-memory trie built for fast modification and reads executing concurrently with writes from a single mutator thread.Because we use buffers and 32-bit pointers, the trie cannot grow over 2GB of size.Somewhat similar to
Trie.MergeResolver, this encapsulates logic to be applied whenever new content is being upserted into aInMemoryTrie.SlicedTrie<T>Represents a sliced view of a trie, i.e.Trie<T>Base class for tries.Resolver of content of merged nodes.Trie.Cursor<T>A trie cursor.Resolver of content of merged nodes, used for two-source merges (i.e.Used byTrie.Cursor.advanceToContent(org.apache.cassandra.db.tries.Trie.ResettingTransitionsReceiver)to track the transitions and backtracking taken.Used byTrie.Cursor.advanceMultiple(org.apache.cassandra.db.tries.Trie.TransitionsReceiver)to feed the transitions taken.Adapter interface providing the methods aTrie.Walkerto aConsumer, so that the latter can be used withTrie.process(org.apache.cassandra.db.tries.Trie.Walker<T, R>).Trie.Walker<T,R> A push interface for walking over the trie.TrieEntriesIterator<T,V> Convertor of trie entries to iterator where each entry is passed throughTrieEntriesIterator.mapContent(T, byte[], int)(to be implemented by descendants).TrieEntriesWalker<T,V> Walker of trie entries, used with Trie.process to walk all content in order and provide the path through which values are reached.