Re: Replication slot stats misgivings

Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>

From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
To: vignesh C <vignesh21@gmail.com>
Cc: Masahiko Sawada <sawada.mshk@gmail.com>, Amit Kapila <amit.kapila16@gmail.com>, Andres Freund <andres@anarazel.de>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>
Date: 2021-04-05T07:14:06Z
Lists: pgsql-hackers
On Sat, Apr 3, 2021 at 11:12 PM vignesh C <vignesh21@gmail.com> wrote:
> Here pg_stat_replication_slots will not have enought slots. I changed
> it to below:
> errmsg("skipping \"%s\" replication slot statistics as
> pg_stat_replication_slots does not have enough slots"
> Thoughts?

WFM.

> > 3) Should we change the if condition to max_replication_slots <=
> > nReplSlotStats instead of max_replication_slots == nReplSlotStats? In
> > the scenario, it is mentioned that "one of the replication slots is
> > dropped", will this issue occur when multiple replication slots are
> > dropped?
> >
>
> I felt it should be max_replication_slots == nReplSlotStats, if
> max_replication_slots = 5, we will be able to store 5 replication slot
> statistics from 0,1..4, from 5th we will not have space. I think this
> need not be changed.

I'm not sure whether we can have a situation where
max_replication_slots < nReplSlotStats i.e. max_replication_slots
getting set to lesser than nReplSlotStats. I think I didn't get the
above mentioned scenario i.e.  max_replication_slots == nReplSlotStats
correctly. It will be great if you could throw some light on that
scenario and ensure that it's not possible to reach a situation where
max_replication_slots < nReplSlotStats.

With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com



Commits

  1. Doc: Update logical decoding stats information.

  2. Fix tests for replication slots stats.

  3. Update replication statistics after every stream/spill.

  4. Fix the computation of slot stats for 'total_bytes'.

  5. Another try to fix the test case added by commit f5fc2f5b23.

  6. Use HTAB for replication slot statistics.

  7. Fix test case added by commit f5fc2f5b23.

  8. Add information of total data processed to replication slot stats.

  9. Use NameData datatype for slotname in stats.