The ShardServerCatalogCacheLoader doesn't interrupt ongoing operations on step up

XMLWordPrintableJSON

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

      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
              Reporter:
              Sergi Mateo Bellido
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: