Ensure config.chunks stability during upgrade/downgrade

XMLWordPrintableJSON

    • Fully Compatible
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      The functions that upgrade/downgrade the metadata format of config.chunks entries should be executed either before or after a chunk operation. Otherwise, we could end up in the following situation:

      • Chunk operation starts
      • Chunk operation get chunk document(s) to operate with
      • Upgrade/downgrade starts
      • Upgrade/downgrade finishes
      • Chunk operation commits

      A possibility could be holding the ChunkOpLock while upgrading/downgrading config.chunks metadata.
      Also, for chunk operations, the current chunk document should be get/modified under the same lock before committing (without relying on ChunkType arguments arriving from non-lock-guarded sections as it happens for example here).

            Assignee:
            Sergi Mateo Bellido
            Reporter:
            Pierlauro Sciarelli
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: