THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Gliffy Diagram | ||||
---|---|---|---|---|
|
Getting Iterators from Indexes and Index Repositories
The logic for getting iterators from indexes accommodates various optimizations including:
- avoiding the management of multiple subiterators if this index has no sub indexes
- for indexes having subiterators:
- choosing sorted or non-sorted management of subiterators
- doing a 1-time conversion to a "flat index" for snapshots (supporting sorted, set, and bag)
Gliffy Diagram | ||||
---|---|---|---|---|
|
Organization of Streams over Indexes
...
Splititerator impls are defined in these classes:
- FSSubtypesIndexImpl
- FSBagIndex
- FSSetIndex
- FSSortedIndex
Organization of Iterators over Indexes
Gliffy Diagram | ||||
---|---|---|---|---|
|
Class rename tables
Indexes
v3 name | v2 name |
---|---|
FSIndex_subtypes | IndexImpl (in FSIndexRepo) |
FSIndex_iicp | IndexIteratorCachePair (in FSIndexRepo) |
FsIndex_singletype | FSLeafIndexImpl |
FsIndex_bag | FSBagIndex |
FsIndex_set | FSRBTSetIndex |
FsIndex_sorted | FSIntArrayIndex |
FsIndex_flat |
Iterators
v3 name | v2 name |
---|---|
FsIterator_singletype | |
FsIterator_subtypes | |
FsIterator_subtypes_snapshot | SnapshotPointerIterator |
FsIterator_bag | PointerIterator in FSBagIndex |
FsIterator_set | PointerIterator in FSRBTSetIndex |
FsIterator_sorted | PointerIterator in FSIntArrayIndex |
FsIterator_subtypes_list | |
FsIterator_subtypes_ordered | PointerIteratorOrdered |
FsIterator_subtypes_unordered | PointerIteratorUnordered |