Bug #22128 SHOW PROCESSLIST truncates last value of query
Submitted: 8 Sep 2006 20:35 Modified: 18 Oct 2006 13:09
Reporter: Shane Bester (Platinum Quality Contributor) Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:5.0.24a OS:Any (*)
Assigned to: CPU Architecture:Any
Tags: show processlist truncate

[8 Sep 2006 20:35] Shane Bester
Description:
When calling an SP that calls another SP, some output in SHOW PROCESSLIST appears to be truncated by one character.  See:

mysql> show full processlist\G
*************************** 1. row
     Id: 4
   User: root
   Host: localhost:1774
     db: test
Command: Query
   Time: 0
  State: NULL
   Info: call `eeeeeeeeee1`(
*************************** 2. row
     Id: 5
   User: root
   Host: localhost:1777
     db: test
Command: Query
   Time: 0
  State: NULL
   Info: show full processlist
2 rows in set (0.00 sec)

There is a missing parenthesis for the call `eeeeeeeeee1`()

How to repeat:
delimiter //
drop procedure if exists `eeeeeeeeee1` //
drop procedure if exists `e2` //
create procedure `eeeeeeeeee1`()
begin
select now() into @a;
end //
create procedure `e2`()
begin
declare aa int default 0;
repeat
call `eeeeeeeeee1`();
until aa end repeat;
end //
delimiter ;
call `e2`();

Now, open another connection to MySQL and type SHOW FULL PROCESSLIST a few times.  Notice the last bracket is left off.

Suggested fix:
..
[18 Oct 2006 13:09] Andrey Hristov
Cannot reproduce anymore, I suppose this report is duplicate of the problem that we had with the query log. Bug#19207 "Final parenthesis omitted for CREATE INDEX in Stored Procedure".