Changeset: 5bf343520c89 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5bf343520c89
Modified Files:
        monetdb5/optimizer/opt_projectionpath.c
        sql/backends/monet5/sql.c
Branch: candidate-type
Log Message:

Fix some problems uncovered by testing.


diffs (37 lines):

diff --git a/monetdb5/optimizer/opt_projectionpath.c 
b/monetdb5/optimizer/opt_projectionpath.c
--- a/monetdb5/optimizer/opt_projectionpath.c
+++ b/monetdb5/optimizer/opt_projectionpath.c
@@ -265,7 +265,8 @@ OPTprojectionpathImplementation(Client c
 
                        /* fix the type */
                        setVarUDFtype(mb, getArg(q,0));
-                       setVarType(mb, getArg(q,0), 
newBatType(ATOMtype(getBatType(getArgType(mb,q,q->argc-1)))));
+                       /* j = getBatType(getArgType(mb,q,q->argc-1)); */
+                       /* setVarType(mb, getArg(q,0), newBatType(j == 
TYPE_void ? TYPE_oid : j)); */
                        if ( getFunctionId(q) == projectionRef )
                                setFunctionId(q,projectionpathRef);
                        q->typechk = TYPE_UNKNOWN;
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -1613,6 +1613,11 @@ DELTAsub(bat *result, const bat *col, co
                                BBPunfix(u->batCacheid);
                                throw(MAL, "sql.delta", SQLSTATE(HY001) 
MAL_MALLOC_FAIL);
                        }
+                       if (!u->batIscand) {
+                               if (res->ttype == TYPE_cnd)
+                                       res->ttype = TYPE_oid;
+                               res->batIscand = false;
+                       }
                        ret = BATappend(res, u, cminu, true);
                        BBPunfix(u->batCacheid);
                        if (cminu)
@@ -1628,7 +1633,7 @@ DELTAsub(bat *result, const bat *col, co
                        if (ret != GDK_SUCCEED) {
                                throw(MAL, "sql.delta", SQLSTATE(HY001) 
MAL_MALLOC_FAIL);
                        }
-                       res = u;
+                       res = BATfixcand(u);
                } else {
                        BBPunfix(u_val->batCacheid);
                        BBPunfix(u_id->batCacheid);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to