Re: BF mamba failure
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: Kouber Saparev <kouber@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2024-11-14T07:55:23Z
Lists: pgsql-hackers
Attachments
- v2-0001-Introduce-generation-counter-for-pgstats-entries.patch (text/x-diff) patch v2-0001
On Thu, Oct 17, 2024 at 01:24:50PM +0900, Michael Paquier wrote: >> Yeah, FWIW, we would be going from 32 bytes: >> /* total size (bytes): 32 */ >> >> to 40 bytes (with the patch applied): >> /* total size (bytes): 40 */ >> >> Due to the padding, that's a 8 bytes increase while we're adding "only" 4 bytes. > > I have spent some time digging into all the original pgstat threads > dealing with the shmem implementation or dshash, and I'm not really > seeing anybody stressing on the size of the individual hash entries. > This stuff was already wasting space with padding originally, so > perhaps we're stressing too much here? Would anybody like to comment? I've been going through this patch again, and the failures that could be seen because of such failures, like standbys failing in an unpredictible way is not cool, so I am planning to apply the attached down to 15 now that the release has colled down. At the end I am not really stressing about this addition in the structure for the sake of making the stats entries safe to handle. I did not like much the name "agecount" though, used to cross-check how many times an entry is reused in shared memory and in the local copy we keep in a process, so I've renamed it to "generation". -- Michael
Commits
-
Add information about "generation" when dropping twice pgstats entry
- 769be67a3c7a 15.14 landed
- f770006928d0 16.10 landed
- bdda6ba30cbe 17.6 landed
- ab74ce4dc909 18.0 landed
- 84b32fd22830 19 (unreleased) landed
-
Fix race conditions with drop of reused pgstats entries
- 154c5b42a3d8 15.10 landed
- afa20845dd13 16.6 landed
- 1d6a03ea4146 17.2 landed
- 818119afccd3 18.0 landed