stored: add dedupable backend#1663
Conversation
5bfa1f6 to
cb416e8
Compare
095f8f7 to
2c6f955
Compare
|
One thing i was not sure about was the error reporting. Currently the device itself outputs error messages whenever they are caught and prints an Emsg with it. This makes it easier to give good error reports but there will probably be a lot of double reports ala: An alternative would be to set errno appropriately (printing a dmsg instead) and let the normal bareos routines handle the error reporting. The problem is that some problems do not have an associated error number since they might be internal logic errors so there is no way to give a helpful message in that case. |
4a0948a to
61553e0
Compare
de34fb5 to
8aa5c24
Compare
2fe906d to
770d33b
Compare
30ac0cd to
d6864c9
Compare
|
Make the file indices etc 64 bit |
pstorz
left a comment
There was a problem hiding this comment.
Please see comments. I think we should rename the device to dedupable
core/src/stored/backends/dedup_device.d/bareos-sd.d/device/dedup.conf.example
Outdated
Show resolved
Hide resolved
pstorz
left a comment
There was a problem hiding this comment.
Please check for docs changes. I also would remove the remaining sentence about the deprecated bacula format in mediaformat.rst:
From Bacula >= 1.27 and therefore Bareos, each block contains only records of a single job.
41bc522 to
b2ba5cb
Compare
c05462f to
d077b5e
Compare
Now accepts any number of datafiles. This makes a lot of code much cleaner since you do not need to constantly find out if a certain data file is the "aligned" one or not.
It was previously not possible to abort once a commit was started (since the savestate was moved immediately on the CommitBlock call). This was fixed by instead waiting for the commit to finish before issueing the move.
This allows us to split up records into multiple parts with desirable sizes. For example a 129k record may be split into a 128k part and a 1k part so that at least the first 128k are dedupable. The record header now is not treated special anymore. Its just another (tiny) bit of data.
a98f1b3 to
a9cc902
Compare
Thank you for contributing to the Bareos Project!
The dedup backend makes it possible for deduplicating filesystems to deduplicate backed up data.
Based of pr #1662
Please check
If you have any questions or problems, please give a comment in the PR.
Helpful documentation and best practices
Checklist for the reviewer of the PR (will be processed by the Bareos team)
Make sure you check/merge the PR using
devtools/pr-toolto have some simple automated checks run and a proper changelog record added.General
Check backport lineSource code quality
Tests