Hackers,
when pg_dump is run with both --serializable-deferrable and -j options to pg_dump, it returns errors:
pg_dump: [archiver (db)] query failed: ERROR: a snapshot-importing transaction must not be READ ONLY DEFERRABLE
pg_dump: [archiver (db)] query failed: ERROR: a snapshot-importing transaction must not be READ ONLY DEFERRABLE
pg_dump: [archiver (db)] query failed: ERROR: a snapshot-importing transaction must not be READ ONLY DEFERRABLE
pg_dump: [parallel archiver] query was: SET TRANSACTION SNAPSHOT '0001E300-1'
pg_dump: [archiver (db)] query failed: ERROR: a snapshot-importing transaction must not be READ ONLY DEFERRABLE
I've checked it on 9.4.0 and 9.3.5.
So, these options are incompatible now.
Could we start snapshot-importing transaction with repeatable read isolation level? AFAICS, they should read exactly same data as snapshot-exporting serializable transaction.
If not, could pg_dump return some more friendly error before actually trying to dump?
------
With best regards,
Alexander Korotkov.