pgsql: Fix incremental backup interaction with XLOG_DBASE_CREATE_FILE_C
От | Robert Haas |
---|---|
Тема | pgsql: Fix incremental backup interaction with XLOG_DBASE_CREATE_FILE_C |
Дата | |
Msg-id | E1rhD8F-0024OH-Se@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Fix incremental backup interaction with XLOG_DBASE_CREATE_FILE_COPY. After XLOG_DBASE_CREATE_FILE_COPY, a correct incremental backup needs to copy in full everything with the database and tablespace OID mentioned in that record; but that record doesn't specifically mention the blocks, or even the relfilenumbers, of the affected relations. As a result, we were failing to copy data that we should have copied. To fix, enter the DB OID and tablespace OID into the block reference table with relfilenumber 0 and limit block 0; and treat that as a limit block of 0 for every relfilenumber whose DB OID and tablespace OID match. Also, add a test case. Patch by me, reviewed by Noah Misch. Discussion: http://postgr.es/m/CA+Tgmob0xa=ByvGLMdAgkUZyVQE=r4nyYZ_VEa40FCfEDFnTKA@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/d75c4027b6f260f2045b162017567aeeb909b056 Modified Files -------------- src/backend/backup/basebackup_incremental.c | 18 ++++++- src/backend/postmaster/walsummarizer.c | 75 ++++++++++++++++++++++++++ src/bin/pg_combinebackup/meson.build | 1 + src/bin/pg_combinebackup/t/006_db_file_copy.pl | 58 ++++++++++++++++++++ 4 files changed, 151 insertions(+), 1 deletion(-)
В списке pgsql-committers по дате отправления: