-
Notifications
You must be signed in to change notification settings - Fork 87
Description
Добрый день.
PostgreSQL 15.1 (ванильный), pg_probackup-15 2.5.11.
Мы на одном из тестовых контуров, с довольно нагруженной бд, столкнулись с тем, что после обновления с 14-й на 15-ю мажорную версии PostgreSQL во время проверочного ручного запуска бекапа начали сыпаться сообщения следующего вида:
WARNING: File 'pg_multixact/members/3994' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/members/3995' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/members/3996' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/members/3997' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/members/3998' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/members/3999' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1064' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1065' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1066' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1067' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1068' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1069' was stored as non-datafile, but looks like it is
WARNING: File 'pg_multixact/offsets/1070' was stored as non-datafile, but looks like it is
То есть pg_probackup стал писать WARNING на каждый файл из директорий pg_multixact/members/ и pg_multixact/offsets/.
Проверили по логам - на PostgreSQL 14 тоже возникали такие сообщения с момента обновления pg_probackup на версию 2.5.11, до этого была установлена 2.5.8 и с ней в логе таких WARNING нет.
Поискал по коду - начиная с версии 2.5.11 был введен следующий код проверки (впервые он появляется еще в 2.5.10, но эта версия, насколько мне известно, в релиз не была выпущена):
Lines 1145 to 1161 in b90273f
if (file->external_dir_num == 0 && S_ISREG(file->mode)) | |
{ | |
bool is_datafile = file->is_datafile; | |
set_forkname(file); | |
if (is_datafile != file->is_datafile) | |
{ | |
if (is_datafile) | |
elog(WARNING, "File '%s' was stored as datafile, but looks like it is not", | |
file->rel_path); | |
else | |
elog(WARNING, "File '%s' was stored as non-datafile, but looks like it is", | |
file->rel_path); | |
/* Lets fail in tests */ | |
Assert(file->is_datafile == file->is_datafile); | |
file->is_datafile = is_datafile; | |
} | |
} |
Подскажите, что конкретно для нас должен означать этот WARNING и корректно ли в данном случае поведение самого pg_probackup? Файлы принадлежат кластеру postgres и они корректны.
Спасибо.