MigrationDestinationManager::report() may access null _migrationCloningProgress

XMLWordPrintableJSON

    • Sharding NYC
    • Fully Compatible
    • ALL
    • v6.0, v5.0
    • 149
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      It is possible for commands like _recvChunkStatus to be called prior to MigrationDestinationManager::start() having been called on that node. For example, there may be a primary failover on the recipient shard where the new primary of the recipient shard has never participated in a chunk migration and the primary of the donor shard runs _recvChunkStatus. The donor shard expects to learn the recipient shard has abandoned the chunk migration through the _recvChunkStatus response.

      long long _getNumCloned() {
          return _migrationCloningProgress->getNumCloned();
      }
      
      long long _getNumBytesCloned() {
          return _migrationCloningProgress->getNumBytes();
      }
      

      Returning 0 from MigrationDestinationManager::_getNumCloned() and MigrationDestinationManager::_getNumBytesCloned() will probably suffice.

              Assignee:
              Andrew Witten (Inactive)
              Reporter:
              Max Hirschhorn
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: