pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Masahiro Ikeda <ikedamsh@oss.nttdata.com>
To: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Cc: amit.kapila16@gmail.com
Cc: pgsql-hackers@postgresql.org
Subject: Re: Add statistics to pg_stat_wal view for wal related parameter tuning
Date: Thu, 22 Oct 2020 10:44:53 +0900
Message-ID: <729d83f87da2cfbca4343e577f2e20a1@oss.nttdata.com> (raw)
In-Reply-To: <20201021.180323.1892401452849353942.horikyota.ntt@gmail.com>
References: <35ef960128b90bfae3b3fdf60a3a860f@oss.nttdata.com>
	<CAA4eK1JbbP-QmZWiXwK+H-ZauJCGR6vbAVoGdyx_TTxRPuXzhQ@mail.gmail.com>
	<06bc2d405b086a72fb14657de9befae8@oss.nttdata.com>
	<20201021.180323.1892401452849353942.horikyota.ntt@gmail.com>

On 2020-10-21 18:03, Kyotaro Horiguchi wrote:
> At Tue, 20 Oct 2020 16:11:29 +0900, Masahiro Ikeda
> <ikedamsh@oss.nttdata.com> wrote in
>> On 2020-10-20 12:46, Amit Kapila wrote:
>> > I see that we also need to add extra code to capture these stats (some
>> > of which is in performance-critical path especially in
>> > XLogInsertRecord) which again makes me a bit uncomfortable. It might
>> > be that it is all fine as it is very important to collect these stats
>> > at cluster-level in spite that the same information can be gathered at
>> > statement-level to help customers but I don't see a very strong case
>> > for that in your proposal.
> 
> We should avoid that duplication as possible even if the both number
> are important.
> 
>> Also about performance, I thought there are few impacts because it
>> increments stats in memory. If I can implement to reuse pgWalUsage's
>> value which already collects these stats, there is no impact in
>> XLogInsertRecord.
>> For example, how about pg_stat_wal() calculates the accumulated
>> value of wal_records, wal_fpi, and wal_bytes to use pgWalUsage's
>> value?
> 
> I don't think that works, but it would work that pgstat_send_wal()
> takes the difference of that values between two successive calls.
> 
> WalUsage prevWalUsage;
> ...
> pgstat_send_wal()
> {
> ..
>    /* fill in some values using pgWalUsage */
>    WalStats.m_wal_bytes   = pgWalUsage.wal_bytes   - 
> prevWalUsage.wal_bytes;
>    WalStats.m_wal_records = pgWalUsage.wal_records - 
> prevWalUsage.wal_records;
>    WalStats.m_wal_wal_fpi = pgWalUsage.wal_fpi     - 
> prevWalUsage.wal_fpi;
> ...
>    pgstat_send(&WalStats, sizeof(WalStats));
> 
>    /* remember the current numbers */
>    prevWalUsage = pgWalUsage;

Thanks for your advice. This code can avoid the performance impact of 
critical code.

By the way, what do you think to add these statistics to the pg_stat_wal 
view?
I thought to remove the above statistics because there is advice that 
PG13's features,
for example, pg_stat_statement view, vacuum log, and so on can cover 
use-cases.

regards,
-- 
Masahiro Ikeda
NTT DATA CORPORATION





view thread (33+ messages)  latest in thread

Message-ID: <729d83f87da2cfbca4343e577f2e20a1@oss.nttdata.com>
Permalink:  ../729d83f87da2cfbca4343e577f2e20a1@oss.nttdata.com/
Also on:    postgresql.org/message-id/729d83f87da2cfbca4343e577f2e20a1@oss.nttdata.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: ikedamsh@oss.nttdata.com, horikyota.ntt@gmail.com, amit.kapila16@gmail.com
  Subject: Re: Add statistics to pg_stat_wal view for wal related parameter tuning
  In-Reply-To: <729d83f87da2cfbca4343e577f2e20a1@oss.nttdata.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox