Bug #32233 NULL "state" field of SHOW PROCESSLIST makes tests fail
Submitted: 9 Nov 2007 13:50 Modified: 23 Nov 2007 18:19
Reporter: Joerg Bruehe Email Updates:
Status: Closed Impact on me:
None 
Category:Tests: Server Severity:S3 (Non-critical)
Version:6.0 OS:Linux (x86, gcc 3.3.5 (SuSE 9.3))
Assigned to: Matthias Leich CPU Architecture:Any

[9 Nov 2007 13:50] Joerg Bruehe
Description:
Found in a test on my local PC, using the current (2007-Nov-8) 6.0 tree:

--- /MySQL/M60/work-6.0/mysql-test/suite/funcs_1/r/b_processlist_priv_ps.result 2007-10-30 01:22:18.000000000 +0300
+++ /MySQL/M60/work-6.0/mysql-test/suite/funcs_1/r/b_processlist_priv_ps.reject 2007-11-09 09:00:03.000000000 +0300
@@ -36,15 +36,15 @@
 SHOW processlist;
 Id     User    Host    db      Command Time    State   Info
 3      root    localhost       information_schema      Query   TIME    NULL    SHOW processlist
-4      ddicttestuser1  localhost       information_schema      Sleep   TIME            NULL
+4      ddicttestuser1  localhost       information_schema      Sleep   TIME    NULL    NULL
 SELECT * FROM processlist  ORDER BY id;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
 3      root    localhost       information_schema      Execute TIME    preparing       SELECT * FROM processlist  ORDER BY
 id
-4      ddicttestuser1  localhost       information_schema      Sleep   TIME            NULL
+4      ddicttestuser1  localhost       information_schema      Sleep   TIME    NULL    NULL
 SELECT ID, USER, HOST, DB, COMMAND, TIME, STATE, INFO FROM processlist  ORDER BY id;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
 3      root    localhost       information_schema      Execute TIME    preparing       SELECT ID, USER, HOST, DB, COMMAND,
 TIME, STATE, INFO FROM processlist  ORDER BY id
-4      ddicttestuser1  localhost       information_schema      Sleep   TIME            NULL
+4      ddicttestuser1  localhost       information_schema      Sleep   TIME    NULL    NULL
 CREATE TEMPORARY TABLE test.t_processlist AS SELECT * FROM processlist;
 UPDATE test.t_processlist SET user='horst' WHERE id=1  ;
 INSERT INTO processlist SELECT * FROM test.t_processlist;
@@ -183,14 +183,14 @@
 GRANT PROCESS ON *.* TO 'ddicttestuser1'@'localhost' IDENTIFIED BY PASSWORD '*22DA61451703738F203CDB9DB041ACBA1F4760B1'
 SHOW processlist;
 Id     User    Host    db      Command Time    State   Info
-3      root    localhost       information_schema      Sleep   TIME            NULL
-4      ddicttestuser1  localhost       information_schema      Sleep   TIME            NULL
+3      root    localhost       information_schema      Sleep   TIME    NULL    NULL
+4      ddicttestuser1  localhost       information_schema      Sleep   TIME    NULL    NULL
 5      ddicttestuser1  localhost       information_schema      Query   TIME    NULL    SHOW processlist
 SELECT * FROM information_schema.processlist;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
 5      ddicttestuser1  localhost       information_schema      Execute TIME    preparing       SELECT * FROM information_s
chema.processlist
-4      ddicttestuser1  localhost       information_schema      Sleep   TIME            NULL
-3      root    localhost       information_schema      Sleep   TIME            NULL
+4      ddicttestuser1  localhost       information_schema      Sleep   TIME    NULL    NULL
+3      root    localhost       information_schema      Sleep   TIME    NULL    NULL
 ####################################################################################
 5 Grant PROCESS privilege to anonymous user.
 connection default (user=root)

This continues, I will just quote the line numbers of the "diff" output blocks:
@@ -206,16 +206,16 @@
@@ -231,14 +231,14 @@
@@ -255,7 +255,7 @@
@@ -270,16 +270,16 @@
@@ -295,18 +295,18 @@
@@ -343,30 +343,30 @@
@@ -381,12 +381,12 @@
@@ -404,24 +404,24 @@
@@ -439,26 +439,26 @@

Then, the next test begins:

--- /MySQL/M60/work-6.0/mysql-test/suite/funcs_1/r/b_processlist_val_ps.result  2007-08-15 22:46:41.000000000 +0300
+++ /MySQL/M60/work-6.0/mysql-test/suite/funcs_1/r/b_processlist_val_ps.reject  2007-11-09 09:00:13.000000000 +0300
@@ -45,21 +45,21 @@
 ----- switch to connection default (user = root) -----
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   0               NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   0       NULL    NULL
 <ID>   root    localhost       information_schema      Execute 0       preparing       SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 SHOW FULL PROCESSLIST;
 Id     User    Host    db      Command Time    State   Info
 <ID>   root    localhost       information_schema      Query   0       NULL    SHOW FULL PROCESSLIST
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   0               NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   0       NULL    NULL
 # Sleep some time
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   1               NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   1       NULL    NULL
 <ID>   root    localhost       information_schema      Execute 0       preparing       SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
 SHOW FULL PROCESSLIST;
 Id     User    Host    db      Command Time    State   Info
 <ID>   root    localhost       information_schema      Query   0       NULL    SHOW FULL PROCESSLIST
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   1               NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   1       NULL    NULL
 SELECT ID = @my_proclist_id + 1 FROM INFORMATION_SCHEMA.PROCESSLIST
 WHERE USER = 'ddicttestuser1';
 ID = @my_proclist_id + 1
@@ -77,10 +77,10 @@
 SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
 ID     USER    HOST    DB      COMMAND TIME    STATE   INFO
 <ID>   ddicttestuser1  localhost       information_schema      Execute <TIME>  preparing       SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   <TIME>          NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   <TIME>  NULL    NULL
 SHOW FULL PROCESSLIST;
 Id     User    Host    db      Command Time    State   Info
-<ID>   ddicttestuser1  localhost       information_schema      Sleep   <TIME>          NULL
+<ID>   ddicttestuser1  localhost       information_schema      Sleep   <TIME>  NULL    NULL
 <ID>   ddicttestuser1  localhost       information_schema      Query   <TIME>  NULL    SHOW FULL PROCESSLIST

 ----- switch to connection default (user = root) -----

How to repeat:
Run the *full* tests, including the "funcs_1" suite.
[9 Nov 2007 14:55] Matthias Leich
Stealing this Bug from Alexander.
Alik please excuse me, but I am just fixing
weaknesses within these tests in 5.1.
I would fix this bug during upmerge.
[9 Nov 2007 21:09] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/37487

ChangeSet@1.2659, 2007-11-09 22:09:25+01:00, mleich@five.local.lan +2 -0
  Post merge fix for
[9 Nov 2007 22:10] Matthias Leich
Bug fixed within the upmerge of the changeset for
Bug#32233 NULL "state" field of SHOW PROCESSLIST makes tests fail.

Push was to source tree mysql-6.0-build.

There is no documentation needed.
[21 Nov 2007 18:54] Bugs System
Pushed into 6.0.4-alpha
[21 Nov 2007 20:29] Paul Dubois
Test case changes. No changelog entry needed.
[22 Nov 2007 16:31] Matthias Leich
Sorry have to switch this bug back to in progress.
The first changeset (pushed to 6.0.4-alpha) did not
contain a fix for the *_processlist_priv_* tests.
[22 Nov 2007 16:34] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/38294

ChangeSet@1.2685, 2007-11-22 17:35:37+01:00, mleich@five.local.lan +2 -0
  Fix for
     Bug#32233 NULL "state" field of SHOW PROCESSLIST makes tests fail
[22 Nov 2007 16:57] Matthias Leich
pushed to
mysql-6.0-build
Problem within test, no documentation needed.
[22 Nov 2007 17:19] Bugs System
Pushed into 6.0.4-alpha
[23 Nov 2007 18:19] Paul Dubois
Test case changes. No changelog entry needed.
[3 Apr 2011 12:31] NerneNubFlege NerneNubFlege
hello world