Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-21987

Optimize RO scan in sorted indexes

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 3.0.0-beta2
    • None
    • Docs Required, Release Notes Required

    Description

      This issue applies to aimem/aipersist primarily. Optimization for rocksdb might be done separately.

      • add new method to SortedIndexStorage, like "readOnlyScan", that returns a simple cursor
      • in the implementation we should use alternative cursor implementation for RO scans - it should delegate calls to B+Tree cursor
      • reuse existing tests where possible
      • call new method where necessary (PartitionReplicaListener#scanSortedIndex)

      IMPORTANT: we should throw an exception if somebody scans an index and IndexStorage#getNextRowIdToBuild is not null. It should be a new error, like "IndexNotBuiltException"

      Attachments

        Issue Links

          Activity

            People

              phillippko Philipp Shergalis
              ibessonov Ivan Bessonov
              Ivan Bessonov Ivan Bessonov
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h
                  1h