3159 Tatiana A. Nurnberg 2009-11-02 [merge]
auto-merge
added:
mysql-test/include/have_case_insensitive_fs.inc
mysql-test/r/case_insensitive_fs.require
mysql-test/r/grant_lowercase_fs.result
mysql-test/suite/binlog/r/binlog_stm_do_db.result
mysql-test/suite/binlog/t/binlog_stm_do_db-master.opt
mysql-test/suite/binlog/t/binlog_stm_do_db.test
mysql-test/suite/rpl/t/rpl_get_master_version_and_clock-slave.opt
mysql-test/t/grant_lowercase_fs.test
renamed:
mysql-test/r/bug40113.result => mysql-test/r/innodb_lock_wait_timeout_1.result
mysql-test/t/bug40113-master.opt => mysql-test/t/innodb_lock_wait_timeout_1-master.opt
mysql-test/t/bug40113.test => mysql-test/t/innodb_lock_wait_timeout_1.test
modified:
Makefile.am
client/mysqlbinlog.cc
client/mysqltest.cc
include/myisam.h
mysql-test/r/analyse.result
mysql-test/r/grant.result
mysql-test/r/join.result
mysql-test/r/lowercase_fs_off.result
mysql-test/r/myisam.result
mysql-test/r/olap.result
mysql-test/r/ps_grant.result
mysql-test/r/select.result
mysql-test/r/subselect.result
mysql-test/r/system_mysql_db.result
mysql-test/r/xa.result
mysql-test/suite/funcs_1/r/is_columns_mysql.result
mysql-test/suite/funcs_1/r/is_statistics.result
mysql-test/suite/rpl/r/rpl_get_master_version_and_clock.result
mysql-test/suite/rpl/t/rpl_get_master_version_and_clock.test
mysql-test/t/analyse.test
mysql-test/t/join.test
mysql-test/t/lowercase_fs_off.test
mysql-test/t/myisam.test
mysql-test/t/olap.test
mysql-test/t/select.test
mysql-test/t/subselect.test
mysql-test/t/xa.test
mysys/my_getopt.c
mysys/typelib.c
scripts/mysql_system_tables.sql
scripts/mysql_system_tables_fix.sql
sql/handler.cc
sql/sql_acl.cc
sql/sql_base.cc
sql/sql_class.cc
sql/sql_parse.cc
sql/sql_plugin.cc
sql/sql_select.cc
sql/sql_select.h
sql/sql_yacc.yy
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/ha_innodb.h
storage/innodb_plugin/handler/ha_innodb.cc
storage/innodb_plugin/handler/ha_innodb.h
storage/myisam/ha_myisam.cc
storage/myisam/mi_check.c
storage/myisam/sort.c
vio/viosslfactories.c
mysql-test/r/innodb_lock_wait_timeout_1.result
mysql-test/t/innodb_lock_wait_timeout_1.test
=== modified file 'mysql-test/r/explain.result'
--- a/mysql-test/r/explain.result 2009-09-04 07:39:56 +0000
+++ b/mysql-test/r/explain.result 2009-10-29 23:01:54 +0000
@@ -194,4 +194,20 @@ dt
2001-01-01 01:01:01
2001-01-01 01:01:01
drop tables t1, t2;
+#
+# Bug#48295:
+# explain extended crash with subquery and ONLY_FULL_GROUP_BY sql_mode
+#
+CREATE TABLE t1 (f1 INT);
+SELECT @@session.sql_mode INTO @old_sql_mode;
+SET SESSION sql_mode='ONLY_FULL_GROUP_BY';
+EXPLAIN EXTENDED SELECT 1 FROM t1
+WHERE f1 > ALL( SELECT t.f1 FROM t1,t1 AS t );
+ERROR 42000: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
+SHOW WARNINGS;
+Level Code Message
+Error 1140 Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
+Note 1003 select 1 AS `1` from `test`.`t1` where <not>(<exists>(...))
+SET SESSION sql_mode=@old_sql_mode;
+DROP TABLE t1;
End of 5.1 tests.
=== modified file 'mysql-test/t/explain.test'
--- a/mysql-test/t/explain.test 2009-09-04 07:39:56 +0000
+++ b/mysql-test/t/explain.test 2009-10-29 23:01:54 +0000
@@ -167,4 +167,24 @@ flush tables;
SELECT OUTR.dt FROM t1 AS OUTR WHERE OUTR.dt IN ( SELECT INNR.dt FROM t2 AS INNR WHERE OUTR.t < '2005-11-13 7:41:31' );
drop tables t1, t2;
+--echo #
+--echo # Bug#48295:
+--echo # explain extended crash with subquery and ONLY_FULL_GROUP_BY sql_mode
+--echo #
+
+CREATE TABLE t1 (f1 INT);
+
+SELECT @@session.sql_mode INTO @old_sql_mode;
+SET SESSION sql_mode='ONLY_FULL_GROUP_BY';
+
+# EXPLAIN EXTENDED (with subselect). used to crash. should give NOTICE.
+--error ER_MIX_OF_GROUP_FUNC_AND_FIELDS
+EXPLAIN EXTENDED SELECT 1 FROM t1
+ WHERE f1 > ALL( SELECT t.f1 FROM t1,t1 AS t );
+SHOW WARNINGS;
+
+SET SESSION sql_mode=@old_sql_mode;
+
+DROP TABLE t1;
+
--echo End of 5.1 tests.
=== modified file 'sql/item_subselect.cc'
--- a/sql/item_subselect.cc 2009-09-04 08:14:54 +0000
+++ b/sql/item_subselect.cc 2009-10-29 23:01:54 +0000
@@ -311,9 +311,14 @@ void Item_subselect::update_used_tables(
void Item_subselect::print(String *str, enum_query_type query_type)
{
- str->append('(');
- engine->print(str, query_type);
- str->append(')');
+ if (engine)
+ {
+ str->append('(');
+ engine->print(str, query_type);
+ str->append(')');
+ }
+ else
+ str->append("(...)");
}
Attachment: [text/bzr-bundle] bzr/azundris@mysql.com-20091102081313-8lw7ickxfzgkuq72.bundle
| Thread |
|---|
| • bzr push into mysql-5.1-bugteam branch (azundris:3159) | Tatiana A. Nurnberg | 2 Nov |