Re: What to do with inline warnings?

From: Gregory Stark <stark(at)enterprisedb(dot)com>
To: "Martijn van Oosterhout" <kleptog(at)svana(dot)org>
Cc: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Peter Eisentraut" <peter_e(at)gmx(dot)net>, <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: What to do with inline warnings?
Date: 2008-05-14 19:35:37
Message-ID: 874p90el12.fsf@oxford.xeocode.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Martijn van Oosterhout" <kleptog(at)svana(dot)org> writes:

> On Wed, May 14, 2008 at 12:45:49PM -0400, Tom Lane wrote:
>> > tqual.c: In function ‘HeapTupleSatisfiesVacuum’:
>> > tqual.c:88: error: inlining failed in call to ‘SetHintBits’: call is unlikely and code size would grow
>> > tqual.c:1057: error: called from here
>> > tqual.c:88: error: inlining failed in call to ‘SetHintBits’: call is unlikely and code size would grow
>> > tqual.c:1061: error: called from here
>>
>> Hmm, it's a bit disturbing that the compiler is taking it upon itself to
>> decide that these calls are "unlikely".
>
> Perhaps would should give it some idea about how likely they'd be,
> because clearly it has no idea now.

Fwiw, these two call sites are only for when HeapTupleSatisfiesMVCC finds a
tuples which has been moved away by VACUUM FULL... The latter for when it
finds such a tuple but the VACUUM FULL aborted.

It seems quite likely that the compiler is actually right (by chance) and we
shouldn't be optimizing those cases at the expense of more common cases.

--
Gregory Stark
EnterpriseDB http://www.enterprisedb.com
Ask me about EnterpriseDB's On-Demand Production Tuning

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message daveg 2008-05-14 19:47:27 Re: libpq object hooks
Previous Message Gregory Stark 2008-05-14 19:25:10 Re: What to do with inline warnings?