Fix silly mistake in expand_indexqual_rowcompare --- in converting a forboth()
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 7 Feb 2008 17:53:53 +0000 (17:53 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 7 Feb 2008 17:53:53 +0000 (17:53 +0000)
into an iteration over three parallel lists, I had accidentally put the lnext
steps outside the loop.  Sigh.  Per bug #3938.

src/backend/optimizer/path/indxpath.c

index b26fcc962e5e42c228fe8dac56d4ae57addc729f..8a2e808cc30813b537b9e715e4cbc9e62e137689 100644 (file)
@@ -9,7 +9,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/optimizer/path/indxpath.c,v 1.226 2008/01/01 19:45:50 momjian Exp $
+ *       $PostgreSQL: pgsql/src/backend/optimizer/path/indxpath.c,v 1.227 2008/02/07 17:53:53 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -2619,9 +2619,9 @@ expand_indexqual_rowcompare(RestrictInfo *rinfo,
                                                 op_strategy, lefttype, righttype, opfam);
                        }
                        new_ops = lappend_oid(new_ops, expr_op);
+                       lefttypes_cell = lnext(lefttypes_cell);
+                       righttypes_cell = lnext(righttypes_cell);
                }
-               lefttypes_cell = lnext(lefttypes_cell);
-               righttypes_cell = lnext(righttypes_cell);
        }
 
        /* If we have more than one matching col, create a subset rowcompare */