On Sun, Mar 7, 2021 at 2:19 PM Justin Pryzby <pry...@telsasoft.com> wrote: > > Earlier in this thread, I suggested to implement an option to pg_restore to > avoid outputting compression, in order to allow restoring with a different > compression (by using the default_toast_compression GUC). Now, it seems like > that's even more important, to allow restoring into binaries --without-lz4. > (the pg_dump isn't in LZ4 format, it just needs to not say "COMPRESSION LZ4").
IMHO, we have an option with pg_dump that should be sufficient, no? but I agree that having such an option with restore will give more flexibility basically, by using the same dump we can restore to binary --with-lz4 as well as without-lz4 if such option exists with restore as well. But it seems in pg_restore we process token by token so if we want to implement such an option then I think we will have to parse the complete string of CREATE TABLE command and remove the compression option if it exists for any attribute. I am not sure whether providing this option is worth the complexity? > I think you're planning to allow the CREATE TABLE to succeed in any case, but > it's not helpful if the DBA has to restore the schema, and then alter all the > text columns to set PGLZ, and then restore the data and post-data. > > Also, I suggest to rename the pg_dump option: > | --no-compression-methods do not dump compression methods > > I have a patch to pg_dump to support alternate compression in the dump itself > (in addition to zlib), so the name will be confusing. I suggest > --no-toast-compression, like the GUC. And the same for pg_restore. Ok. -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com