Re: ENOSPC FailedAssertion("!(RefCountErrors == 0)"
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>,
Andres Freund <andres@anarazel.de>, Michael Paquier <michael@paquier.xyz>, Justin Pryzby <pryzby@telsasoft.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2018-07-18T17:03:20Z
Lists: pgsql-hackers
On Wed, Jul 18, 2018 at 10:33 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> So couldn't we use TopTransactionResourceOwner instead of >> AuxProcessResrouceOwner? I feel a bit uneasy that bootstrap and >> standalone-backend have *AuxProcess*ResourceOwner. > > Since the aux processes aren't running transactions, I didn't think > that TopTransactionResourceOwner was appropriate. There's also > a problem for bootstrap and standalone backend cases: those do run > transactions and therefore create/destroy TopTransactionResourceOwner, > leaving nothing behind for ShutdownXLOG to use if it tries to use > that. We need an extra resowner somewhere. FallbackResourceOwner? DefaultResourceOwner? SessionResourceOwner? -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Use a ResourceOwner to track buffer pins in all cases.
- 3cb646264e8c 12.0 landed