B2 Lifecycle Settings
I just pruned my Duplicacy backups which removed 3 revisions but B2 didn't appear to show any change to the Storage Bucket. I noticed that there is a lifecycle setting which by default says:
Keep all versions of the file (default)
Would the above setting mean even if we prune our files that we would not save any space or would the filenames be different so "pruning" would save us space?
Duplicacy uses the two-step fossil collection algorithm. In the first step it only renames unreferenced chunks into fossils and doesn't reclaim any space. Only in the second step when it can be sure that fossils are no longer needed they will be remove to release the space. If you run the prune command with the -exclusive switch the two-step fossil collection will be disabled which means unreferenced chunks are removed right away.
The B2 version setting doesn't matter. Turning chunks into fossils is done by hiding the file (via the b2_hide_file api call). Moreover, all Duplicacy chunks are immutable -- if they are two versions of the same file they are going to be identical.
I had noticed that I was seeing multiple versions of the snapshot revisions files on B2, which I didn't understand why that would be happening. Part of the pull request I submitted for PR #154 I believe fixed this behavior. This was only merged yesterday, so the next published release should fix that behavior.
My claim that the B2 version setting doesn't matter is wrong. The Keep all versions of the file setting is recommended. See #362 for details.
This issue has been mentioned on Duplicacy Forum. There might be relevant details there:
https://forum.duplicacy.com/t/backblaze-b2-bucket-size-does-not-match-storage-size/6836/3
This issue has been mentioned on Duplicacy Forum. There might be relevant details there:
https://forum.duplicacy.com/t/backblaze-b2-bucket-size-does-not-match-storage-size/6836/5