Re: Second thoughts on CheckIndexCompatible() vs. operator families
Alvaro Herrera <alvherre@commandprompt.com>
From: Alvaro Herrera <alvherre@commandprompt.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Noah Misch <noah@leadboat.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2012-01-25T20:52:59Z
Lists: pgsql-hackers
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@leadboat.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.
--
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support