| Bug #94577 | Shell fails to output stored procedure results in loops | ||
|---|---|---|---|
| Submitted: | 6 Mar 2019 14:23 | Modified: | 3 Jun 2019 10:13 |
| Reporter: | Mario Beck | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | Shell General / Core Client | Severity: | S3 (Non-critical) |
| Version: | 8.0.15 | OS: | Oracle Linux |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | Output, stored procedure | ||
[6 Mar 2019 14:23]
Mario Beck
[7 Mar 2019 3:32]
MySQL Verification Team
Hi,
Verified as described. Thanks for your report
All best
Bogdan
MySQL localhost test JS > \sql
Switching to SQL mode... Commands end with ;
Fetching table and column names from `test` for auto-completion... Press ^C to stop.
MySQL localhost test SQL > select * from t1;
+---+
| i |
+---+
| 1 |
| 1 |
| 1 |
+---+
3 rows in set (0.0004 sec)
MySQL localhost test SQL > DELIMITER |
MySQL localhost test SQL > CREATE PROCEDURE shtest()
-> BEGIN
-> WHILE 1=1 DO
-> SELECT now();
-> SELECT sleep(2);
-> END WHILE;
-> END |
Query OK, 0 rows affected (0.0042 sec)
MySQL localhost test SQL > DELIMITER ;
MySQL localhost test SQL > ;
ERROR: 1065 (42000): Query was empty
MySQL localhost test SQL > CALL shtest();
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:12 |
+---------------------+
1 row in set (0.0005 sec)
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:12 |
+---------------------+
1 row in set (0.0005 sec)
MySQL localhost test SQL > \q
Bye!
[arhimed@localhost bin]$ cd ~/sandboxes/msb_8_0_15/
[arhimed@localhost msb_8_0_15]$ ./use test
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 17
Server version: 8.0.15 MySQL Community Server - GPL
Copyright (c) 2000, 2019, 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 [localhost:8015] {msandbox} (test) > CALL shtest();
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:38 |
+---------------------+
1 row in set (0.00 sec)
+----------+
| sleep(2) |
+----------+
| 0 |
+----------+
1 row in set (2.00 sec)
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:40 |
+---------------------+
1 row in set (2.00 sec)
+----------+
| sleep(2) |
+----------+
| 0 |
+----------+
1 row in set (4.00 sec)
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:42 |
+---------------------+
1 row in set (4.00 sec)
+----------+
| sleep(2) |
+----------+
| 0 |
+----------+
1 row in set (6.00 sec)
+---------------------+
| now() |
+---------------------+
| 2019-03-07 04:30:44 |
+---------------------+
1 row in set (6.00 sec)
[3 Jun 2019 10:13]
Margaret Fisher
Posted by developer: Changelog entry added for MySQL Shell 8.0.17: MySQL Shell would hang when attempting to handle output from a stored procedure that produced results repeatedly from a single statement. The issues have now been corrected.
