Re: pgstat_send_connstats() introduces unnecessary timestamp and UDP overhead
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Laurenz Albe <laurenz.albe@cybertec.at>,
Andres Freund <andres@anarazel.de>, magnus@hagander.net
Cc: Michael Paquier <michael@paquier.xyz>,
Kyotaro Horiguchi <horikyota.ntt@gmail.com>, pgsql-hackers@postgresql.org
Date: 2021-09-15T14:47:33Z
Lists: pgsql-hackers
On 9/8/21 12:11 AM, Laurenz Albe wrote: > On Fri, 2021-09-03 at 17:04 -0700, Andres Freund wrote: >> Here's how I think that would look like. While writing up this draft, I found >> two more issues: >> >> - On windows / 32 bit systems, the session time would overflow if idle for >> longer than ~4300s. long is only 32 bit. Easy to fix obviously. >> - Right now walsenders, including database connected walsenders, are not >> reported in connection stats. That doesn't seem quite right to me. >> >> In the patch I made the message for connecting an explicitly reported message, >> that seems cleaner, because it then happens at a clearly defined point. I >> didn't do the same for disconnecting, but perhaps that would be better? Then >> we could get rid of the whole pgStatSessionEndCause variable. > I have gone over your patch and made the following changes: > > - cache the last report time in a static variable pgLastSessionReportTime > - add a comment to explain why we only track normal backends > - pgindent > - an attempt at a commit message > Hi, this is an open item for release 14. Is someone going to commit? cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com
Commits
-
Fix performance regression from session statistics.
- 7890a423470b 14.0 landed
- 37a9aa659111 15.0 landed
-
Add pg_stat_database counters for sessions and session time
- 960869da0803 14.0 cited