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

The ShardServerCatalogCacheLoader doesn't interrupt ongoing operations on step up

    • Fully Compatible
    • ALL
    • v4.4, v4.2, v4.0
    • Sharding EMEA 2021-07-26

      TheĀ ShardServerCatalogCacheLoader doesn't interrupt ongoing operations on step up as opposed to on step down. This could lead us to a deadlock (with timeout): if a node is a secondary node at this point but afterwards it is elected as primary, it might end up issuing a _flushRoutingTableCacheUpdates against itself. This could lead us to a deadlock if the current refresh was coming from the RecoverRefreshThread: the issued _flushRoutingTableCacheUpdates comand will end up waiting until the current refresh is completed but the current refresh cannot be completed because it is waiting for the completion of the _flushRoutingTableCacheUpdates command.

            Assignee:
            sergi.mateo-bellido@mongodb.com Sergi Mateo Bellido
            Reporter:
            sergi.mateo-bellido@mongodb.com Sergi Mateo Bellido
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: