Bug #92432 "1 warning" yet "Empty set" on SHOW WARNINGS
Submitted: 15 Sep 2018 6:08 Modified: 16 Sep 2018 20:20
Reporter: Roel Van de Paar Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Errors Severity:S2 (Serious)
Version:8.0.12 OS:Any
Assigned to: CPU Architecture:Any

[15 Sep 2018 6:08] Roel Van de Paar
Description:
8.0.12>SELECT COUNT(*)FROM INFORMATION_SCHEMA.TABLES;
+----------+
| COUNT(*) |
+----------+
|      299 |
+----------+
1 row in set, 1 warning (0.52 sec)

8.0.12>SHOW WARNINGS;
Empty set (0.00 sec)

How to repeat:
CREATE DATABASE test;
USE test;
create table t2(a date,key(a))ENGINE=InnoDB;
CREATE VIEW vmat2 AS SELECT * FROM t2;
SET @@session.max_error_count=0;
drop table if exists t1,t2,t3,v1,v2;
set session optimizer_switch=5;
SELECT COUNT(*)FROM INFORMATION_SCHEMA.TABLES;
SHOW WARNINGS;
[15 Sep 2018 6:14] Roel Van de Paar
Note that this testcase (except the last line) used to sig11 crash 8.0.4.rc

/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(my_print_stacktrace+0x55) [0x7fe4b69e5526]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(handle_fatal_signal+0x3f2) [0x7fe4b5b71041]
/lib64/libpthread.so.0(+0xf5e0) [0x7fe4b2d345e0]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(boost::fusion::vector_detail::store<0ul, char const (&) [9]>::get() const+0xc) [0x7fe4b56a81c0]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Sql_condition::message_text() const+0x1e) [0x7fe4b578cf42]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Item_func_internal_get_comment_or_error::val_str(String*)+0x4c1) [0x7fe4b5dee071]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Item::save_in_field_inner(Field*, bool)+0x532) [0x7fe4b5d2a620]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Item::save_in_field(Field*, bool)+0x62) [0x7fe4b5d2a06e]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(fill_record(THD*, TABLE*, Field**, List<Item>&, st_bitmap*, st_bitmap*)+0x1df) [0x7fe4b5757e8d]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Query_result_union::send_data(List<Item>&)+0x9e) [0x7fe4b58ca5ac]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x263099c) [0x7fe4b579599c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d8f1) [0x7fe4b57928f1]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x67f) [0x7fe4b57916bf]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d8f1) [0x7fe4b57928f1]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x67f) [0x7fe4b57916bf]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d8f1) [0x7fe4b57928f1]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x67f) [0x7fe4b57916bf]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x622) [0x7fe4b5791662]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x622) [0x7fe4b5791662]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262d31c) [0x7fe4b579231c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0x622) [0x7fe4b5791662]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262bb69) [0x7fe4b5790b69]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(JOIN::exec()+0x6dd) [0x7fe4b578dda9]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(TABLE_LIST::materialize_derived(THD*)+0x262) [0x7fe4b5f06810]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(join_materialize_derived(QEP_TAB*)+0x9f) [0x7fe4b579481c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(QEP_TAB::prepare_scan()+0x68) [0x7fe4b579179c]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(sub_select(JOIN*, QEP_TAB*, bool)+0xf5) [0x7fe4b5791135]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x262bb69) [0x7fe4b5790b69]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(JOIN::exec()+0x6dd) [0x7fe4b578dda9]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Sql_cmd_dml::execute_inner(THD*)+0x118) [0x7fe4b5844db4]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(Sql_cmd_dml::execute(THD*)+0x433) [0x7fe4b5844841]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(mysql_execute_command(THD*, bool)+0x5a1f) [0x7fe4b57ec927]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(mysql_parse(THD*, Parser_state*)+0x65e) [0x7fe4b57eef10]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(dispatch_command(THD*, COM_DATA const*, enum_server_command)+0x1292) [0x7fe4b57e48ee]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(do_command(THD*)+0x487) [0x7fe4b57e32b9]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x29fbc04) [0x7fe4b5b60c04]
/sda/MS270118-mysql-8.0.4-rc-linux-x86_64-debug/bin/mysqld(+0x3eb5644) [0x7fe4b701a644]
[15 Sep 2018 6:15] Roel Van de Paar
IOW, it may be worhwhile to find the previous relating bug and/or relevant code
[15 Sep 2018 9:15] MySQL Verification Team
You're telling server not to store any warnings.  What is the bug here?

https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_max_error_coun...
[15 Sep 2018 18:59] MySQL Verification Team
Please answer Shane's question. Thanks.
[16 Sep 2018 20:20] Roel Van de Paar
Aha. I had missed the fact that the variable includes warnings.

"The maximum number of error, warning, and information messages to be stored for display by the SHOW ERRORS and SHOW WARNINGS statements."