Simon Riggs wrote:
> * if FATAL errors occur, yet we have long running transactions then we
> have no way of removing those entries from the recovery procs. Since we
> have a fixed pool of recovery transactions we won't have anywhere to
> store that data. Snapshot sizes are fixed maximum with max_connections,
> so eventually we would not be able to take a snapshot at all, and we'd
> need to have a "ERROR: unable to take valid snapshot".
When a backend dies with FATAL, it writes an abort record before exiting.
(I was under the impression it doesn't until few minutes ago myself,
when I actually read the shutdown code :-))
> * if FATAL errors occur while holding AccessExclusiveLock then we have
> no way of releasing those locks until the recovery proc is stale, which
> might be some time. Not sure if your patch releases those?
I don't think so, that needs to be fixed.
-- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com