On Tue, Feb 10, 2026 at 07:30:50AM +0000, Bertrand Drouvot wrote: > New rebase due to 73d60ac385a.
I have been looking at this patch, and can get behind the data gathered here in terms of being able to tune things, but not all. See below for the details of my reasoning. max_locks_per_xact is a PGC_POSTMASTER, so backend-level stats with this data would not be relevant for its tuning. However, something else can be said about deadlock_timeout, where one could rely on the data gathered by this view to set it on a backend basis, particularly if the load pattern is divided into a subsets of connections (say few backend see a lot of the deadlock_timeout, for example). Same argument for lock_timeout, which is user-settable. As the set of data gathered, I think that I'm OK with timeouts (for lock_timeout), deadlock_timeouts (for deadlock_timeout), fastpath (for max_locks_per_xact), that can all be compared with the number of requests. Regarding "deadlocks" and "waits", these two are less useful than the three others because not really actionable. They would become much more relevant if and only if we know the distribution of the deadlocks not only for the lock types, but for the objects involved, especially if the activity is diluted across many objects. So these have less value IMO because they are not really actionable in the system. The other three can be directly tuned based on the GUCs we have. So my suggestion for the moment would be to be more frugal (yeah I know, sorry..) and limit ourselves to four fields: deadlock_timeout, requests, fastpath and timeouts. Three fields to compare with requests, one for each GUC. Regarding the implementation, you are right to use a fixed-sized stats kind for the job. I can see a lot of code has been copy-pasted from pgstat_io.c, then slightly adjusted to fit into the picture. That's fine here, it makes the implementation straight-forward to read. Regarding the documentation, listing all the values for locktype is a recipe for rot. I'd suggest to remove the list instead, with only a link referring to pg_locks to avoid the duplication. -- Michael
signature.asc
Description: PGP signature
