Race between remove shard and access to database may cause NULL pointer crash

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Duplicate
    • Priority: Major - P3
    • None
    • Affects Version/s: 3.2.0-rc3
    • Component/s: Sharding
    • None
    • Sharding
    • ALL
    • Sharding C (11/20/15), Sharding D (12/11/15), Sharding E (01/08/16)
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      ShardRegistry::getShard will return nullptr if the shard id is not found. In the steady state, the metadata should never contain a database which references a removed shard, because we drain the shard first and clear the cached metadata. However, in theory, there is a very narrow race condition where a query might be referencing a database entry, which points to a shard, which was just removed.

              Assignee:
              [DO NOT USE] Backlog - Sharding Team
              Reporter:
              Kaloian Manassiev
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: