Re: SLRU statistics

Tomas Vondra <tomas.vondra@2ndquadrant.com>

From: Tomas Vondra <tomas.vondra@2ndquadrant.com>
To: Fujii Masao <masao.fujii@oss.nttdata.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Alvaro Herrera <alvherre@2ndquadrant.com>, Masahiko Sawada <masahiko.sawada@2ndquadrant.com>, "tsunakawa.takay@fujitsu.com" <tsunakawa.takay@fujitsu.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2020-05-13T15:28:46Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix async.c to not register any SLRU stats counts in the postmaster.

  2. Use proper GetDatum function in pg_stat_get_slru().

  3. Initialize SLRU stats entries to zero.

  4. Remove pg_xact from pg_stat_reset_slru docs

  5. Remove pg_xact entry from SLRU stats

  6. Track SLRU page hits in SimpleLruReadPage_ReadOnly

  7. Fix typo in SLRU stats documentation

  8. Collect statistics about SLRU caches

  9. Simplify and rename some GUC variables, per various recent discussions:

On Wed, May 13, 2020 at 11:46:30PM +0900, Fujii Masao wrote:
>
>
>On 2020/05/13 23:26, Tom Lane wrote:
>>Fujii Masao <masao.fujii@oss.nttdata.com> writes:
>>>On 2020/05/13 17:21, Tomas Vondra wrote:
>>>>On Wed, May 13, 2020 at 04:10:30PM +0900, Fujii Masao wrote:
>>>>>Also I found another minor issue; SLRUStats has not been initialized to 0
>>>>>and which could update the counters unexpectedly. Attached patch fixes
>>>>>this issue.
>>
>>>Pushed both. Thanks!
>>
>>Why is that necessary?  A static variable is defined by C to start off
>>as zeroes.
>
>Because SLRUStats is not a static variable. No?
>

I think it counts as a variable with "static storage duration" per 6.7.8
(para 10), see [1]. I wasn't aware of this either, but it probably means
the memset is unnecessary.

Also, it seems a bit strange/confusing to handle this differently from
BgWriterStats. And that worked fine without the init for years ...


[1] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services