From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Peter Geoghegan <pg(at)bowt(dot)ie>, Floris Van Nee <florisvannee(at)optiver(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Delaying/avoiding BTreeTupleGetNAtts() call within _bt_compare() |
Date: | 2020-02-19 22:38:24 |
Message-ID: | 20200219223824.vr72lr7jbilpkyuc@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 2020-02-19 15:55:38 -0500, Tom Lane wrote:
> Peter Geoghegan <pg(at)bowt(dot)ie> writes:
> > It also inlines (in the second patch) by marking the _bt_compare
> > definition as inline, while not changing anything in nbtree.h. I
> > believe that this is portable C99 -- let's see what CF Tester thinks
> > of it.
> Boy, I'd be pretty darn hesitant to go there, even with our new
> expectation of C99 compilers. What we found out when we last experimented
> with non-static inlines was that the semantics were not very portable nor
> desirable. I've forgotten the details unfortunately.
I think most of those problems were about putting extern inlines into
headers however - not about putting an inline onto an extern within one
translation unit only. Given that potential fallout should be within a
single file, and can fairly easily be fixed with adding wrappers etc, I
think it's a fairly low risk experiment to see what the buildfarm
thinks.
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2020-02-19 22:45:04 | Re: Delaying/avoiding BTreeTupleGetNAtts() call within _bt_compare() |
Previous Message | Alex Malek | 2020-02-19 21:35:53 | bad wal on replica / incorrect resource manager data checksum in record / zfs |