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.