Changeset: c35df5669d2a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c35df5669d2a
Modified Files:
monetdb5/optimizer/opt_commonTerms.c
monetdb5/optimizer/opt_support.c
sql/backends/monet5/sql_statement.c
Branch: Aug2024
Log Message:
skip mat functions for commonTerms as they need to work in sets
don't mark mat as Update function as that breaks dataflow
properly set null for Nop's.
diffs (38 lines):
diff --git a/monetdb5/optimizer/opt_commonTerms.c
b/monetdb5/optimizer/opt_commonTerms.c
--- a/monetdb5/optimizer/opt_commonTerms.c
+++ b/monetdb5/optimizer/opt_commonTerms.c
@@ -144,6 +144,11 @@ OPTcommonTermsImplementation(Client cntx
old[i] = NULL;
continue;
}
+ if (getModuleId(p) == matRef) { /* mat.packIncrement has
requirement on number of instructions (or that needs an update */
+ pushInstruction(mb, p);
+ old[i] = NULL;
+ continue;
+ }
/* from here we have a candidate to look for a match */
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
@@ -264,8 +264,6 @@ isUpdateInstruction(InstrPtr p)
&& (getFunctionId(p) == appendRef || getFunctionId(p) ==
replaceRef
|| getFunctionId(p) == deleteRef))
return TRUE;
- if (getModuleId(p) == matRef)
- return TRUE;
return FALSE;
}
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
@@ -4633,7 +4633,6 @@ stmt_has_null(stmt *s)
{
switch (s->type) {
case st_aggr:
- case st_Nop:
case st_semijoin:
case st_uselect:
case st_uselect2:
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]