Changeset: 3d3a3776b749 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3d3a3776b749
Added Files:
        sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.sql
        
sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.err
        
sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.out
Modified Files:
        sql/test/BugTracker-2016/Tests/All
Branch: default
Log Message:

Adding missing test script for old bug 3832.
It would be nice if support for groupby_on_column_expressions could be 
implemented.


diffs (268 lines):

diff --git a/sql/test/BugTracker-2016/Tests/All 
b/sql/test/BugTracker-2016/Tests/All
--- a/sql/test/BugTracker-2016/Tests/All
+++ b/sql/test/BugTracker-2016/Tests/All
@@ -1,6 +1,7 @@
 HAVE_GEOM?storagemodel
 convert-function-test.Bug-3460
 HAVE_HGE?convert-function-test-hge.Bug-3460
+groupby_on_column_expression.Bug-3832
 LEFT-JOIN_with_OR_conditions_triggers_assertion.Bug-3908
 incorrect_column_name_in_OR_condition_of_LEFT-JOIN_crashes_mserver.Bug-3909
 copy_into_with_header.Bug-3910
diff --git 
a/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.sql 
b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.sql
@@ -0,0 +1,28 @@
+CREATE TABLE test3832("State" string, "Sales" double);
+INSERT INTO test3832 VALUES('Texus', 200);
+INSERT INTO test3832 VALUES('Texas', 250);
+
+SELECT LEFT("State", 3) AS "State",  SUM("Sales") AS "Sales" FROM test3832 
GROUP BY "State";
+-- 2 rows
+SELECT LEFT("State", 3) AS "State",  SUM("Sales") AS "Sales" FROM test3832 
GROUP BY LEFT("State", 3);
+-- syntax error, unexpected LEFT in: "select left("State", 3) as "State",  
sum("Sales") as "Sales" from test3832 group"
+SELECT LEFT("State", 3) AS "State3", SUM("Sales") AS "Sales" FROM test3832 
GROUP BY "State3";
+-- 1 row
+
+DROP TABLE test3832;
+
+
+CREATE TABLE fields (name varchar(30) NOT NULL, tablenm varchar(30) NOT NULL, 
pos int NOT NULL);
+INSERT into fields VALUES ('c1 ', 't1 ', 1), ('c2 ', 't1 ', 2), ('c4 ', 't1 ', 
4), ('c3 ', 't1 ', 3), ('c2 ', 't2', 2), ('c4 ', 't2', 4), ('c1 ', 't2', 1), 
('c3 ', 't3', 3);
+INSERT into fields SELECT RTRIM(name) AS name, RTRIM(tablenm) AS tablenm, pos 
FROM fields;
+SELECT * FROM fields ORDER BY tablenm, pos, name;
+
+SELECT name, COUNT(*) as count, MAX(pos) as max_pos, MIN(pos) as min_pos FROM 
fields GROUP BY name ORDER BY name;
+SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY name ORDER BY RTRIM(name);
+SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY RTRIM(name) ORDER BY RTRIM(name);
+-- syntax error, unexpected '(', expecting SCOLON in: "select rtrim(name), 
count(*) as count, max(pos) as max_pos, min(pos) as min_pos "
+SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY nametrimmed ORDER BY nametrimmed;
+SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM (SELECT RTRIM(name) AS name, pos FROM fields) AS 
fromquery GROUP BY name ORDER BY RTRIM(name);
+
+DROP TABLE fields;
+
diff --git 
a/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.err
 
b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.err
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.err
@@ -0,0 +1,37 @@
+stderr of test 'groupby_on_column_expression.Bug-3832` in directory 
'sql/test/BugTracker-2016` itself:
+
+
+# 15:59:51 >  
+# 15:59:51 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36841" "--set" 
"mapi_usock=/var/tmp/mtest-2690/.s.monetdb.36841" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch2/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2016"
 "--set" "embedded_r=yes" "--set" "embedded_py=true"
+# 15:59:51 >  
+
+# builtin opt  gdk_dbpath = 
/export/scratch2/dinther/INSTALL/var/monetdb5/dbfarm/demo
+# builtin opt  gdk_debug = 0
+# builtin opt  gdk_vmtrim = no
+# 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  mapi_open = true
+# cmdline opt  mapi_port = 36841
+# cmdline opt  mapi_usock = /var/tmp/mtest-2690/.s.monetdb.36841
+# cmdline opt  monet_prompt = 
+# cmdline opt  gdk_dbpath = 
/export/scratch2/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2016
+# cmdline opt  embedded_r = yes
+# cmdline opt  embedded_py = true
+# cmdline opt  gdk_debug = 536870922
+
+# 15:59:52 >  
+# 15:59:52 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-2690" "--port=36841"
+# 15:59:52 >  
+
+
+
+# 15:59:52 >  
+# 15:59:52 >  "Done."
+# 15:59:52 >  
+
diff --git 
a/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.out
 
b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.out
new file mode 100644
--- /dev/null
+++ 
b/sql/test/BugTracker-2016/Tests/groupby_on_column_expression.Bug-3832.stable.out
@@ -0,0 +1,177 @@
+stdout of test 'groupby_on_column_expression.Bug-3832` in directory 
'sql/test/BugTracker-2016` itself:
+
+
+# 15:59:51 >  
+# 15:59:51 >  "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set" 
"mapi_open=true" "--set" "mapi_port=36841" "--set" 
"mapi_usock=/var/tmp/mtest-2690/.s.monetdb.36841" "--set" "monet_prompt=" 
"--forcemito" 
"--dbpath=/export/scratch2/dinther/INSTALL/var/MonetDB/mTests_sql_test_BugTracker-2016"
 "--set" "embedded_r=yes" "--set" "embedded_py=true"
+# 15:59:51 >  
+
+# MonetDB 5 server v11.26.0
+# This is an unreleased version
+# Serving database 'mTests_sql_test_BugTracker-2016', using 8 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 128bit integers
+# Found 15.589 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2017 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://toulouse.da.cwi.nl:36841/
+# Listening for UNIX domain connection requests on 
mapi:monetdb:///var/tmp/mtest-2690/.s.monetdb.36841
+# MonetDB/GIS module loaded
+# MonetDB/SQL module loaded
+# MonetDB/Python module loaded
+# MonetDB/R   module loaded
+
+Ready.
+# SQL catalog created, loading sql scripts once
+# loading sql script: 09_like.sql
+# loading sql script: 10_math.sql
+# loading sql script: 11_times.sql
+# loading sql script: 12_url.sql
+# loading sql script: 13_date.sql
+# loading sql script: 14_inet.sql
+# loading sql script: 15_querylog.sql
+# loading sql script: 16_tracelog.sql
+# loading sql script: 17_temporal.sql
+# loading sql script: 18_index.sql
+# loading sql script: 20_vacuum.sql
+# loading sql script: 21_dependency_functions.sql
+# loading sql script: 22_clients.sql
+# loading sql script: 23_skyserver.sql
+# loading sql script: 25_debug.sql
+# loading sql script: 26_sysmon.sql
+# loading sql script: 27_rejects.sql
+# loading sql script: 39_analytics.sql
+# loading sql script: 39_analytics_hge.sql
+# loading sql script: 40_geom.sql
+# loading sql script: 40_json.sql
+# loading sql script: 40_json_hge.sql
+# loading sql script: 41_md5sum.sql
+# loading sql script: 45_uuid.sql
+# loading sql script: 46_profiler.sql
+# loading sql script: 51_sys_schema_extension.sql
+# loading sql script: 72_fits.sql
+# loading sql script: 74_netcdf.sql
+# loading sql script: 75_lidar.sql
+# loading sql script: 75_shp.sql
+# loading sql script: 75_storagemodel.sql
+# loading sql script: 80_statistics.sql
+# loading sql script: 80_udf.sql
+# loading sql script: 80_udf_hge.sql
+# loading sql script: 85_bam.sql
+# loading sql script: 90_generator.sql
+# loading sql script: 90_generator_hge.sql
+# loading sql script: 99_system.sql
+
+# 15:59:52 >  
+# 15:59:52 >  "mclient" "-lsql" "-ftest" "-Eutf-8" "-i" "-e" 
"--host=/var/tmp/mtest-2690" "--port=36841"
+# 15:59:52 >  
+
+#CREATE TABLE test3832("State" string, "Sales" double);
+#INSERT INTO test3832 VALUES('Texus', 200);
+[ 1    ]
+#INSERT INTO test3832 VALUES('Texas', 250);
+[ 1    ]
+#SELECT LEFT("State", 3) AS "State",  SUM("Sales") AS "Sales" FROM test3832 
GROUP BY "State";
+% sys.L2,      sys.L5 # table_name
+% State,       Sales # name
+% varchar,     double # type
+% 3,   24 # length
+[ "Tex",       200     ]
+[ "Tex",       250     ]
+#SELECT LEFT("State", 3) AS "State",  SUM("Sales") AS "Sales" FROM test3832 
GROUP BY LEFT("State", 3);
+% sys.L2,      sys.L5 # table_name
+% State,       Sales # name
+% varchar,     double # type
+% 3,   24 # length
+[ "Tex",       450     ]
+#SELECT LEFT("State", 3) AS "State3", SUM("Sales") AS "Sales" FROM test3832 
GROUP BY "State3";
+% sys.L2,      sys.L5 # table_name
+% State3,      Sales # name
+% varchar,     double # type
+% 3,   24 # length
+[ "Tex",       450     ]
+#DROP TABLE test3832;
+#CREATE TABLE fields (name varchar(30) NOT NULL, tablenm varchar(30) NOT NULL, 
pos int NOT NULL);
+#INSERT into fields VALUES ('c1 ', 't1 ', 1), ('c2 ', 't1 ', 2), ('c4 ', 't1 
', 4), ('c3 ', 't1 ', 3), ('c2 ', 't2', 2), ('c4 ', 't2', 4), ('c1 ', 't2', 1), 
('c3 ', 't3', 3);
+[ 8    ]
+#INSERT into fields SELECT RTRIM(name) AS name, RTRIM(tablenm) AS tablenm, pos 
FROM fields;
+[ 8    ]
+#SELECT * FROM fields ORDER BY tablenm, pos, name;
+% sys.fields,  sys.fields,     sys.fields # table_name
+% name,        tablenm,        pos # name
+% varchar,     varchar,        int # type
+% 3,   3,      1 # length
+[ "c1",        "t1",   1       ]
+[ "c2",        "t1",   2       ]
+[ "c3",        "t1",   3       ]
+[ "c4",        "t1",   4       ]
+[ "c1 ",       "t1 ",  1       ]
+[ "c2 ",       "t1 ",  2       ]
+[ "c3 ",       "t1 ",  3       ]
+[ "c4 ",       "t1 ",  4       ]
+[ "c1",        "t2",   1       ]
+[ "c1 ",       "t2",   1       ]
+[ "c2",        "t2",   2       ]
+[ "c2 ",       "t2",   2       ]
+[ "c4",        "t2",   4       ]
+[ "c4 ",       "t2",   4       ]
+[ "c3",        "t3",   3       ]
+[ "c3 ",       "t3",   3       ]
+#SELECT name, COUNT(*) as count, MAX(pos) as max_pos, MIN(pos) as min_pos FROM 
fields GROUP BY name ORDER BY name;
+% sys.fields,  sys.L4, sys.L7, sys.L12 # table_name
+% name,        count,  max_pos,        min_pos # name
+% varchar,     bigint, int,    int # type
+% 3,   1,      1,      1 # length
+[ "c1",        2,      1,      1       ]
+[ "c1 ",       2,      1,      1       ]
+[ "c2",        2,      2,      2       ]
+[ "c2 ",       2,      2,      2       ]
+[ "c3",        2,      3,      3       ]
+[ "c3 ",       2,      3,      3       ]
+[ "c4",        2,      4,      4       ]
+[ "c4 ",       2,      4,      4       ]
+#SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY name ORDER BY RTRIM(name);
+% sys.L2,      sys.L5, sys.L10,        sys.L13 # table_name
+% nametrimmed, count,  max_pos,        min_pos # name
+% varchar,     bigint, int,    int # type
+% 2,   1,      1,      1 # length
+[ "c1",        2,      1,      1       ]
+[ "c1",        2,      1,      1       ]
+[ "c2",        2,      2,      2       ]
+[ "c2",        2,      2,      2       ]
+[ "c3",        2,      3,      3       ]
+[ "c3",        2,      3,      3       ]
+[ "c4",        2,      4,      4       ]
+[ "c4",        2,      4,      4       ]
+#SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY RTRIM(name) ORDER BY RTRIM(name);
+% sys.L2,      sys.L5, sys.L10,        sys.L13 # table_name
+% nametrimmed, count,  max_pos,        min_pos # name
+% varchar,     bigint, int,    int # type
+% 2,   1,      1,      1 # length
+[ "c1",        4,      1,      1       ]
+[ "c2",        4,      2,      2       ]
+[ "c3",        4,      3,      3       ]
+[ "c4",        4,      4,      4       ]
+#SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM fields GROUP BY nametrimmed ORDER BY nametrimmed;
+% sys.L2,      sys.L5, sys.L10,        sys.L13 # table_name
+% nametrimmed, count,  max_pos,        min_pos # name
+% varchar,     bigint, int,    int # type
+% 2,   1,      1,      1 # length
+[ "c1",        4,      1,      1       ]
+[ "c2",        4,      2,      2       ]
+[ "c3",        4,      3,      3       ]
+[ "c4",        4,      4,      4       ]
+#SELECT RTRIM(name) as nametrimmed, COUNT(*) as count, MAX(pos) as max_pos, 
MIN(pos) as min_pos FROM (SELECT RTRIM(name) AS name, pos FROM fields) AS 
fromquery GROUP BY name ORDER BY RTRIM(name);
+% sys.L5,      sys.L10,        sys.L13,        sys.L16 # table_name
+% nametrimmed, count,  max_pos,        min_pos # name
+% varchar,     bigint, int,    int # type
+% 2,   1,      1,      1 # length
+[ "c1",        4,      1,      1       ]
+[ "c2",        4,      2,      2       ]
+[ "c3",        4,      3,      3       ]
+[ "c4",        4,      4,      4       ]
+#DROP TABLE fields;
+
+# 15:59:52 >  
+# 15:59:52 >  "Done."
+# 15:59:52 >  
+
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to