modifying persistent read path for range-scan

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Optimization
    • Fully Compatible
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Implement bounded range over sample parts using `InternalPlanner::collectionScan` instead of DBDirectClient

      Implement chunk reassembly

      Add some fallback handling for missed chunks

      Something like:
      ```

      auto exec = InternalPlanner::collectionScan(

              opCtx,

              Coll,

              PlanYieldPolicy::YieldPolicy::YIELD_AUTO,

              InternalPlanner::FORWARD,

              Boost::none,

              makeSampleBound(collectionUuid, method, sampleSize, 0),

              makeSampleBound(collectionUuid, method, sampleSize, std::numeric_limits<int>::max()));

         std::vector<BSONObj> chunks;

         BSONObj chunkDoc;

         while (exec->getNext(&chunkDoc, nullptr) == PlanExecutor::ADVANCED)

            chunks.push_back(chunkDoc.getOwned());

      ```

            Assignee:
            Natalie Hill
            Reporter:
            Sidarth Krishna (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: