Thread: pg_stat_reset_slru(name) doesn't seem to work as documented

pg_stat_reset_slru(name) doesn't seem to work as documented

From
Atsushi Torikoshi
Date:
Hi,

When I tried to reset a counter in pg_stat_slru using pg_stat_reset_slru(name),
not only the specified counter but all the counters were reset.

  postgres=# SELECT * FROM pg_stat_slru ;
         name       | blks_zeroed | blks_hit | blks_read | blks_written | blks_exists | flushes | truncates |          stats_reset
  ------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
   async            |           3 |        0 |         0 |            3 |           0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
   clog             |           0 |       56 |         0 |            0 |           0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
   commit_timestamp |           0 |        0 |         0 |            0 |           0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
   (snip)


  postgres=# SELECT pg_stat_reset_slru('clog');


  postgres=# SELECT * FROM pg_stat_slru ;
         name       | blks_zeroed | blks_hit | blks_read | blks_written | blks_exists | flushes | truncates |          stats_reset
  ------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
   async            |           0 |        0 |         0 |            0 |           0 |       0 |         0 | 2000-01-01 09:00:00+09
   clog             |           0 |        0 |         0 |            0 |           0 |       0 |         0 | 2020-05-01 17:37:02.525006+09
   commit_timestamp |           0 |        0 |         0 |            0 |           0 |       0 |         0 | 2000-01-01 09:00:00+09
   (snip)


Attached a patch.

Regards,

--
Atsushi Torikoshi
NTT DATA CORPORATION
Attachment

Re: pg_stat_reset_slru(name) doesn't seem to work as documented

From
Tomas Vondra
Date:
On Fri, May 01, 2020 at 07:10:23PM +0900, Atsushi Torikoshi wrote:
>Hi,
>
>When I tried to reset a counter in pg_stat_slru using
>pg_stat_reset_slru(name),
>not only the specified counter but all the counters were reset.
>
>  postgres=# SELECT * FROM pg_stat_slru ;
>         name       | blks_zeroed | blks_hit | blks_read | blks_written |
>blks_exists | flushes | truncates |          stats_reset
>

>------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
>   async            |           3 |        0 |         0 |            3 |
>        0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>   clog             |           0 |       56 |         0 |            0 |
>        0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>   commit_timestamp |           0 |        0 |         0 |            0 |
>        0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>   (snip)
>
>
>  postgres=# SELECT pg_stat_reset_slru('clog');
>
>
>  postgres=# SELECT * FROM pg_stat_slru ;
>         name       | blks_zeroed | blks_hit | blks_read | blks_written |
>blks_exists | flushes | truncates |          stats_reset
>

>------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
>   async            |           0 |        0 |         0 |            0 |
>        0 |       0 |         0 | 2000-01-01 09:00:00+09
>   clog             |           0 |        0 |         0 |            0 |
>        0 |       0 |         0 | 2020-05-01 17:37:02.525006+09
>   commit_timestamp |           0 |        0 |         0 |            0 |
>        0 |       0 |         0 | 2000-01-01 09:00:00+09
>   (snip)
>
>
>Attached a patch.
>

Yeah, that memset is a left-over from some earlier version of the patch.
Thanks for the report and patch, I'll push this shortly.


regards

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



Re: pg_stat_reset_slru(name) doesn't seem to work as documented

From
Tomas Vondra
Date:
On Sat, May 02, 2020 at 02:27:33PM +0200, Tomas Vondra wrote:
>On Fri, May 01, 2020 at 07:10:23PM +0900, Atsushi Torikoshi wrote:
>>Hi,
>>
>>When I tried to reset a counter in pg_stat_slru using
>>pg_stat_reset_slru(name),
>>not only the specified counter but all the counters were reset.
>>
>> postgres=# SELECT * FROM pg_stat_slru ;
>>        name       | blks_zeroed | blks_hit | blks_read | blks_written |
>>blks_exists | flushes | truncates |          stats_reset
>>

>>------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
>>  async            |           3 |        0 |         0 |            3 |
>>       0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>>  clog             |           0 |       56 |         0 |            0 |
>>       0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>>  commit_timestamp |           0 |        0 |         0 |            0 |
>>       0 |       0 |         0 | 2020-05-01 17:36:26.073433+09
>>  (snip)
>>
>>
>> postgres=# SELECT pg_stat_reset_slru('clog');
>>
>>
>> postgres=# SELECT * FROM pg_stat_slru ;
>>        name       | blks_zeroed | blks_hit | blks_read | blks_written |
>>blks_exists | flushes | truncates |          stats_reset
>>

>>------------------+-------------+----------+-----------+--------------+-------------+---------+-----------+-------------------------------
>>  async            |           0 |        0 |         0 |            0 |
>>       0 |       0 |         0 | 2000-01-01 09:00:00+09
>>  clog             |           0 |        0 |         0 |            0 |
>>       0 |       0 |         0 | 2020-05-01 17:37:02.525006+09
>>  commit_timestamp |           0 |        0 |         0 |            0 |
>>       0 |       0 |         0 | 2000-01-01 09:00:00+09
>>  (snip)
>>
>>
>>Attached a patch.
>>
>
>Yeah, that memset is a left-over from some earlier version of the patch.
>Thanks for the report and patch, I'll push this shortly.
>

Pushed. Thanks for the report.

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



Re: pg_stat_reset_slru(name) doesn't seem to work as documented

From
Atsushi Torikoshi
Date:
On Sat, May 2, 2020 at 11:05 PM Tomas Vondra <tomas.vondra@2ndquadrant.com> wrote
Pushed. Thanks for the report.

Thanks! 

--
Atsushi Torikoshi