Changeset: 8ef2a7c20703 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8ef2a7c20703
Modified Files:
sql/server/rel_optimizer.c
sql/test/BugTracker-2011/Tests/All
sql/test/snodgrass/cast_select.sql
Branch: Dec2011
Log Message:
Merged from Aug2011 (resolved conflicts)
diffs (230 lines):
diff --git a/java/tests/Test_PStimezone.java b/java/tests/Test_PStimezone.java
--- a/java/tests/Test_PStimezone.java
+++ b/java/tests/Test_PStimezone.java
@@ -60,7 +60,9 @@ public class Test_PStimezone {
// make sure this test is reproducable regardless
timezone
// setting, by overriding the VM's default
-
TimeZone.setDefault(TimeZone.getTimeZone("Africa/Windhoek"));
+ // we have to make sure that one doesn't have daylight
+ // savings corrections
+ TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
SimpleDateFormat tsz =
new SimpleDateFormat("yyyy-MM-dd
HH:mm:ss.SSSZ");
@@ -146,7 +148,7 @@ public class Test_PStimezone {
rs.getTime("t", c) + "
\t" +
rs.getTime("tz", c) + " ");
- c.setTimeZone(TimeZone.getTimeZone("UTC"));
+
c.setTimeZone(TimeZone.getTimeZone("Africa/Windhoek"));
System.out.println(c.getTimeZone().getID() +
":\n\t" +
rs.getTimestamp("ts", c) + "
\t" +
rs.getTimestamp("tsz", c) + "
\t" +
diff --git a/sql/jdbc/tests/Tests/Test_PStimezone.stable.out
b/sql/jdbc/tests/Tests/Test_PStimezone.stable.out
--- a/sql/jdbc/tests/Tests/Test_PStimezone.stable.out
+++ b/sql/jdbc/tests/Tests/Test_PStimezone.stable.out
@@ -23,10 +23,11 @@ Ready.
# 15:11:19 > java Test_PStimezone
jdbc:monetdb://pictor:53368/database?user=monetdb&password=monetdb
# 15:11:19 >
+
0. false false
1. empty call... failed :)
2. inserting records...
-inserting (Africa/Windhoek) 1970-01-01 02:00:00.000+0200, 02:00:00.000+0200
+inserting (UTC) 1970-01-01 00:00:00.000+0000, 00:00:00.000+0000
inserting with calendar timezone UTC
inserting with calendar timezone America/Los_Angeles
inserting with calendar timezone GMT+04:15
@@ -34,40 +35,41 @@ done
3. closing PreparedStatement... passed :)
4. selecting records... passed :)
retrieved row (String):
- 1970-01-01 02:00:00.000000 1970-01-01 02:00:00.000000+02:00
02:00:00 02:00:00+02:00
-default (Africa/Windhoek):
- 1970-01-01 02:00:00.000+0200 1970-01-01 02:00:00.000+0200
02:00:00.000+0200 02:00:00.000+0200
+ 1970-01-01 00:00:00.000000 1970-01-01 01:00:00.000000+01:00
00:00:00 01:00:00+01:00
+default (UTC):
+ 1970-01-01 00:00:00.000+0000 1970-01-01 00:00:00.000+0000
00:00:00.000+0000 00:00:00.000+0000
America/Los_Angeles:
- 1970-01-01 12:00:00.0 1970-01-01 02:00:00.0
12:00:00 02:00:00
-UTC:
- 1970-01-01 04:00:00.0 1970-01-01 02:00:00.0
04:00:00 02:00:00
+ 1970-01-01 08:00:00.0 1970-01-01 00:00:00.0
08:00:00 00:00:00
+Africa/Windhoek:
+ 1969-12-31 22:00:00.0 1970-01-01 00:00:00.0
22:00:00 00:00:00
retrieved row (String):
- 1970-01-01 00:00:00.000000 1970-01-01 02:00:00.000000+02:00
00:00:00 02:00:00+02:00
-default (Africa/Windhoek):
- 1970-01-01 00:00:00.000+0200 1970-01-01 02:00:00.000+0200
00:00:00.000+0200 02:00:00.000+0200
+ 1970-01-01 00:00:00.000000 1970-01-01 01:00:00.000000+01:00
00:00:00 01:00:00+01:00
+default (UTC):
+ 1970-01-01 00:00:00.000+0000 1970-01-01 00:00:00.000+0000
00:00:00.000+0000 00:00:00.000+0000
America/Los_Angeles:
- 1970-01-01 10:00:00.0 1970-01-01 02:00:00.0
10:00:00 02:00:00
-UTC:
- 1970-01-01 02:00:00.0 1970-01-01 02:00:00.0
02:00:00 02:00:00
+ 1970-01-01 08:00:00.0 1970-01-01 00:00:00.0
08:00:00 00:00:00
+Africa/Windhoek:
+ 1969-12-31 22:00:00.0 1970-01-01 00:00:00.0
22:00:00 00:00:00
retrieved row (String):
- 1969-12-31 16:00:00.000000 1970-01-01 02:00:00.000000+02:00
16:00:00 02:00:00+02:00
-default (Africa/Windhoek):
- 1969-12-31 16:00:00.000+0200 1970-01-01 02:00:00.000+0200
16:00:00.000+0200 02:00:00.000+0200
+ 1969-12-31 16:00:00.000000 1970-01-01 01:00:00.000000+01:00
16:00:00 01:00:00+01:00
+default (UTC):
+ 1969-12-31 16:00:00.000+0000 1970-01-01 00:00:00.000+0000
16:00:00.000+0000 00:00:00.000+0000
America/Los_Angeles:
- 1970-01-01 02:00:00.0 1970-01-01 02:00:00.0
02:00:00 02:00:00
-UTC:
- 1969-12-31 18:00:00.0 1970-01-01 02:00:00.0
18:00:00 02:00:00
+ 1970-01-01 00:00:00.0 1970-01-01 00:00:00.0
00:00:00 00:00:00
+Africa/Windhoek:
+ 1969-12-31 14:00:00.0 1970-01-01 00:00:00.0
14:00:00 00:00:00
retrieved row (String):
- 1970-01-01 02:00:00.000000 1970-01-01 02:00:00.000000+02:00
02:00:00 02:00:00+02:00
-default (Africa/Windhoek):
- 1970-01-01 02:00:00.000+0200 1970-01-01 02:00:00.000+0200
02:00:00.000+0200 02:00:00.000+0200
+ 1970-01-01 00:00:00.000000 1970-01-01 01:00:00.000000+01:00
00:00:00 01:00:00+01:00
+default (UTC):
+ 1970-01-01 00:00:00.000+0000 1970-01-01 00:00:00.000+0000
00:00:00.000+0000 00:00:00.000+0000
America/Los_Angeles:
- 1970-01-01 12:00:00.0 1970-01-01 02:00:00.0
12:00:00 02:00:00
-UTC:
- 1970-01-01 04:00:00.0 1970-01-01 02:00:00.0
04:00:00 02:00:00
+ 1970-01-01 08:00:00.0 1970-01-01 00:00:00.0
08:00:00 00:00:00
+Africa/Windhoek:
+ 1969-12-31 22:00:00.0 1970-01-01 00:00:00.0
22:00:00 00:00:00
+
# 15:09:12 >
diff --git a/sql/server/rel_optimizer.c b/sql/server/rel_optimizer.c
--- a/sql/server/rel_optimizer.c
+++ b/sql/server/rel_optimizer.c
@@ -2270,7 +2270,7 @@ exps_merge_rse( mvc *sql, list *l, list
list_merge(exps, le->r, NULL);
list_merge(exps, re->r, NULL);
fnd = exp_in(sql->sa, le->l, exps, cmp_in);
- } else if (le->f && re->f &&
+ } else if (le->f && re->f && /* merge ranges */
le->flag == re->flag) {
sql_subfunc *min = sql_bind_func(sql->sa,
sql->session->schema, "sql_min", exp_subtype(le->r), exp_subtype(re->r),
F_FUNC);
sql_subfunc *max = sql_bind_func(sql->sa,
sql->session->schema, "sql_max", exp_subtype(le->f), exp_subtype(re->f),
F_FUNC);
diff --git a/sql/test/BugTracker-2011/Tests/All
b/sql/test/BugTracker-2011/Tests/All
--- a/sql/test/BugTracker-2011/Tests/All
+++ b/sql/test/BugTracker-2011/Tests/All
@@ -57,4 +57,5 @@ interrupted-initialization.Bug-2875
case-overflow.Bug-2239
sqltables.Bug-2921
Multiplication_and_cast.Bug-2923
+like_or.Bug-2924
alter_table_add_column.Bug-2919
diff --git a/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.sql
b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.sql
@@ -0,0 +1,2 @@
+select * from schemas where name like '%ys' escape '=' or name like '%y' escape
+'=';
diff --git a/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.err
b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'like_or.Bug-2924` in directory 'test/BugTracker-2011` itself:
+
+
+# 08:16:49 >
+# 08:16:49 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"gdk_dbfarm=/home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB" "--set"
"mapi_open=true" "--set" "mapi_port=37572" "--set" "monet_prompt=" "--trace"
"--forcemito" "--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2011"
"--set" "mal_listing=0"
+# 08:16:49 >
+
+# builtin opt gdk_dbname = demo
+# builtin opt gdk_dbfarm =
/home/niels/scratch/rc-clean/Linux-x86_64/var/monetdb5/dbfarm
+# builtin opt gdk_debug = 0
+# builtin opt gdk_alloc_map = no
+# builtin opt gdk_vmtrim = yes
+# builtin opt monet_prompt = >
+# builtin opt monet_daemon = no
+# builtin opt mapi_port = 50000
+# builtin opt mapi_open = false
+# builtin opt mapi_autosense = false
+# builtin opt sql_optimizer = default_pipe
+# builtin opt sql_debug = 0
+# cmdline opt gdk_nr_threads = 0
+# cmdline opt gdk_dbfarm =
/home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB
+# cmdline opt mapi_open = true
+# cmdline opt mapi_port = 37572
+# cmdline opt monet_prompt =
+# cmdline opt mal_listing = 2
+# cmdline opt gdk_dbname = mTests_test_BugTracker-2011
+# cmdline opt mal_listing = 0
+
+# 08:16:49 >
+# 08:16:49 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=niels"
"--port=37572"
+# 08:16:49 >
+
+
+# 08:16:49 >
+# 08:16:49 > "Done."
+# 08:16:49 >
+
diff --git a/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.out
b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2011/Tests/like_or.Bug-2924.stable.out
@@ -0,0 +1,37 @@
+stdout of test 'like_or.Bug-2924` in directory 'test/BugTracker-2011` itself:
+
+
+# 08:16:49 >
+# 08:16:49 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"gdk_dbfarm=/home/niels/scratch/rc-clean/Linux-x86_64/var/MonetDB" "--set"
"mapi_open=true" "--set" "mapi_port=37572" "--set" "monet_prompt=" "--trace"
"--forcemito" "--set" "mal_listing=2" "--dbname=mTests_test_BugTracker-2011"
"--set" "mal_listing=0"
+# 08:16:49 >
+
+# MonetDB 5 server v11.5.4
+# This is an unreleased version
+# Serving database 'mTests_test_BugTracker-2011', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs dynamically
linked
+# Found 3.788 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2011 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on
mapi:monetdb://niels.nesco.mine.nu:37572/
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+
+Ready.
+
+# 08:16:49 >
+# 08:16:49 > "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" "--host=niels"
"--port=37572"
+# 08:16:49 >
+
+#select * from schemas where name like '%ys' escape '=' or name like '%y'
escape
+#'=';
+% sys.schemas, sys.schemas, sys.schemas, sys.schemas # table_name
+% id, name, authorization, owner # name
+% int, varchar, int, int # type
+% 4, 3, 1, 1 # length
+[ 2000, "sys", 2, 3 ]
+
+# 08:16:49 >
+# 08:16:49 > "Done."
+# 08:16:49 >
+
diff --git a/sql/test/snodgrass/cast_select.sql
b/sql/test/snodgrass/cast_select.sql
--- a/sql/test/snodgrass/cast_select.sql
+++ b/sql/test/snodgrass/cast_select.sql
@@ -22,6 +22,6 @@ SELECT CAST('12:34' AS INTERVAL DAY TO M
SELECT CAST( INTERVAL'86 00:00:00' DAY TO SECOND AS INTERVAL HOUR TO SECOND )
= INTERVAL '2064:00:00' HOUR TO SECOND;
SELECT CAST('86 00:00:00' AS INTERVAL HOUR(3) TO SECOND ); -- err: overflow
exception
SELECT CAST( CAST( 7430400 AS INTERVAL SECOND ) AS INTERVAL DAY TO SECOND ) =
INTERVAL '86 00:00:00' DAY TO SECOND;
-SELECT CAST(DATE '1997-01-01' AS CHARACTER(10)) = '1997-01-01';
-SELECT CAST(INTERVAL '7430400' SECOND AS BIGINT) = 7430400000;
-SELECT CAST(CAST(INTERVAL '2064:00:00' HOUR TO SECOND AS INTERVAL SECOND) AS
BIGINT) = 7430400000;
+SELECT CAST(DATE '1997-01-01' AS CHARACTER) = '1997-01-01';
+SELECT CAST(INTERVAL '7430400' SECOND AS INTEGER) = 7430400;
+SELECT CAST(CAST(INTERVAL '2064:00:00' HOUR TO SECOND AS INTERVAL SECOND) AS
INTEGER) = 7430400;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list