Merge lp:~mterry/duplicity/disappearing-source into lp:duplicity/0.6
Proposed by
Michael Terry
Status: | Merged |
---|---|
Merged at revision: | 935 |
Proposed branch: | lp:~mterry/duplicity/disappearing-source |
Merge into: | lp:duplicity/0.6 |
Prerequisite: | lp:~mterry/duplicity/manifest-oddities |
Diff against target: |
103 lines (+42/-2) 3 files modified
bin/duplicity (+5/-2) duplicity/diffdir.py (+13/-0) testing/tests/restarttest.py (+24/-0) |
To merge this branch: | bzr merge lp:~mterry/duplicity/disappearing-source |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
duplicity-team | Pending | ||
Review via email: mp+195461@code.launchpad.net |
Description of the change
When restarting a backup, we may accidentally skip the first chunk of one of the source files. To reproduce this,:
1) interrupt a backup
2) delete the source file it was in the middle of
3) restart the backup
When replaying the source iterator to find where to resume from, we can't notice that the file is gone until we've already iterated past where it would be!
The solution I came up with is to just let duplicity stuff the data we accidentally read back into the source iterator.
This is actually a data loss bug, because it's possible to back up corrupted files (that are missing their first chunk).
To post a comment you must log in.
I wrote in https:/ /code.launchpad .net/~mterry/ duplicity/ catch-seq- copy-error/ +merge/ 186106:
"I'm getting the feeling that all three bugs have the same root cause: a missing sequence object. 662442 can be explained by a missing patch in the sequence, and the other two can be explained by a missing first snapshot..."
This bug might explain those problems... A missing first snapshot if the file is tiny or a missing first patch in the sequence if it's larger.