Now the patch is *really* appended :-)

Tom Lane wrote:


Applied with some editorializing. In particular, I don't believe the original did the right thing with (a - (b - c)).




Oops, missed that case... But now, we have (a + ( b + c)) again. A patch that removes parentheses for + and * is appended.

Regards,
Andfdsa


Index: backend/utils/adt/ruleutils.c
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/backend/utils/adt/ruleutils.c,v
retrieving revision 1.147
diff -c -r1.147 ruleutils.c
*** backend/utils/adt/ruleutils.c       30 Jul 2003 22:56:23 -0000      1.147
--- backend/utils/adt/ruleutils.c       31 Jul 2003 09:32:15 -0000
***************
*** 2547,2552 ****
--- 2547,2559 ----
                                if (node == (Node *) lfirst(((OpExpr *) 
parentNode)->args))
                                        return true;
  
+                               /*
+                                  * Exception: for * and +, ordering doesn't matter
+                                  */
+                               if ((*op == '+' && *parentOp == '+') ||
+                                   (*op == '*' && *parentOp == '*'))
+                                   return true;
+ 
                                return false;
                        }
              /* else do the same stuff as for T_SubLink et al. */
---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to