par2 backend fails copying sigtar and manifest to cross-device local backend
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Duplicity |
Fix Released
|
Medium
|
Unassigned |
Bug Description
duplicity 0.7.11
When using par2+file as the backend, where the file destination is on a different file system than duplicity cache, the destination will be missing the manifest and sigtar files.
Here's the cause: When using the localbackend alone, duplicity will first attempt to use _move, which will fail ("[Errno 18] Invalid cross-device link"), causing it to fall back to _put. When par2backend is used with it, it will attempt to use the original method (self.wrapped_
The fix is simple: Make the move function behave the same as BackendWrapper.
In duplicity/
def move(self, local, remote):
With:
def move_wrap(self, local, remote):
res = self.wrapped_
if not res:
def move(self, local, remote):
return True
Changed in duplicity: | |
importance: | Undecided → Medium |
milestone: | none → 0.7.13 |
status: | New → Fix Committed |
Changed in duplicity: | |
status: | Fix Committed → Fix Released |
I highly suspect the following bug is a duplicate of this: https:/ /bugs.launchpad .net/duplicity/ +bug/1609966 .