Re: logicalrep_message_type throws an error - Mailing list pgsql-hackers

From Amit Kapila
Subject Re: logicalrep_message_type throws an error
Date
Msg-id CAA4eK1JzHWjdDu1Qzh6Tpb3zD3v_Sku7Yn=ATP=Kb8yiM3onRw@mail.gmail.com
Whole thread Raw
In response to Re: logicalrep_message_type throws an error  (Amit Kapila <amit.kapila16@gmail.com>)
Responses Re: logicalrep_message_type throws an error
List pgsql-hackers
On Thu, Jul 20, 2023 at 9:10 AM Amit Kapila <amit.kapila16@gmail.com> wrote:
>
> On Wed, Jul 19, 2023 at 10:08 AM Ashutosh Bapat
> <ashutosh.bapat.oss@gmail.com> wrote:
> >
> > On Wed, Jul 19, 2023 at 9:01 AM Amit Kapila <amit.kapila16@gmail.com> wrote:
> > >
> > > On Tue, Jul 18, 2023 at 10:27 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote:
> > > >
> > > > Or can we use snprintf() writing "??? (%d)" to a fixed length char[8 +
> > > > 11] allocated on the stack instead?
> > > >
> > >
> > > In the above size calculation, shouldn't it be 7 + 11 where 7 is for
> > > (3 (???) + 1 for space + 2 for () + 1 for terminating null char) and
> > > 11 is for %d? BTW, this avoids dynamic allocation of the err string in
> > > logicalrep_message_type() but we can't return a locally allocated
> > > string, so do you think we should change the prototype of the function
> > > to get this as an argument and then use it both for valid and invalid
> > > cases?
> >
> > There are other places in the code which do something similar by using
> > statically allocated buffers like static char xya[SIZE]. We could do
> > that here. The caller may decide whether to pstrdup this buffer
> > further or just use it one time e.g. as an elog or printf argument.
> >
>
> Okay, changed it accordingly.
>

oops, forgot to attach the patch.

--
With Regards,
Amit Kapila.

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: logicalrep_message_type throws an error
Next
From: Gurjeet Singh
Date:
Subject: Re: Issue in _bt_getrootheight