Re: ResourceOwner refactoring
Heikki Linnakangas <hlinnaka@iki.fi>
From: Heikki Linnakangas <hlinnaka@iki.fi>
To: Peter Eisentraut <peter@eisentraut.org>,
Andres Freund <andres@anarazel.de>
Cc: Aleksander Alekseev <aleksander@timescale.com>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
Julien Rouhaud <rjuju123@gmail.com>, Robert Haas <robertmhaas@gmail.com>
Date: 2023-11-07T11:28:28Z
Lists: pgsql-hackers
Attachments
- v17-0001-Move-a-few-ResourceOwnerEnlarge-calls-for-safety.patch (text/x-patch) patch v17-0001
- v17-0002-Make-resowners-more-easily-extensible.patch (text/x-patch) patch v17-0002
- v17-0003-Use-a-faster-hash-function-in-resource-owners.patch (text/x-patch) patch v17-0003
- v17-0004-Change-pgcrypto-to-use-the-new-ResourceOwner-mec.patch (text/x-patch) patch v17-0004
On 06/11/2023 12:43, Peter Eisentraut wrote: > It looks like this patch set needs a bit of surgery to adapt to the LLVM > changes in 9dce22033d. The cfbot is reporting compiler warnings about > this, and also some crashes, which might also be caused by this. Updated patch set attached. I fixed those LLVM crashes, and reordered the fields in the ResourceOwner struct per Andres' suggestion. > I do like the updated APIs. (Maybe the repeated ".DebugPrint = NULL, > /* default message is fine */" lines could be omitted?) > > I like that one can now easily change the elog(WARNING) in > ResourceOwnerReleaseAll() to a PANIC or something to get automatic > verification during testing. I wonder if we should make this the > default if assertions are on? This would need some adjustments to > src/test/modules/test_resowner because it would then fail. Yeah, perhaps, but I'll leave that to possible a follow-up patch. I feel pretty good about this overall. Barring objections or new cfbot failures, I will commit this in the next few days. -- Heikki Linnakangas Neon (https://neon.tech)
Commits
-
Make RelationFlushRelation() work without ResourceOwner during abort
- e6cd85772647 17.0 landed
-
Fix bug in bulk extending temp relation after failure
- d212957254de 17.0 landed
-
Add missing PGDLLIMPORT markings
- c6b86eaa55ff 17.0 landed
-
Add test_dsa module.
- 325f54033e59 17.0 landed
-
Clear CurrentResourceOwner earlier in CommitTransaction.
- c21e6e2fd48c 17.0 landed
-
Fix dsa.c with different resource owners.
- a8b330ffb6f7 17.0 landed
-
Fix bug in the new ResourceOwner implementation.
- 8f4a1ab471e6 17.0 landed
-
Change pgcrypto to use the new ResourceOwner mechanism.
- cd694f60dc97 17.0 landed
-
Use a faster hash function in resource owners.
- 954e43564d99 17.0 landed
-
Make ResourceOwners more easily extensible.
- b8bff07daa85 17.0 landed
-
Move a few ResourceOwnerEnlarge() calls for safety and clarity.
- b70c2143bbbe 17.0 landed