Re: Second thoughts on CheckIndexCompatible() vs. operator families

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Noah Misch <noah(at)leadboat(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Second thoughts on CheckIndexCompatible() vs. operator families
Date: 2012-01-26 04:53:10
Message-ID: 20628.1327553590@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> Excerpts from Robert Haas's message of mi ene 25 17:32:49 -0300 2012:
>> On Sun, Jan 22, 2012 at 12:23 AM, Noah Misch <noah(at)leadboat(dot)com> wrote:
> New version that repairs a defective test case.
>>
>> Committed. I don't find this to be particularly good style:
>>
>> + for (i = 0; i < old_natts && ret; i++)
>> + ret = (!IsPolymorphicType(get_opclass_input_type(classObjectId[i
>> + irel->rd_att->attrs[i]->atttypid == typeObjectId[i]);
>>
>> ...but I am not sure whether we have any formal policy against it, so
>> I just committed it as-is for now. I would have surrounded the loop
>> with an if (ret) block and written the body of the loop as if
>> (condition) { ret = false; break; }.

> I find that code way too clever.

Not only is that code spectacularly unreadable, but has nobody noticed
that this commit broke the buildfarm?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2012-01-26 05:27:48 Re: Avoiding shutdown checkpoint at failover
Previous Message Fujii Masao 2012-01-26 04:22:26 Re: WAL Restore process during recovery