Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-37092

Investigate roll back logic on increments

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • Major
    • None
    • Cheshire-Cat
    • tools
    • None

    Description

      Need to ensure that rollback logic on incremental backups is done correctly.

      I think it might currently be done like this:

      1. Take a full backup on Monday night that is seqNo 0 - 100
      2. There is a failover that causes a roll back to seqNo 90
      3. Take a incremental backup on Tuesday that gets seqNo 90 - 120

      If this is what happens the backups are not consistency

      What should happen is that the incremental should detect that there is a roll back and should search backward to points of consistency where it can continue on from.
      In the case above it would use the previous version start seqNo. i,e SeqNo 0- 120

      Another example:

      1. Full backup 0 - 100
      2. Incremental 101 - 120
      3. Incremental 121 - 140
      4. Failover that causes a roll back to seqNo 110

      In this case the next incremental would try:

      1. seqNo 141- 160, That would issue a rollback
      2. seqNo 121 - 160. That again would issue a rollback
      3. seqNo 101 - 160. That should work.

      When it comes to merging, the backup would look like this before the merge:

      1. Full backup 0 - 100
      2. Inc 101 - 120
      3. inc 121 -140
      4. inc 101 - 160

      For now it should merge the Fill and the last inc backup and simple remove the two in the middle.

      In the cases above we should be using the failover log along with the snapshot information.

      In the future we might want to do something smarter with the two incremental backups that have diverse.

      It's worth noting that this is a very rare edge case.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              carlos.gonzalez Carlos Gonzalez Betancort (Inactive)
              pvarley Patrick Varley (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty