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

Missing early return in merge_chunks_command.cpp

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.1.7
    • Affects Version/s: None
    • Component/s: Sharding
    • None
    • Fully Compatible
    • ALL
    • Sharding 2019-01-28
    • 0

      To commit a mergeChunk, the shard merging the chunks sends _configsvrMergeChunkCommit to the CSRS, which atomically updates the chunks collection. If the response to this request is lost, the shard will retry, but may receive an error if the first attempt finished successfully. Because of this, the shard checks if the metadata was updated after getting a failed response.

      Currently the shard logs a message in this case and will still throw with the failed response, but before the refactor in this commit for SERVER-32198, it returned Status::OK(). This change in behavior was likely unintentional and can be fixed by returning Status::OK() here.

            Assignee:
            jack.mulrow@mongodb.com Jack Mulrow
            Reporter:
            jack.mulrow@mongodb.com Jack Mulrow
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: