>> CheckPointTwoPhase() in (5) does not sync this prepared transaction >> because the checkpointer's KnownPreparedList is empty. > > And that's why this needs to be stored in shared memory with a number > of elements made of max_prepared_xacts...
Yeah. Was thinking about this yesterday. How about adding entries in TwoPhaseState itself (which become valid later)? Only if it does not cause a lot of code churn. The current non-shmem list patch only needs to handle standby shutdowns correctly. Other aspects like standby promotion/recovery are handled ok AFAICS. Regards, Nikhils -- Nikhil Sontakke http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers