Details
Assignee
UnassignedUnassignedReporter
Dmytro ZghobaDmytro ZghobaNeeds Review
YesNeeds QA
YesNeeds Doc
YesAffects versions
Priority
Medium
Details
Details
Assignee
Unassigned
UnassignedReporter
Dmytro Zghoba
Dmytro ZghobaNeeds Review
Yes
Needs QA
Yes
Needs Doc
Yes
Affects versions
Priority
Smart Checklist
Smart Checklist
Smart Checklist
Created March 2, 2023 at 11:53 AM
Updated November 26, 2024 at 4:23 PM
As for 2.0.4, incremental backups are made as the linked list from the last backup to first/base.
With the structure, it is hard to maintain an incremental backup chain.
For example:
To get all increments from the last known increment, query a previous increment should be made in a loop till the base is reached.
To get all increments by the base, the query for an increment with src_base of the last found increment should be made in a loop till no more is returned.
Both queries should be made to get all increments by some intermediate.
new approach:
1. Stop using `src_backup`.
2. Add `base` field which is the name of root/base backup
3. dd `inc` field which is `0` value for base backup. every next incremental backup increments the value.
In this way, we can quickly find the base, the last, the number of increments made, and its total size in one query.
Other examples:
1. to know whether an incremental backup is a part of the last chain, it is enough to query the following:
2. size of increments after: