Update of /cvsroot/monetdb/sql/src/server
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv22254/src/server

Modified Files:
        rel_optimizer.mx 
Log Message:
propagated changes of Wednesday Nov 11 2009 - Thursday Nov 12 2009
from the Nov2009 branch to the development trunk

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2009/11/11 - nielsnes: src/server/rel_optimizer.mx,1.71.2.2
  fixed bug in new rel_case_fixup (properly use left and right parts
  of div not only left).
  
  made list_select more defensive.
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2009/11/11 - nielsnes: src/server/rel_optimizer.mx,1.71.2.3
  fixed bugs in push select down
           in create table with data
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Index: rel_optimizer.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/rel_optimizer.mx,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -d -r1.74 -r1.75
--- rel_optimizer.mx    11 Nov 2009 15:37:05 -0000      1.74
+++ rel_optimizer.mx    12 Nov 2009 08:39:34 -0000      1.75
@@ -1393,7 +1393,7 @@
                        if (a1->type == e_func && !a1f->func->s && 
                             !strcmp(a1f->func->base.name, "sql_div")) {
                                list *args = a1->l;
-                               sql_exp *le = exp_dup(args->h->next->data), *o;
+                               sql_exp *le = exp_dup(args->h->data), *o;
                                sql_exp *re = exp_dup(args->h->next->data);
 
                                /* if (cond) then val else const */
@@ -1413,7 +1413,7 @@
                        if  (a2->type == e_func && !a2f->func->s && 
                             !strcmp(a2f->func->base.name, "sql_div")) { 
                                list *args = a2->l;
-                               sql_exp *le = exp_dup(args->h->next->data), *o;
+                               sql_exp *le = exp_dup(args->h->data), *o;
                                sql_exp *re = exp_dup(args->h->next->data);
 
                                /* if (cond) then const else val */
@@ -1964,9 +1964,10 @@
                                } else 
                                        err = 1;
 
-                               if (err)
+                               if (err) {
                                        list_append(rel->exps, exp_dup(e));
-                               else
+                                       res = rel;
+                               } else
                                        (*changes)++;
                        } else {
                                list_append(rel->exps, exp_dup(e));


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to