Re: Raising our compiler requirements for 9.6 - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Raising our compiler requirements for 9.6
Date
Msg-id 20150702160147.GE16267@alap3.anarazel.de
Whole thread Raw
In response to Re: Raising our compiler requirements for 9.6  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On 2015-07-02 11:46:25 -0400, Robert Haas wrote:
> In the case of static inline, the main problem with the status quo
> AFAICS is that you have to do a little dance any time you'd otherwise
> use a static inline function (for those following along at home, "git
> grep INCLUDE_DEFINITIONS src/include" to see how this is done).
> Now,
> it is obviously the case that the first time somebody has to do this
> dance, they will be somewhat inconvenienced, but once you know how to
> do it, it's not incredibly complicated.

I obviously know the schema (having introduced it in pg), but I think
the costs are actually rather significant. It makes development more
complex, it makes things considerably harder to follow, and it's quite
annoying to test (manually redefine PG_USE_INLINE, recompile whole
tree).

Several times people also argued against using inlines with that trick
because it's slowing down older platforms.

> So, just to play the devil's advocate here, who really cares?

I consider our time one of the most scarce resources around.

> I'd consider an argument for adopting one of these features to be much
> stronger if were accompanied by arguments like:
> 
> - If we require feature X, we can reduce the size of the generated
> code and improve performance.

Converting some of the bigger macros (I tested fastgetattr) to inliens,
actually does both.

See also http://archives.postgresql.org/message-id/4407.1435763473%40sss.pgh.pa.us

Now, all that is possible with the INCLUDE_DEFINITIONS stuff, but it
makes it considerably more expensive time/complexity wise.


> If everybody else here says "working around the lack of feature X is
> too much of a pain in the butt and we want to adopt it purely too make
> development easier", I'm not going to sit here and try to fight the
> tide.  But I personally don't find such arguments all that exciting.

I find that an odd attitude.

> I think // comments are a not something we should adopt, because one
> style is better than two

I don't particularly care about // comments either. They do have the
advantage of allowing three more characters of actual content in one
line comments ...

Greetings,

Andres Freund



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Rework the way multixact truncations work
Next
From: Tom Lane
Date:
Subject: Re: Raising our compiler requirements for 9.6