Changeset: 8ddfdc1d81b5 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/8ddfdc1d81b5
Modified Files:
        sql/backends/monet5/sql_statement.c
        sql/backends/monet5/sql_statement.h
Branch: groupjoin
Log Message:

handle markjoin with 2 and 3 results


diffs (37 lines):

diff --git a/sql/backends/monet5/sql_statement.c 
b/sql/backends/monet5/sql_statement.c
--- a/sql/backends/monet5/sql_statement.c
+++ b/sql/backends/monet5/sql_statement.c
@@ -2107,18 +2107,19 @@ stmt_markselect(backend *be, stmt *g, st
 }
 
 stmt *
-stmt_markjoin(backend *be, stmt *l, stmt *r, bool any)
+stmt_markjoin(backend *be, stmt *l, stmt *r, bool final)
 {
        MalBlkPtr mb = be->mb;
        InstrPtr q;
 
        q = newStmtArgs(mb, algebraRef, markjoinRef, 8);
        q = pushReturn(mb, q, newTmpVariable(mb, TYPE_any));
+       if (!final)
+               q = pushReturn(mb, q, newTmpVariable(mb, TYPE_any));
        q = pushArgument(mb, q, l->nr); /* left ids */
        q = pushArgument(mb, q, r->nr); /* mark info mask */
        q = pushNil(mb, q, TYPE_bat);
        q = pushNil(mb, q, TYPE_bat);
-       q = pushBit(mb, q, (any)?TRUE:FALSE);
        q = pushNil(mb, q, TYPE_lng);
        pushInstruction(mb, q);
 
diff --git a/sql/backends/monet5/sql_statement.h 
b/sql/backends/monet5/sql_statement.h
--- a/sql/backends/monet5/sql_statement.h
+++ b/sql/backends/monet5/sql_statement.h
@@ -198,7 +198,7 @@ extern stmt *stmt_uselect2(backend *be, 
 extern stmt *stmt_genselect(backend *be, stmt *lops, stmt *rops, sql_subfunc 
*f, stmt *sub, int anti);
 extern stmt *stmt_outerselect(backend *be, stmt *g, stmt *m, stmt *p, bool 
any);
 extern stmt *stmt_markselect(backend *be, stmt *g, stmt *m, stmt *p, bool any);
-extern stmt *stmt_markjoin(backend *be, stmt *l, stmt *r, bool any);
+extern stmt *stmt_markjoin(backend *be, stmt *l, stmt *r, bool final);
 
 extern stmt *stmt_tunion(backend *be, stmt *op1, stmt *op2);
 extern stmt *stmt_tdiff(backend *be, stmt *op1, stmt *op2, stmt *lcand);
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to