Changeset: 440907e507d4 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/440907e507d4
Modified Files:
        monetdb5/optimizer/opt_reorder.c
Branch: default
Log Message:

fixed problem in reorder optimizer, ie handle barrier exit's using the 'output' 
variables depth.


diffs (20 lines):

diff --git a/monetdb5/optimizer/opt_reorder.c b/monetdb5/optimizer/opt_reorder.c
--- a/monetdb5/optimizer/opt_reorder.c
+++ b/monetdb5/optimizer/opt_reorder.c
@@ -93,12 +93,15 @@ OPTreorderImplementation(Client cntxt, M
                                k =  getVarConstant(mb, getArg(p, 
p->argc-2)).val.ival;
                                assert( k < MAXSLICES);
                                depth[getArg(p,0)] = k;
-                       } 
+                       }
                } else{
                        for(j= p->retc; j <p->argc; j++){
                                if (depth[getArg(p,j)] > k)
                                        k = depth[getArg(p,j)];
                        }
+                       if (blockExit(p)) /* The barrier exit has a return 
variable which matches the result of the blockBegin
+                                                                output, ie we 
need too use that for the depth */
+                               k = depth[getArg(p,0)];
                        for(j=0; j< p->retc; j++)
                                if( depth[getArg(p,j)] == 0)
                                        depth[getArg(p,j)] = k;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to