[ https://issues.apache.org/jira/browse/OAK-6207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Julian Reschke updated OAK-6207: -------------------------------- Issue Type: Improvement (was: Technical task) Parent: (was: OAK-1266) > RDBDocumentStore: allow schema evolution part 2: record schema version when > updating/inserting rows > --------------------------------------------------------------------------------------------------- > > Key: OAK-6207 > URL: https://issues.apache.org/jira/browse/OAK-6207 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: documentmk, rdbmk > Reporter: Julian Reschke > Assignee: Julian Reschke > Labels: candidate_oak_1_0, candidate_oak_1_2, candidate_oak_1_4, > candidate_oak_1_6 > Fix For: 1.7.0, 1.8 > > Attachments: OAK-6207.diff, OAK-6207.diff, OAK-6207.diff > > > Currently, new/extra columns get reported on startup but then are ignored. > This allows evolving the schema without immediately breaking existing > installs. However, we won't know whether a value in a new column was put > there deliberately or just wasn't updated properly by old code. > Idea: > - add a new "VERSION" column > - when inserting/updating rows, record the DB schema version understood by > the code doing the update > Advantages: > - allows relatively easy check what versions of code are writing to the DB > - inexpensive > - helps finding rows that need a migration step > Disadvantage: > - the row itself will be unreliably until all instances connecting to the DB > maintain it -- This message was sent by Atlassian JIRA (v6.4.14#64029)