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

Best effort checks in range deleter can leave orphans

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 5.2.0, 5.0.4
    • 5.0.3, 4.4.9, 5.1.0-rc0
    • None
    • Fully Compatible
    • ALL
    • v5.1, v5.0, v4.4
    • Sharding EMEA 2021-11-01
    • 24

    Description

      This problem is present in different flavours on different branches.

      The objective of this ticket is to understand if such checks can be eliminated (e.g. relying on the local collection catalog) and - if not - how to fix the issue.

      v5.1 / v5.0

      Before scheduling a range deletion task, a filtering metadata check (with eventual refresh) is performed to ensure the uuid is matching.
      Afterwards, when actually scheduling the range cleanup, the metadata are checked again without refresh and without any guarantee on collection changes.

      If - for some reason - the filtering metadata get cleared between the first and second check, the range deletion task ends up failing, leaving orphans on the node.

      v4.4
      The two checks are happening subsequently, but still metadata could be cleared in the very narrow interleaving between them.

      Attachments

        Activity

          People

            pierlauro.sciarelli@mongodb.com Pierlauro Sciarelli
            pierlauro.sciarelli@mongodb.com Pierlauro Sciarelli
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: