From: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> |
---|---|
To: | vignesh C <vignesh21(at)gmail(dot)com> |
Cc: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL-development <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-04-02 05:58:09 |
Message-ID: | CALj2ACUbe7oV4_X4y11Z27qcJACZo7R2LXULX3SZUXrvSrd6Zw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Apr 2, 2021 at 9:57 AM vignesh C <vignesh21(at)gmail(dot)com> wrote:
> Thanks for the comments, I will fix the comments and provide a patch
> for this soon.
Here are some comments:
1) How about something like below
+ (errmsg("skipping \"%s\" replication slot
statistics as the statistic collector process does not have enough
statistic slots",
instead of
+ (errmsg("skipping \"%s\" replication
slot's statistic as the statistic collector process does not have
enough statistic slots",
2) Does it mean "pg_statistic slots" when we say "statistic slots" in
the above warning? If yes, why can't we use "pg_statistic slots"
instead of "statistic slots" as with another existing message
"insufficient pg_statistic slots for array stats"?
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?
4) Let's end the statement after this and start a new one, something like below
+ * this. To avoid writing beyond the max_replication_slots
instead of
+ * this, to avoid writing beyond the max_replication_slots
5) How about something like below
+ * this. To avoid writing beyond the max_replication_slots,
+ * this replication slot statistics information will
be skipped.
+ */
instead of
+ * this, to avoid writing beyond the max_replication_slots
+ * these replication slot statistic information will
be skipped.
+ */
6) Any specific reason to use a new local variable replSlotStat and
later memcpy into replSlotStats[nReplSlotStats]? Instead we could
directly fread into &replSlotStats[nReplSlotStats] and do
memset(&replSlotStats[nReplSlotStats], 0,
sizeof(PgStat_ReplSlotStats)); before the warnings. As warning
scenarios seem to be less frequent, we could avoid doing memcpy
always.
- if (fread(&replSlotStats[nReplSlotStats], 1,
sizeof(PgStat_ReplSlotStats), fpin)
+ if (fread(&replSlotStat, 1, sizeof(PgStat_ReplSlotStats), fpin)
+ memcpy(&replSlotStats[nReplSlotStats], &replSlotStat,
sizeof(PgStat_ReplSlotStats));
With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Kyotaro Horiguchi | 2021-04-02 05:59:24 | Re: libpq debug log |
Previous Message | Amit Kapila | 2021-04-02 05:55:29 | Re: Replication slot stats misgivings |