From: Tom Lane <tgl@sss.pgh.pa.us>
To: Arjun Ranade <ranade@nodalexchange.com>
Cc: pgsql-admin@postgresql.org
Subject: Re: Missing Chunk Error when doing a VACUUM FULL operation - DB Corruption?
Date: Tue, 31 Oct 2017 17:56:14 -0400
Message-ID: <23996.1509486974@sss.pgh.pa.us> (raw)
In-Reply-To: <CANrrCRy-qdDMX=a=xQsC9bbv36kD5biKUK3RgpNxUO9M-VfcTA@mail.gmail.com>
References: <CANrrCRwH9ZnW+XtOxozEUPqWuHrfNNqDw9K3H69k513i7-YryQ@mail.gmail.com>
<13631.1509479942@sss.pgh.pa.us>
<CANrrCRy-qdDMX=a=xQsC9bbv36kD5biKUK3RgpNxUO9M-VfcTA@mail.gmail.com>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-admin>
Arjun Ranade <ranade@nodalexchange.com> writes:
> Yes, it is still reproducible. When I try to VACUUM FULL right now, I get
> the same error.
> This is postgres 9.4. I am new to gdb, but based on what you said, I have
> the following output:
> Breakpoint 1, 0x0000000000768be0 in errfinish ()
> (gdb) bt
> #0 0x0000000000768be0 in errfinish ()
> #1 0x000000000076998c in elog_finish ()
> #2 0x0000000000495960 in ?? ()
> #3 0x0000000000496075 in heap_tuple_fetch_attr ()
> #4 0x0000000000496572 in toast_insert_or_update ()
> #5 0x0000000000492ce1 in ?? ()
> #6 0x0000000000493733 in rewrite_heap_tuple ()
> #7 0x000000000053ebdf in ?? ()
> #8 0x000000000053f68e in cluster_rel ()
> #9 0x0000000000590a1b in ?? ()
> #10 0x0000000000590f9f in vacuum ()
> #11 0x000000000068ee77 in standard_ProcessUtility ()
Hm. I suspect what is happening is that VACUUM is trying to copy a tuple
that you deleted, but which it thinks is still visible to some open
transaction. Do you have any really old transactions hanging around,
according to pg_stat_activity or pg_prepared_xacts?
If that is not it, probably truncating pg_statistic instead of just
doing "delete from pg_statistic" would solve the problem. But we're
no closer to understanding what was the original source of the issue.
regards, tom lane
--
Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: tgl@sss.pgh.pa.us, ranade@nodalexchange.com
Subject: Re: Missing Chunk Error when doing a VACUUM FULL operation - DB Corruption?
In-Reply-To: <23996.1509486974@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox