Bug #79684 "drop database if exists" says "1 warning", but "show warnings" returns nothing
Submitted: 17 Dec 2015 6:56 Modified: 17 Dec 2015 7:17
Reporter: Su Dylan Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: DDL Severity:S3 (Non-critical)
Version:5.7.8, 5.7.9, 5.7.10, 5.7.18, 5.7.20 OS:Any
Assigned to: CPU Architecture:Any
Tags: regression

[17 Dec 2015 6:56] Su Dylan
Description:
Output:
=======
mysql> drop database if exists abcd;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show warnings;
Empty set (0.00 sec)

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.8-rc  |
+-----------+
1 row in set (0.00 sec)

Problem:
========
"drop database if exists" says "1 warning", but "show warnings" returns empty set.

How to repeat:
drop database if exists abcd;
show warnings;

Suggested fix:
"drop database if exists" says "1 warning", and "show warnings" returns the warning message.
[17 Dec 2015 7:17] MySQL Verification Team
Hello Su Dylan,

Thank you for the report and test case.
Verified as described with 5.7.9/5.7.10 builds.

Thanks,
Umesh
[17 Dec 2015 7:28] MySQL Verification Team
// 5.7.9/5.7.10

[umshastr@hod03]/export/umesh/server/binaries/mysql-advanced-5.7.10: bin/mysql -uroot -S /tmp/mysql_ushastry.sock
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.10-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>  drop database if exists abcd;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show warnings;
Empty set (0.00 sec)
[17 Dec 2015 7:29] MySQL Verification Team
// 5.6.28 - warns, so this is regression

[umshastr@hod03]/export/umesh/server/binaries/mysql-advanced-5.6.28: bin/mysql -uroot -S /tmp/mysql_ushastry.sock
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.28-enterprise-commercial-advanced MySQL Enterprise Server - Advanced Edition (Commercial)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> drop database if exists abcd;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> show warnings;
+-------+------+----------------------------------------------------+
| Level | Code | Message                                            |
+-------+------+----------------------------------------------------+
| Note  | 1008 | Can't drop database 'abcd'; database doesn't exist |
+-------+------+----------------------------------------------------+
1 row in set (0.00 sec)

mysql>
[11 Jul 2017 7:11] MySQL Verification Team
Bug #86989 marked as duplicate of this one
[14 Mar 2018 10:14] MySQL Verification Team
Bug #90058 marked as duplicate of this one.