From: Julien Rouhaud <rjuju123@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Dilip Kumar <dilipbalaut@gmail.com>
Cc: Kuntal Ghosh <kuntalghosh.2007@gmail.com>
Cc: Fujii Masao <masao.fujii@oss.nttdata.com>
Cc: Kirill Bychik <kirill.bychik@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Cc: Thomas Munro <thomas.munro@gmail.com>
Subject: Re: WAL usage calculation patch
Date: Mon, 6 Apr 2020 10:23:07 +0200
Message-ID: <20200406082307.GI1206@nol> (raw)
In-Reply-To: <CAA4eK1+OzW92A=nrJqNg6+M5jZ_fdpSAW45tBnFpdWv4035QRQ@mail.gmail.com>
References: <CAFiTN-vAqkDV5Whxw2OvdbN9OU7xZyKzRrUG6m6dr8nvG-R=Yw@mail.gmail.com>
<CAA4eK1Jh=EjwK+etqeaWM6gcNaex1FX6xTFqR7QXXQy2CmGQsw@mail.gmail.com>
<CAA4eK1KqiWqAgw9ETchcQf-z9ZY4aUN-4QvTh0R26+DpNnTDHg@mail.gmail.com>
<CAA4eK1+sSXvf45x6CbXTEywzXLNcuwWUy-m1rg2KyJKcEXBPvw@mail.gmail.com>
<20200404060303.n2q74lbccjm2swdc@nol>
<CAA4eK1Kep_Wv1ZK+ODLhioPdP8VD4HuHx5d-C2h9s83yriYejg@mail.gmail.com>
<20200404085423.GC1206@nol>
<CAA4eK1JmoDH1zoxAi9BEszVe+5BNquJDN3E-RRADdrYHv3TCRQ@mail.gmail.com>
<20200404092015.GE1206@nol>
<CAA4eK1+OzW92A=nrJqNg6+M5jZ_fdpSAW45tBnFpdWv4035QRQ@mail.gmail.com>
On Mon, Apr 06, 2020 at 08:55:01AM +0530, Amit Kapila wrote:
> On Sat, Apr 4, 2020 at 2:50 PM Julien Rouhaud <rjuju123@gmail.com> wrote:
> >
> I have pushed pg_stat_statements and Explain related patches. I am
> now looking into (auto)vacuum patch and have few comments.
>
Thanks!
> @@ -614,6 +616,9 @@ heap_vacuum_rel(Relation onerel, VacuumParams *params,
>
> TimestampDifference(starttime, endtime, &secs, &usecs);
>
> + memset(&walusage, 0, sizeof(WalUsage));
> + WalUsageAccumDiff(&walusage, &pgWalUsage, &walusage_start);
> +
> read_rate = 0;
> write_rate = 0;
> if ((secs > 0) || (usecs > 0))
> @@ -666,7 +671,13 @@ heap_vacuum_rel(Relation onerel, VacuumParams *params,
> (long long) VacuumPageDirty);
> appendStringInfo(&buf, _("avg read rate: %.3f MB/s, avg write rate:
> %.3f MB/s\n"),
> read_rate, write_rate);
> - appendStringInfo(&buf, _("system usage: %s"), pg_rusage_show(&ru0));
> + appendStringInfo(&buf, _("system usage: %s\n"), pg_rusage_show(&ru0));
> + appendStringInfo(&buf,
> + _("WAL usage: %ld records, %ld full page writes, "
> + UINT64_FORMAT " bytes"),
> + walusage.wal_records,
> + walusage.wal_num_fpw,
> + walusage.wal_bytes);
>
> Here, we are not displaying Buffers related data, so why do we think
> it is important to display WAL data? I see some point in displaying
> Buffers and WAL data in a vacuum (verbose), but I feel it is better to
> make a case for both the statistics together rather than just
> displaying one and leaving other. I think the other change related to
> autovacuum stats seems okay to me.
One thing is that the amount of WAL, and more precisely FPW, is quite
unpredictable wrt. vacuum and even more anti-wraparound vacuum, so this is IMHO
a very useful metric. That being said I totally agree with you that both
should be displayed. Should I send a patch to also expose it?
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: rjuju123@gmail.com, amit.kapila16@gmail.com, dilipbalaut@gmail.com, kuntalghosh.2007@gmail.com, masao.fujii@oss.nttdata.com, kirill.bychik@gmail.com, thomas.munro@gmail.com
Subject: Re: WAL usage calculation patch
In-Reply-To: <20200406082307.GI1206@nol>
* 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