From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | Peter Geoghegan <pg(at)bowt(dot)ie>, "Wood, Dan" <hexpert(at)amazon(dot)com>, "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de> |
Subject: | Re: Old row version in hot chain become visible after a freeze |
Date: | 2017-09-06 13:27:38 |
Message-ID: | 20170906132738.2dpwvnfcuevjofhl@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Another thing is that if you're going through heap_copy_data, the tuple
is only checked for DEAD, not RECENTLY_DEAD. Maybe there is no bug here
but I'm not sure yet.
I attach the patch as I have it now -- mostly comment tweaks, but also
the change to not mark page as all-frozen when we skip freezing a
recently read tuple. I also renamed the test case, because I think it
may be possible to reach the problem code without involving a multixact.
Haven't tried too hard though.
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Attachment | Content-Type | Size |
---|---|---|
0001-test-cases.patch | text/plain | 5.5 KB |
0002-Don-t-freeze-recently-dead-HOT-tuples.patch | text/plain | 5.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-09-06 13:32:34 | Re: BUG #14799: SELECT * FROM transition_table in a statement-level trigger |
Previous Message | kostin.artem | 2017-09-06 13:21:56 | BUG #14800: substring produces different results with similar types |