Changeset: 434a1a2618a0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/434a1a2618a0
Modified Files:
monetdb5/optimizer/opt_pipes.c
Branch: dict
Log Message:
merged with default
diffs (157 lines):
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -4352,8 +4352,11 @@ gdk_add_callback(char *name, gdk_callbac
int cnt = 1;
do {
// check if already added
- if (strcmp(callback->name, p->name) == 0)
+ if (strcmp(callback->name, p->name) == 0) {
+ MT_lock_unset(&GDKCallbackListLock);
+ GDKfree(callback);
return GDK_FAIL;
+ }
if (p->next == NULL) {
p->next = callback;
p = callback->next;
diff --git a/monetdb5/optimizer/opt_pipes.c b/monetdb5/optimizer/opt_pipes.c
--- a/monetdb5/optimizer/opt_pipes.c
+++ b/monetdb5/optimizer/opt_pipes.c
@@ -51,10 +51,10 @@ static struct PIPELINES {
"optimizer.dict();"
"optimizer.multiplex();"
"optimizer.generator();"
- "optimizer.profiler();"
//"optimizer.candidates();" only for decoration in explain
//"optimizer.mask();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
{"minimal_fast",
"optimizer.minimalfast()",
@@ -94,7 +94,6 @@ static struct PIPELINES {
"optimizer.querylog();"
"optimizer.multiplex();"
"optimizer.generator();"
- "optimizer.profiler();"
"optimizer.candidates();"
//"optimizer.mask();"
"optimizer.deadcode();"
@@ -102,6 +101,7 @@ static struct PIPELINES {
// "optimizer.jit();" awaiting the new batcalc api
"optimizer.wlc();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
{"default_fast",
"optimizer.defaultfast()",
@@ -135,7 +135,6 @@ static struct PIPELINES {
"optimizer.querylog();"
"optimizer.multiplex();"
"optimizer.generator();"
- "optimizer.profiler();"
"optimizer.candidates();"
//"optimizer.mask();"
"optimizer.deadcode();"
@@ -144,6 +143,7 @@ static struct PIPELINES {
"optimizer.oltp();"
"optimizer.wlc();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
/*
* Volcano style execution produces a sequence of blocks from the source
relation
@@ -174,7 +174,6 @@ static struct PIPELINES {
"optimizer.multiplex();"
"optimizer.generator();"
"optimizer.volcano();"
- "optimizer.profiler();"
"optimizer.candidates();"
//"optimizer.mask();"
"optimizer.deadcode();"
@@ -182,6 +181,7 @@ static struct PIPELINES {
// "optimizer.jit();" awaiting the new batcalc api
"optimizer.wlc();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
/* The no_mitosis pipe line is (and should be kept!) identical to the
* default pipeline, except that optimizer mitosis is omitted. It is
@@ -217,7 +217,6 @@ static struct PIPELINES {
"optimizer.querylog();"
"optimizer.multiplex();"
"optimizer.generator();"
- "optimizer.profiler();"
"optimizer.candidates();"
//"optimizer.mask();"
"optimizer.deadcode();"
@@ -225,6 +224,7 @@ static struct PIPELINES {
// "optimizer.jit();" awaiting the new batcalc api
"optimizer.wlc();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
/* The sequential pipe line is (and should be kept!) identical to the
* default pipeline, except that optimizers mitosis & dataflow are
@@ -260,7 +260,6 @@ static struct PIPELINES {
"optimizer.querylog();"
"optimizer.multiplex();"
"optimizer.generator();"
- "optimizer.profiler();"
"optimizer.candidates();"
//"optimizer.mask();"
"optimizer.deadcode();"
@@ -268,6 +267,7 @@ static struct PIPELINES {
// "optimizer.jit();" awaiting the new batcalc api
"optimizer.wlc();"
"optimizer.garbageCollector();",
+ "optimizer.profiler();"
"stable", NULL, 1},
/* Experimental pipelines stressing various components under
* development. Do not use any of these pipelines in production
diff --git a/sql/test/Tests/setoptimizer.test b/sql/test/Tests/setoptimizer.test
--- a/sql/test/Tests/setoptimizer.test
+++ b/sql/test/Tests/setoptimizer.test
@@ -29,29 +29,30 @@ query TTT nosort
select * from optimizers()
----
minimal_pipe
-optimizer.inline();optimizer.remap();optimizer.bincopyfrom();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.bincopyfrom();optimizer.deadcode();optimizer.multiplex();optimizer.generator();optimizer.garbageCollector();
+optimizer.profiler();stable
minimal_fast
optimizer.minimalfast()
stable
default_pipe
-optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
+optimizer.profiler();stable
default_fast
optimizer.defaultfast()
stable
oltp_pipe
-optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.oltp();optimizer.wlc();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.oltp();optimizer.wlc();optimizer.garbageCollector();
+optimizer.profiler();stable
volcano_pipe
-optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.volcano();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.volcano();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
+optimizer.profiler();stable
no_mitosis_pipe
-optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.dataflow();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
+optimizer.profiler();stable
sequential_pipe
-optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.profiler();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
-stable
+optimizer.inline();optimizer.remap();optimizer.costModel();optimizer.coercions();optimizer.aliases();optimizer.evaluate();optimizer.emptybind();optimizer.deadcode();optimizer.pushselect();optimizer.aliases();optimizer.mergetable();optimizer.bincopyfrom();optimizer.aliases();optimizer.constants();optimizer.commonTerms();optimizer.projectionpath();optimizer.deadcode();optimizer.matpack();optimizer.reorder();optimizer.querylog();optimizer.multiplex();optimizer.generator();optimizer.candidates();optimizer.deadcode();optimizer.postfix();optimizer.wlc();optimizer.garbageCollector();
+optimizer.profiler();stable
statement ok
set optimizer='default_pipe'
+
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list