pgsql: Fix broken Assert() introduced by 8e9a16ab8f7f0e58
| От | Alvaro Herrera |
|---|---|
| Тема | pgsql: Fix broken Assert() introduced by 8e9a16ab8f7f0e58 |
| Дата | |
| Msg-id | E1X0bAb-000855-3o@gemulon.postgresql.org обсуждение исходный текст |
| Список | pgsql-committers |
Fix broken Assert() introduced by 8e9a16ab8f7f0e58 Don't assert MultiXactIdIsRunning if the multi came from a tuple that had been share-locked and later copied over to the new cluster by pg_upgrade. Doing that causes an error to be raised unnecessarily: MultiXactIdIsRunning is not open to the possibility that its argument came from a pg_upgraded tuple, and all its other callers are already checking; but such multis cannot, obviously, have transactions still running, so the assert is pointless. Noticed while investigating the bogus pg_multixact/offsets/0000 file left over by pg_upgrade, as reported by Andres Freund in http://www.postgresql.org/message-id/20140530121631.GE25431@alap3.anarazel.de Backpatch to 9.3, as the commit that introduced the buglet. Branch ------ REL9_3_STABLE Details ------- http://git.postgresql.org/pg/commitdiff/5c538442a0a73b9d4f3fa11ecac6d5b93a982aca Modified Files -------------- src/backend/access/heap/heapam.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
В списке pgsql-committers по дате отправления: