pg_wal_summary_contents() and pg_walsummary may return different results on the same WAL summary file
От | Fujii Masao |
---|---|
Тема | pg_wal_summary_contents() and pg_walsummary may return different results on the same WAL summary file |
Дата | |
Msg-id | 90980ee6-2da6-42f6-a7b0-b7bae62ae279@oss.nttdata.com обсуждение исходный текст |
Ответы |
Re: pg_wal_summary_contents() and pg_walsummary may return different results on the same WAL summary file
|
Список | pgsql-hackers |
Hi, I found that pg_wal_summary_contents() may miss some results that pg_walsummary returns for the same WAL summary file. Hereare the steps to reproduce the issue: ----------------------------- initdb -D data echo "summarize_wal = on" >> data/postgresql.conf pg_ctl -D data start psql <<EOF CREATE TABLE t AS SELECT n i, n j FROM generate_series(1, 1000) n; DELETE FROM t; CHECKPOINT; VACUUM t; CHECKPOINT; SELECT foo.* FROM (SELECT * FROM pg_available_wal_summaries() ORDER BY start_lsn DESC LIMIT 1) JOIN LATERAL pg_wal_summary_contents(tli,start_lsn, end_lsn) foo ON true; EOF pg_walsummary -i data/pg_wal/summaries/$(ls -1 data/pg_wal/summaries/ | tail -1) ----------------------------- In my test, pg_walsummary returned three records: TS 1663, DB 5, REL 1259, FORK main: block 0 TS 1663, DB 5, REL 16384, FORK main: limit 0 TS 1663, DB 5, REL 16384, FORK vm: limit 0 However, pg_wal_summary_contents() returned only one record: relfilenode | reltablespace | reldatabase | relforknumber | relblocknumber | is_limit_block -------------+---------------+-------------+---------------+----------------+---------------- 1259 | 1663 | 5 | 0 | 0 | f pg_wal_summary_contents() seems to miss the summary information with "limit" that pg_walsummary reports. This appears tobe a bug. The attached patch fixes this. By the way, pg_wal_summary_contents() and pg_walsummary perform nearly the same task but are implemented in different functions.This could be the root of issues like this. In the future, it would be better to have a common function for outputtingthe WAL summary file that both can use. Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION
Вложения
В списке pgsql-hackers по дате отправления: