On Fri, Mar 22, 2024 at 8:26 PM Thomas Munro <thomas.mu...@gmail.com> wrote: > Hmm, this discussion seems to assume that we only use > copy_file_range() to copy/clone whole segment files, right? That's > great and may even get most of the available benefit given typical > databases with many segments of old data that never changes, but... I > think copy_write_range() allows us to go further than the other > whole-file clone techniques: we can stitch together parts of an old > backup segment file and an incremental backup to create a new file. > If you're interested in minimising disk use while also removing > dependencies on the preceding chain of backups, then it might make > sense to do that even if you *also* have to read the data to compute > the checksums, I think? That's why I mentioned it: if > copy_file_range() (ie sub-file-level block sharing) is a solution in > search of a problem, has the world ever seen a better problem than > pg_combinebackup?
That makes sense; it's just a different part of the code than I thought we were talking about. -- Robert Haas EDB: http://www.enterprisedb.com