Re: pgsql: Improve performance of SendRowDescriptionMessage.

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Noah Misch <noah@leadboat.com>
Cc: Andres Freund <andres@anarazel.de>, pgsql-committers@postgresql.org
Date: 2017-10-13T02:44:20Z
Lists: pgsql-hackers
Noah Misch <noah@leadboat.com> writes:
> On Thu, Oct 12, 2017 at 04:08:44PM -0700, Andres Freund wrote:
>> Noah, any chance you could force restrict to off on that animal?

> I can confirm it allows "make check" to pass.

So that leaves us with two theories:

1. hornet's compiler contains a bug that causes it to misoptimize
in the presence of "restrict".

2. There's a bug in the way HEAD is applying "restrict", which happens
not to manifest on other platforms.

While I have to agree with Andres' evident feeling that it's probably
#1, I do not think we should dismiss #2 without inquiring a bit
harder.  It would be really useful, I think, if we could characterize
exactly how the RowDescription output is broken in that build.
Noah, could you capture some of those messages somehow?

			regards, tom lane


Commits

  1. Force "restrict" not to be used when compiling with xlc.

  2. Rely on sizeof(typename) rather than sizeof(variable) in pqformat.h.

  3. Use C99 restrict via pg_restrict, rather than restrict directly.

  4. Improve performance of SendRowDescriptionMessage.

  5. Partially flatten struct tupleDesc so that it can be used in DSM.

  6. Remove useless duplicate inclusions of system header files.