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

Migration manager recovery should handle a refined shard key

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.5.1
    • Component/s: Sharding
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4
    • Sprint:
      Sharding 2020-07-13, Sharding 2020-06-01, Sharding 2020-06-15, Sharding 2020-06-29, Sharding 2020-07-27
    • Linked BF Score:
      27

      Description

      As part restarting the balancer on step up, the migration manager reschedules migrations with entries in config.migrations, finding the moved chunk by searching the latest routing table for each migration's minimum boundary. After a shard key refine, this may lead to comparing boundaries with a different number of fields, which can lead to spurious overlap or failure to overlap, triggering incorrect recovery or an unhandled exception. Instead the bounds should be extended to account for the refined key.

        Attachments

          Activity

            People

            Assignee:
            pierlauro.sciarelli Pierlauro Sciarelli
            Reporter:
            jack.mulrow Jack Mulrow
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: