Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-38564

Eliminate redundant prepareSpecForCreate calls and improve/modularize our create indexes request checking/parsing story

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Storage
    • Labels:

      Description

      We appear to leave createIndexes command object checking to deep down in the MultiIndexBlock, as well as scattering it around in higher level locations. There is redundancy, as well as annoyingly backwards – in the sense that requests should be validated at a higher level – and difficult to discover user error handling and checking.

      For example, create_indexes.cpp calls prepareSpecForCreate, which is also done in MultiIndexBlock::init and in the IndexCatalog::removeExistingIndexes.

      This ticket is to explore and eliminate redundancy if possible, add documentation to prepareSpecForCreate (what it does, precisely), raise error checking to a higher level such that lower level code invariants because it was given a bad request, and fundamentally create an actual story for index build request error checking and handling.

      This will improve the IndexBuildCoordinator's ability to find/match build requests for its operations, because the specs will all be correct before they arrive in the coordinator.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              backlog-server-execution Backlog - Execution Team
              Reporter:
              dianna.hohensee Dianna Hohensee
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: