Changeset: 0ea9df90b1d0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0ea9df90b1d0
Modified Files:
sql/backends/monet5/sql_gencode.c
sql/rel.txt
sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
Branch: default
Log Message:
approved output
fixed problem with like and filters
diffs (94 lines):
diff --git a/sql/backends/monet5/sql_gencode.c
b/sql/backends/monet5/sql_gencode.c
--- a/sql/backends/monet5/sql_gencode.c
+++ b/sql/backends/monet5/sql_gencode.c
@@ -396,11 +396,14 @@ multiplexN(MalBlkPtr mb, char *mod, char
static int
dump_joinN(backend *sql, MalBlkPtr mb, stmt *s)
{
- char *mod = sql_func_mod(s->op4.funcval->func);
- char *fimp = sql_func_imp(s->op4.funcval->func);
+ char *mod, *fimp;
InstrPtr q;
int k, op1, op2, op3 = 0;
+ backend_create_func(sql, s->op4.funcval->func);
+ mod = sql_func_mod(s->op4.funcval->func);
+ fimp = sql_func_imp(s->op4.funcval->func);
+
/* dump left and right operands */
op1 = _dumpstmt(sql, mb, s->op1);
op2 = _dumpstmt(sql, mb, s->op2);
diff --git a/sql/rel.txt b/sql/rel.txt
--- a/sql/rel.txt
+++ b/sql/rel.txt
@@ -105,18 +105,13 @@ e_cmp
cmp_equal = 4,
cmp_notequal = 5,
- cmp_notlike = 6, /* tobe removed */
- cmp_like = 7,
- cmp_notilike = 8,
- cmp_ilike = 9,
+ cmp_filter = 6, filters ->r is
a list of values
+ cmp_or = 7, or handling ->l/r
are both lists
+ cmp_in = 8, in list handling ->r is
a list of values
+ cmp_notin = 9 not in list handling ->r is
a list of values
- cmp_or = 10, or handling ->l/r
are both lists
-
- cmp_filter = 11, filters ->r is
a list of values
- cmp_in = 12, in list handling ->r is
a list of values
- cmp_notin = 13 not in list handling ->r is
a list of values
-
- cmp_all = 14, cross product
+ cmp_all = 10, cross product
+ cmp_project = 11, special case for projection
joins
)
e_func
diff --git
a/sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
b/sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
---
a/sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
+++
b/sql/test/BugTracker-2009/Tests/segfault_when_quitting_debugger.SF-2538837.stable.out
@@ -25,7 +25,7 @@ Ready.
# 12:13:20 >
mdb># mdb.start();
-mdb># user.s1_1();
+mdb># X_2:void := user.s1_1();
# 12:13:21 >
# 12:13:21 > Done.
diff --git a/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
b/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
--- a/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
+++ b/sql/test/BugTracker/Tests/explain.SF-1739353.stable.out
@@ -49,8 +49,8 @@ Ready.
| X_22:bat[:oid,:str] := sql.bind(X_2,"sys","_tables","name",2); |
| X_25 := algebra.kdifference(X_24,X_22); |
| X_26 := algebra.kunion(X_25,X_22); |
-| X_20:bat[:oid,:str] := sql.bind(X_2,"sys","_tables","name",1); |
-| X_27 := algebra.kunion(X_26,X_20); |
+| X_19:bat[:oid,:str] := sql.bind(X_2,"sys","_tables","name",1); |
+| X_27 := algebra.kunion(X_26,X_19); |
| X_47 := algebra.leftjoin(X_46,X_27); |
| X_51 := bat.append(X_48,X_47,true); |
| X_12:bat[:oid,:sht] := sql.bind(X_2,"tmp","_tables","type",0); |
diff --git a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
--- a/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
+++ b/sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out
@@ -41,14 +41,14 @@ Ready.
| | | | | | | table(sys._tables) [ _tables.id as p.id, _tables.type as p.type,
_tables.%TID% NOT NULL as p.%TID% ] |
| | | | | | ) [ p.type < smallint[tinyint "2"] ]
|
| | | | | ) [ p.id as tables.id ]
|
-| | | | ) [ sys.count() NOT NULL as L1 ],
|
+| | | | ) [ ] [ sys.count() NOT NULL as L1 ],
|
| | | | group by (
|
| | | | | project (
|
| | | | | | select (
|
| | | | | | | table(tmp._tables) [ _tables.id as t.id, _tables.type as t.type,
_tables.%TID% NOT NULL as t.%TID% ] |
| | | | | | ) [ t.type < smallint[tinyint "2"] ]
|
| | | | | ) [ t.id as tables.id ]
|
-| | | | ) [ sys.count() NOT NULL as L1 ]
|
+| | | | ) [ ] [ sys.count() NOT NULL as L1 ]
|
| | | ) [ L1 ]
|
| | ) [ ] [ sys.sum no nil (L1) as L1 ]
|
| ) [ L1 NOT NULL ]
|
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list