On Tue, Dec 14, 2021 at 10:56 AM Luke Mauldin <lukemaul...@icloud.com> wrote: > > When compression is enabled at the SVN level, what exactly does it compress? > Does it just compress the original file content and the deltas?
I am really just a layman so cannot explain it accurately ... but here goes. SVN does not really store the original file content. It stores a DELTA which does a bit of a compression itself. I believe it uses the xdelta algorithm and when you add a new file it just creates the delta against an empty file. The structure of the revision files in a fsfs repository is explained here: http://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure One section of the file is the "representations". This is where the file DELTA would be stored. I believe the representations are the only part of the revision file where additional "compression" might then be applied (using zlib or lz4). So the representation is always somewhat compressed in that it is a DELTA and then it can optionally be additionally compressed using zlib or lz4. The revision file contains other housekeeping and indexing data that is not compressed. Of course if you are storing this on ZFS with compression enabled then the entire file is just compressed. Mark