Tom Lane wrote: > Alvaro Herrera <alvherre@xxxxxxxxxxxxxxx> writes: > > Kouber Saparev wrote: > >> Recently I spotted an auto vacuum that is constantly being run over a pg_toast table in the database. Interestingly the underlying table 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 > > > Hmm, I don't think there can be multixacts in toast tables at all, > > normally. > > Couldn't creation and deletion of a toasted object within the same > transaction do it? I tried and couldn't find a way to cause one to appear. When a row is created, it has xmax=0 so when it's deleted the xmax can just be set to the deleting xact. And we don't ever update pg_toast rows, AFAIK. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services -- Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-admin