The following bug has been logged online:
Bug reference: 5984
Logged by: BORSCHNECK Pascal
Email address: borschneck@hotmail.com
PostgreSQL version: 8.4.4 and 8.4.7
Operating system: Linux 2.6.18-194.32.1.el5 #1 SMP Mon Dec 20 10:52:42
EST 2010 x86_64 x86_64 x86_64 GNU/Linux
Description: Got FailedAssertion("!(opaque->btpo_prev == target)",
File: "nbtpage.c", Line: 1166)
Details:
I have a postgresql with several database on a test VM. I got this while a
backup script did a "VACUUM FULL ANALYZE"
2011-04-05 00:05:07 CEST pid:19313 LOG: no left sibling (concurrent
deletion?) in "i_cmsttry_dtype"
TRAP: FailedAssertion("!(opaque->btpo_prev == target)", File: "nbtpage.c",
Line: 1166)
2011-04-05 00:05:07 CEST pid:10127 LOG: server process (PID 19313) was
terminated by signal 6: Aborted
2011-04-05 00:05:07 CEST pid:10127 LOG: terminating any other active
server processes
... and postgresql crash ...
On a VM is important:
-=-=-=-=-=-=-=-=-=-=-=-
Because I noticed that doing a pause to a VM (to make a VM copy for example)
often creates duplicates key problems error in the logs.
So
- it's on a VM -> creates duplicate (and crash also creates new ones ;) )
- there are duplicates key problems like "ERROR: duplicate key value
violates unique constraint "pg_XXXXXXX_index""
- autovacuum is on
- "old process scripts on a db does a VACUUM FULL ANALYZE" during it's
backup process
(I know this shouldn't be done cf
http://wiki.postgresql.org/wiki/VACUUM_FULL#When_.28not.29_to_use_VACUUM_FUL
L but it's not my script ;) )
- I also tried a VACUUM ANALYZE in order to detect incoherent database, same
result: crash
(A "reindexdb --all" may correct the duplicate key and avoid this crash, but
it may occur to other people so I posted it here)
Regards,
Pascal