Re: Replication slot stats misgivings

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>
Subject: Re: Replication slot stats misgivings
Date: 2021-03-21 10:38:00
Message-ID: CAA4eK1KBDMFoN=xHLsKCUcBRbgJtAOf=+7XqhzusJ0yHvY0g6g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sun, Mar 21, 2021 at 2:57 AM Andres Freund <andres(at)anarazel(dot)de> wrote:
>
> Hi,
>
> On 2021-03-20 10:28:06 +0530, Amit Kapila wrote:
> > On Sat, Mar 20, 2021 at 9:25 AM Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
> > > This idea is worth exploring to address the complaints but what do we
> > > do when we detect that the stats are from the different slot? It has
> > > mixed of stats from the old and new slot. We need to probably reset it
> > > after we detect that.
> > >
> >
> > What if the user created a slot with the same name after dropping the
> > slot and it has used the same index. I think chances are less but
> > still a possibility, but maybe that is okay.
> >
> > > What if after some frequency (say whenever we
> > > run out of indexes) we check whether the slots we are maintaining is
> > > pgstat.c have some stale slot entry (entry exists but the actual slot
> > > is dropped)?
> > >
> >
> > A similar drawback (the user created a slot with the same name after
> > dropping it) exists with this as well.
>
> pgstat_report_replslot_drop() already prevents that, no?
>

Yeah, normally it would prevent that but what if a drop message is lost?

--
With Regards,
Amit Kapila.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Kapila 2021-03-21 10:40:35 Re: Replication slot stats misgivings
Previous Message Amit Kapila 2021-03-21 09:54:44 Re: replication cleanup code incorrect way to use of HTAB HASH_REMOVE ?