Changeset: ff9dc7b6f851 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ff9dc7b6f851
Modified Files:
        clients/Tests/MAL-signatures.stable.out
        clients/Tests/MAL-signatures.stable.out.int128
        clients/Tests/exports.stable.out
        monetdb5/modules/kernel/bat5.c
        monetdb5/optimizer/opt_prelude.c
        monetdb5/optimizer/opt_prelude.h
        monetdb5/optimizer/opt_support.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql.h
        sql/backends/monet5/sql.mal
        sql/backends/monet5/sql_statement.c
        sql/test/miscellaneous/Tests/declared_tables.sql
        sql/test/miscellaneous/Tests/declared_tables.stable.out
Branch: default
Log Message:

Merged with Jun2020


diffs (truncated from 392 to 300 lines):

diff --git a/clients/Tests/MAL-signatures.stable.out 
b/clients/Tests/MAL-signatures.stable.out
--- a/clients/Tests/MAL-signatures.stable.out
+++ b/clients/Tests/MAL-signatures.stable.out
@@ -14077,7 +14077,7 @@ stdout of test 'MAL-signatures` in direc
 [ "sql",       "dec_round",    "command sql.dec_round(v:int, r:int):int ",     
"int_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
 [ "sql",       "dec_round",    "command sql.dec_round(v:lng, r:lng):lng ",     
"lng_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
 [ "sql",       "dec_round",    "command sql.dec_round(v:sht, r:sht):sht ",     
"sht_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
-[ "sql",       "delete",       "unsafe pattern sql.delete(mvc:int, sname:str, 
tname:str, b:any):int ", "mvc_delete_wrap;",     "Delete a row from a table. 
Returns sequence number for order dependece."       ]
+[ "sql",       "delete",       "unsafe pattern sql.delete(mvc:int, sname:str, 
tname:str, b:any):int ", "mvc_delete_wrap;",     "Delete a row from a table. 
Returns sequence number for order dependence."      ]
 [ "sql",       "delta",        "command sql.delta(col:bat[:any_3], 
uid:bat[:oid], uval:bat[:any_3]):bat[:any_3] ",     "DELTAbat2;",   "Return 
column bat with delta's applied."       ]
 [ "sql",       "delta",        "command sql.delta(col:bat[:any_3], 
uid:bat[:oid], uval:bat[:any_3], ins:bat[:any_3]):bat[:any_3] ",    
"DELTAbat;",    "Return column bat with delta's applied."       ]
 [ "sql",       "deltas",       "pattern sql.deltas(schema:str) (ids:bat[:int], 
cleared:bat[:bit], readonly:bat[:lng], inserted:bat[:lng], updated:bat[:lng], 
deleted:bat[:lng], tr_level:bat[:int]) ", "mvc_delta_values;",    "Return the 
delta values sizes of all columns of the schema's tables, plus the current 
transaction level"       ]
diff --git a/clients/Tests/MAL-signatures.stable.out.int128 
b/clients/Tests/MAL-signatures.stable.out.int128
--- a/clients/Tests/MAL-signatures.stable.out.int128
+++ b/clients/Tests/MAL-signatures.stable.out.int128
@@ -19534,7 +19534,7 @@ stdout of test 'MAL-signatures` in direc
 [ "sql",       "dec_round",    "command sql.dec_round(v:int, r:int):int ",     
"int_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
 [ "sql",       "dec_round",    "command sql.dec_round(v:lng, r:lng):lng ",     
"lng_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
 [ "sql",       "dec_round",    "command sql.dec_round(v:sht, r:sht):sht ",     
"sht_dec_round_wrap;",  "round off the value v to nearests multiple of r"       
]
-[ "sql",       "delete",       "unsafe pattern sql.delete(mvc:int, sname:str, 
tname:str, b:any):int ", "mvc_delete_wrap;",     "Delete a row from a table. 
Returns sequence number for order dependece."       ]
+[ "sql",       "delete",       "unsafe pattern sql.delete(mvc:int, sname:str, 
tname:str, b:any):int ", "mvc_delete_wrap;",     "Delete a row from a table. 
Returns sequence number for order dependence."      ]
 [ "sql",       "delta",        "command sql.delta(col:bat[:any_3], 
uid:bat[:oid], uval:bat[:any_3]):bat[:any_3] ",     "DELTAbat2;",   "Return 
column bat with delta's applied."       ]
 [ "sql",       "delta",        "command sql.delta(col:bat[:any_3], 
uid:bat[:oid], uval:bat[:any_3], ins:bat[:any_3]):bat[:any_3] ",    
"DELTAbat;",    "Return column bat with delta's applied."       ]
 [ "sql",       "deltas",       "pattern sql.deltas(schema:str) (ids:bat[:int], 
cleared:bat[:bit], readonly:bat[:lng], inserted:bat[:lng], updated:bat[:lng], 
deleted:bat[:lng], tr_level:bat[:int]) ", "mvc_delta_values;",    "Return the 
delta values sizes of all columns of the schema's tables, plus the current 
transaction level"       ]
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -2043,6 +2043,7 @@ int bstream_destroy_wrap(Bstream *BS);
 str bstream_destroy_wrapwrap(void *ret, Bstream *BS);
 int bstream_read_wrap(int *res, Bstream *BS, int *size);
 str bstream_read_wrapwrap(int *res, Bstream *BS, int *size);
+str bulk_rotate_xor_hashRef;
 str calcRef;
 str callMAL(Client cntxt, MalBlkPtr mb, MalStkPtr *glb, ValPtr argv[], char 
debug);
 str callString(Client c, str s, int listing);
@@ -2214,6 +2215,7 @@ malType getType(MalBlkPtr mb, str nme);
 str getTypeIdentifier(malType tpe);
 str getTypeName(malType tpe);
 lng getUserTime(void);
+str getVariableRef;
 lng getVolume(MalStkPtr stk, InstrPtr pci, int rd);
 int getprofilerlimit(void);
 Module globalModule(str nme);
@@ -2224,6 +2226,7 @@ str groupRef;
 str group_concatRef;
 str groupbyRef;
 str groupdoneRef;
+str growRef;
 int hasCommonResults(InstrPtr p, InstrPtr q);
 int hasSameArguments(MalBlkPtr mb, InstrPtr p, InstrPtr q);
 int hasSameSignature(MalBlkPtr mb, InstrPtr p, InstrPtr q);
@@ -2243,7 +2246,6 @@ void initParser(void);
 void initProfiler(void);
 str initQlog(void);
 int inlineMALblock(MalBlkPtr mb, int pc, MalBlkPtr mc);
-str inplaceRef;
 void insertSymbol(Module scope, Symbol prg);
 str instruction2str(MalBlkPtr mb, MalStkPtr stl, InstrPtr p, int hidden);
 str intRef;
diff --git a/monetdb5/modules/kernel/bat5.c b/monetdb5/modules/kernel/bat5.c
--- a/monetdb5/modules/kernel/bat5.c
+++ b/monetdb5/modules/kernel/bat5.c
@@ -226,7 +226,7 @@ BKCmirror(bat *ret, const bat *bid)
        return MAL_SUCCEED;
 }
 
-char *
+str
 BKCdelete(bat *r, const bat *bid, const oid *h)
 {
        BAT *b;
@@ -274,7 +274,7 @@ BKCdelete_all(bat *r, const bat *bid)
                throw(MAL, "bat.delete", SQLSTATE(HY002) 
RUNTIME_OBJECT_MISSING);
        if (BATclear(b, false) != GDK_SUCCEED) {
                BBPunfix(b->batCacheid);
-               throw(MAL, "bat.delete_all", GDK_EXCEPTION);
+               throw(MAL, "bat.delete", GDK_EXCEPTION);
        }
        if( !b->batTransient)
                BATmsync(b);
@@ -282,7 +282,7 @@ BKCdelete_all(bat *r, const bat *bid)
        return MAL_SUCCEED;
 }
 
-char *
+str
 BKCappend_cand_force_wrap(bat *r, const bat *bid, const bat *uid, const bat 
*sid, const bit *force)
 {
        BAT *b, *u, *s = NULL;
@@ -315,19 +315,19 @@ BKCappend_cand_force_wrap(bat *r, const 
        return MAL_SUCCEED;
 }
 
-char *
+str
 BKCappend_cand_wrap(bat *r, const bat *bid, const bat *uid, const bat *sid)
 {
        return BKCappend_cand_force_wrap(r, bid, uid, sid, NULL);
 }
 
-char *
+str
 BKCappend_wrap(bat *r, const bat *bid, const bat *uid)
 {
        return BKCappend_cand_force_wrap(r, bid, uid, NULL, NULL);
 }
 
-char *
+str
 BKCappend_force_wrap(bat *r, const bat *bid, const bat *uid, const bit *force)
 {
        return BKCappend_cand_force_wrap(r, bid, uid, NULL, force);
diff --git a/monetdb5/optimizer/opt_prelude.c b/monetdb5/optimizer/opt_prelude.c
--- a/monetdb5/optimizer/opt_prelude.c
+++ b/monetdb5/optimizer/opt_prelude.c
@@ -68,6 +68,7 @@ str bindRef;
 str blockRef;
 str bpmRef;
 str bstreamRef;
+str bulk_rotate_xor_hashRef;
 str calcRef;
 str capiRef;
 str catalogRef;
@@ -135,6 +136,7 @@ str first_valueRef;
 str generatorRef;
 str getRef;
 str getTraceRef;
+str getVariableRef;
 str grant_functionRef;
 str grantRef;
 str grant_rolesRef;
@@ -142,6 +144,7 @@ str groupbyRef;
 str group_concatRef;
 str groupdoneRef;
 str groupRef;
+str growRef;
 str hashRef;
 str hgeRef;
 str identityRef;
@@ -149,7 +152,6 @@ str ifthenelseRef;
 str ilikeRef;
 str ilikeselectRef;
 str ilikethetaselectRef;
-str inplaceRef;
 str intersectcandRef;
 str intersectRef;
 str intRef;
@@ -370,6 +372,7 @@ void optimizerInit(void)
        blockRef = putName("block");
        bpmRef = putName("bpm");
        bstreamRef = putName("bstream");
+       bulk_rotate_xor_hashRef = putName("bulk_rotate_xor_hash");
        calcRef = putName("calc");
        capiRef = putName("capi");
        catalogRef = putName("catalog");
@@ -437,6 +440,7 @@ void optimizerInit(void)
        generatorRef = putName("generator");
        getRef = putName("get");
        getTraceRef = putName("getTrace");
+       getVariableRef = putName("getVariable");
        grant_functionRef = putName("grant_function");
        grantRef = putName("grant");
        grant_rolesRef = putName("grant_roles");
@@ -444,6 +448,7 @@ void optimizerInit(void)
        group_concatRef = putName("group_concat");
        groupdoneRef = putName("groupdone");
        groupRef = putName("group");
+       growRef = putName("grow");
        hashRef = putName("hash");
        hgeRef = putName("hge");
        identityRef = putName("identity");
@@ -451,7 +456,6 @@ void optimizerInit(void)
        ilikeRef = putName("ilike");
        ilikeselectRef = putName("ilikeselect");
        ilikethetaselectRef = putName("ilikethetaselect");
-       inplaceRef = putName("inplace");
        intersectcandRef= putName("intersectcand");
        intersectRef = putName("intersect");
        intRef = putName("int");
diff --git a/monetdb5/optimizer/opt_prelude.h b/monetdb5/optimizer/opt_prelude.h
--- a/monetdb5/optimizer/opt_prelude.h
+++ b/monetdb5/optimizer/opt_prelude.h
@@ -64,6 +64,7 @@ mal_export  str bindRef;
 mal_export  str blockRef;
 mal_export  str bpmRef;
 mal_export  str bstreamRef;
+mal_export  str bulk_rotate_xor_hashRef;
 mal_export  str calcRef;
 mal_export  str capiRef;
 mal_export  str catalogRef;
@@ -132,6 +133,7 @@ mal_export  str first_valueRef;
 mal_export  str generatorRef;
 mal_export  str getRef;
 mal_export  str getTraceRef;
+mal_export  str getVariableRef;
 mal_export  str grant_functionRef;
 mal_export  str grantRef;
 mal_export  str grant_rolesRef;
@@ -139,6 +141,7 @@ mal_export  str groupbyRef;
 mal_export  str group_concatRef;
 mal_export  str groupdoneRef;
 mal_export  str groupRef;
+mal_export  str growRef;
 mal_export  str hashRef;
 mal_export  str hgeRef;
 mal_export  str identityRef;
@@ -147,7 +150,6 @@ mal_export  str ilikeRef;
 mal_export  str ilikeselectRef;
 mal_export  str ilikethetaselectRef;
 mal_export  str ilikeuselectRef;
-mal_export  str inplaceRef;
 mal_export  str intersectcandRef;
 mal_export  str intersectRef;
 mal_export  str intRef;
diff --git a/monetdb5/optimizer/opt_support.c b/monetdb5/optimizer/opt_support.c
--- a/monetdb5/optimizer/opt_support.c
+++ b/monetdb5/optimizer/opt_support.c
@@ -295,22 +295,19 @@ safetyBarrier(InstrPtr p, InstrPtr q)
        return FALSE;
 }
 
-
 inline int
 isUpdateInstruction(InstrPtr p){
        if ( getModuleId(p) == sqlRef &&
-          ( getFunctionId(p) == inplaceRef ||
-               getFunctionId(p) == appendRef ||
+          ( getFunctionId(p) == appendRef ||
                getFunctionId(p) == updateRef ||
-               getFunctionId(p) == replaceRef ||
+               getFunctionId(p) == deleteRef ||
+               getFunctionId(p) == growRef ||
                getFunctionId(p) == clear_tableRef))
                        return TRUE;
        if ( getModuleId(p) == batRef &&
-          ( getFunctionId(p) == inplaceRef ||
-               getFunctionId(p) == appendRef ||
-               getFunctionId(p) == updateRef ||
+          ( getFunctionId(p) == appendRef ||
                getFunctionId(p) == replaceRef ||
-               getFunctionId(p) == clear_tableRef))
+               getFunctionId(p) == deleteRef))
                        return TRUE;
        return FALSE;
 }
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
@@ -1644,7 +1644,7 @@ mvc_grow_wrap(Client cntxt, MalBlkPtr mb
        for(;cnt>0; cnt--, v++) {
                if (BUNappend(tid, &v, false) != GDK_SUCCEED) {
                        BBPunfix(Tid);
-                       throw(SQL, "sql", SQLSTATE(HY013) MAL_MALLOC_FAIL);
+                       throw(SQL, "sql.grow", SQLSTATE(HY013) MAL_MALLOC_FAIL);
                }
        }
        BBPunfix(Tid);
diff --git a/sql/backends/monet5/sql.mal b/sql/backends/monet5/sql.mal
--- a/sql/backends/monet5/sql.mal
+++ b/sql/backends/monet5/sql.mal
@@ -304,7 +304,7 @@ comment "Return the tables tid column.";
 
 unsafe pattern delete(mvc:int, sname:str, tname:str, b:any):int
 address mvc_delete_wrap
-comment "Delete a row from a table. Returns sequence number for order 
dependece.";
+comment "Delete a row from a table. Returns sequence number for order 
dependence.";
 
 unsafe pattern resultSet(tbl:str, attr:str, tpe:str, len:int, scale:int, 
eclass:int, val:any) :int 
 address mvc_scalar_value_wrap
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
@@ -330,7 +330,7 @@ stmt_var(backend *be, const char *varnam
        if (level == 1 ) { /* global */
                int tt = t->type->localtype;
 
-               q = newStmt(mb, sqlRef, putName("getVariable"));
+               q = newStmt(mb, sqlRef, getVariableRef);
                q = pushArgument(mb, q, be->mvc_var);
                q = pushStr(mb, q, varname);
                if (q == NULL)
@@ -522,7 +522,7 @@ stmt_tid(backend *be, sql_table *t, int 
                s->nr = l[0];
                return s;
        }
-               q = newStmt(mb, sqlRef, tidRef);
+       q = newStmt(mb, sqlRef, tidRef);
        if (q == NULL)
                return NULL;
        setVarType(mb, getArg(q, 0), newBatType(tt));
@@ -695,7 +695,7 @@ stmt_append_col(backend *be, sql_column 
                int *l = c->t->data;
 
                if (c->colnr == 0) { /* append to tid column */
-                       q = newStmt(mb, sqlRef, "grow");
+                       q = newStmt(mb, sqlRef, growRef);
                        q = pushArgument(mb, q, l[0]);
                        q = pushArgument(mb, q, b->nr);
                } 
@@ -785,7 +785,7 @@ stmt_update_col(backend *be, sql_column 
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to