I came across $SUBJECT, which can be reproduced using the queries
below.
# create temporary table p (a int primary key) on commit delete rows;
CREATE TABLE
# create temporary table c () inherits (p);
CREATE TABLE
# analyze; -- no error
ANALYZE
# drop table c;
DROP TABLE
# analyze; -- error
ERROR: tuple to be updated was already modified by an operation
triggered by the current command
This error happens in heap_inplace_lock(), and git-bisect says the
first bad commit is:
a07e03fd8fa7daf4d1356f7cb501ffe784ea6257 is the first bad commit
commit a07e03fd8fa7daf4d1356f7cb501ffe784ea6257
Author: Noah Misch <noah@leadboat.com>
Date: Tue Sep 24 15:25:18 2024 -0700
Fix data loss at inplace update after heap_update().
... which introduced heap_inplace_lock().
Is this error expected, or could it be a bug?
Thanks
Richard