Re: GetSubscriptionRelations declares too many scan keys - Mailing list pgsql-hackers

From Julien Rouhaud
Subject Re: GetSubscriptionRelations declares too many scan keys
Date
Msg-id 20210510091653.34m65yftd4gi5kbr@nol
Whole thread Raw
In response to Re: GetSubscriptionRelations declares too many scan keys  (Peter Smith <smithpb2250@gmail.com>)
Responses Re: GetSubscriptionRelations declares too many scan keys
Re: GetSubscriptionRelations declares too many scan keys
List pgsql-hackers
On Mon, May 10, 2021 at 07:09:29PM +1000, Peter Smith wrote:
> On Mon, May 10, 2021 at 6:09 PM Bharath Rupireddy
> <bharath.rupireddyforpostgres@gmail.com> wrote:
> >
> > On Mon, May 10, 2021 at 12:36 PM Peter Smith <smithpb2250@gmail.com> wrote:
> > >
> > > The function GetSubscriptionRelations was declaring ScanKeyData
> > > skey[2]; but actually
> > > only uses 1 scan key. It seems like the code was cut/paste from other
> > > nearby functions
> > > which really are using 2 keys.
> > >
> > > PSA a trivial patch to declare the correct number of keys for this function.
> >
> > +1 for the change. It looks like a cut/paste type introduced by the
> > commit 7c4f52409a.
> >
> > A comment on the patch: why do we need to declare an array of 1
> > element ScanKeyData skey[1];? Instead, can we just do ScanKeyData
> > skey;?
> 
> IMO declaring skey[1] is better because then the code can share the
> same pattern as every other ScanData skey[n] code.
> 
> Please search PG source code for "ScanData skey[1];" - there are
> dozens of precedents where other people felt the same as me for
> declaring single keys.

AFAICT there are 73 occurences vs 62 of the "Scandata skey;".  I don't think
there's a huge consensus for one over the other.



pgsql-hackers by date:

Previous
From: Greg Nancarrow
Date:
Subject: Executor code - found an instance of a WHILE that should just be an IF
Next
From: Fabien COELHO
Date:
Subject: Re: seawasp failing, maybe in glibc allocator