I got an error doing a vacuum analyze on one of our table:
MSG: 7 (S1000): ERROR: simple_heap_update: tuple concurrently updated
does anyone know what this means, and more importantly... should i be worried about this?
Are you by chance running analyze concurrently?
At http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/analyze.c?r1=1.12&sortby=log I see this:
Revision 1.42 / (download) - annotate - [select for diffs] , Sun Aug 11 00:08:48 2002 UTC (15 months, 1 week ago) by tgl
Changes since 1.41: +13 -10 lines
Diff to previous 1.41 to selected 1.12
Now that we allow ANALYZE to run inside a transaction block, the locks it takes could be held for quite awhile after the analyze step completes. Rethink locking of pg_statistic in light of this fact. The original scheme took an exclusive lock on pg_statistic, which was okay when the lock could be expected to be released shortly, but that doesn't hold anymore. Back off to a normal writer's lock (RowExclusiveLock). This allows concurrent ANALYZE of nonoverlapping sets of tables, at the price that concurrent ANALYZEs of the same table may fail with 'tuple concurrently updated'.
HTH,
Joe
---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend