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

Implement a downgrade floor between 4.4 and 4.2

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Major - P3
    • Resolution: Fixed
    • None
    • 4.2.6, 4.4.0-rc0, 4.7.0
    • Storage
    • None
    • Fully Compatible
    • Execution Team 2020-03-23, Execution Team 2020-04-06
    • 50

    Description

      We have realized that we need a downgrade floor, because it's possible that multi-shard multi-document transactions will generate data that existing versions of MongoDB 4.2 won't be able to read.

      We are planning to increment the WiredTiger compatibility version in MongoDB 4.2 from 3.2.2 to 3.3.0 in WT-5892. In order for the downgrade floor to work we need MongoDB to also set some specific compatibility version strings in wiredtiger_open.

      We need to set compatibility=(release=3.2) to make sure that MongoDB 4.2 keeps producing log files in a format that older releases understand.

      We need to set compatibility=(requires_max=3.3) to allow the 4.2 release after this change is included to open a database generated by 4.4 (after it's had a clean shutdown).

      There is a related but orthogonal change in WT-5890 - where we are changing it so that WiredTiger in MongoDB 4.4 will use compatibility version 10.0, and generate log files that can't be read by older versions of MongoDB. On clean shutdown the compatibility version is decreased so that it generates log files that correspond to compatibility=3.3.

      Attachments

        Issue Links

          Activity

            People

              daniel.gottlieb@mongodb.com Daniel Gottlieb
              alexander.gorrod@mongodb.com Alexander Gorrod
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: