Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-3739

RDBDocumentStore: allow schema evolution part 1: check for required columns, log unexpected new columns

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0.25, 1.2.9, 1.3.13
    • 1.0.26, 1.2.10, 1.3.14, 1.4
    • rdbmk
    • None

    Description

      In the future, we may have to add new table columns (for instance, see OAK-3730).

      We can somewhat decouple database changes from code changes by only using new columns when they are present.

      However, we need to make sure that once the columns have been added and the system has started to use them, no older code writes to the DB (potentially causing inconsistencies because of not updating these columns).

      To prevent this, code could check that it understands all columns it finds on startup. If there are unknown columns, it would need to abort and log an error that explains the compatibility issue.

      Attachments

        Activity

          People

            reschke Julian Reschke
            reschke Julian Reschke
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: