Re: Resetting spilled txn statistics in pg_stat_replication

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Masahiko Sawada <masahiko(dot)sawada(at)2ndquadrant(dot)com>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Magnus Hagander <magnus(at)hagander(dot)net>, Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Resetting spilled txn statistics in pg_stat_replication
Date: 2020-10-13 14:54:42
Message-ID: CAA4eK1J3B=hE+RVAYg_JU2u-Z6zeQhdGd613MM=aiw9Tr+5MHw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Oct 13, 2020 at 7:57 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> writes:
> > I am able to reproduce this problem via debugger. Basically, execute
> > the Insert mentioned above from one the psql sessions and in
> > ExecInsert() stop the execution once 'estate->es_processed > 4000' and
> > then from another psql terminal execute some DDL which will be ignored
> > but will any try to decode commit. Then perform 'continue' in the
> > first session. This will lead to inconsistent stats value depending
> > upon at what time DDL is performed. I'll push the patch as I am more
> > confident now.
>
> So ... doesn't this mean that if the concurrent transaction commits very
> shortly after our query starts, decoding might stop without having ever
> spilled at all?
>

I am assuming in "our query starts" you refer to Insert statement used
in the test. No, the decoding (and required spilling) will still
happen. It is only that we will try to send the stats accumulated by
that time which will be zero. And later when the decoding of our
Insert transaction is finished it will again send the updated stats.
It should work fine in this or similar scenarios.

--
With Regards,
Amit Kapila.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Li Japin 2020-10-13 15:03:01 Re: Remove unnecessary else branch
Previous Message Tom Lane 2020-10-13 14:27:15 Re: Resetting spilled txn statistics in pg_stat_replication