per my proposal of a couple days ago. This will eliminate the unable-
to-restart-database class of problem that we have seen reported half a
dozen times with 7.1.*.
Thanks to Bruce for spotting it and Tom Lane for diagnosing it.
Since horology test output is changing anyway, add some date/time input
tests to horology.sql. Some of these should move to the tests for the
individual data types, and we perhaps should add an entire new test
for "timezone" to allow manipulating the current time zone without
risking damage to the results of other tests.
their names from pg_class. This considerably reduces the window wherein
someone could DROP or ALTER a table that pg_dump is intending to dump.
Not a perfect solution, but definitely an improvement. Per complaints
from Marc Fournier; patch by Brent Verner with some kibitzing by Tom Lane.
as either HEAP_XMAX_COMMITTED or HEAP_XMAX_INVALID once the updating
transaction is gone. Otherwise some other transaction may come along
and try to test the commit status of t_xmax later --- which could be
after VACUUM has recycled the CLOG status for that xact. Bug introduced
in post-beta4 bug fix.
FrozenTransactionId, not the XID of the creating transaction. Without
this it's possible for a reference to a long-gone CLOG record to occur,
per Christian Meunier's bug report of 10-Jan-02. Worse, the sequence
tuple would become invisible to SELECTs after 2 billion transactions.
Since the fix is applied during sequence creation it does not help
existing databases, unless you drop and recreate every sequence.
However, we intend to force initdb for 7.2RC1 anyway, to fix a pg_proc
error, so I see no need to do more for this problem.