VACUUM unable to accomplish because of a non-existent MultiXactId

Поиск
Список
Период
Сортировка
От Kouber Saparev
Тема VACUUM unable to accomplish because of a non-existent MultiXactId
Дата
Msg-id 62FE8F79-7278-4AE0-9FDE-0C0277A7B609@gmail.com
обсуждение исходный текст
Ответы Re: VACUUM unable to accomplish because of a non-existent MultiXactId
Список pgsql-admin
Hello,

Recently I spotted an auto vacuum that is constantly being run over a pg_toast table in the database. Interestingly the
underlyingtable did not have that amount of writes that would trigger the auto vacuum every minute. 

When I tried to run the VACUUM manually it died with a non-existent MultiXactId error:

db=# vacuum analyze verbose pg_toast.pg_toast_376621;
INFO:  vacuuming "pg_toast.pg_toast_376621"
ERROR:  MultiXactId 2915905228 does no longer exist -- apparent wraparound

db=# select txid_current();
 txid_current
--------------
   2583853583
(1 row)

db=# select datfrozenxid from pg_database where datname=‘db';
datfrozenxid
--------------
   2161848861
(1 row)


We did a pg_upgrade about a month ago to upgrade from 9.2 to 9.4, so I guess there might be some relation, as I do not
rememberhaving that issue before the upgrade. 

The question is, how can I clean the table in question and finally be able to run a vacuum over it?

Regards,
—
Kouber Saparev

В списке pgsql-admin по дате отправления:

Предыдущее
От: Yaroslav Fedevych
Дата:
Сообщение: Re: How to store the PSQL command result into an array or Python dictionary?
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: VACUUM unable to accomplish because of a non-existent MultiXactId