Description:
When querying performance_schema.processlist or information_schema.processlist, the INFO column, which is designed to store the full SQL text of currently running queries, is truncated even though the underlying schema defines it as longtext or varchar(65535) respectively.
mysql [localhost:8042] {msandbox} (test) > select * from performance_schema.processlist\G
ID: 13
USER: msandbox
HOST: localhost
DB: test
COMMAND: Query
TIME: 7
STATE: User sleep
INFO: SELECT * FROM SampleTable WHERE sleep(600) AND ID IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,27 [1024 char]
mysql [localhost:8042] {msandbox} (test) > select * from information_schema.processlist\G
*************************** 1. row ***************************
ID: 13
USER: msandbox
HOST: localhost
DB: test
COMMAND: Query
TIME: 800
STATE: User sleep
INFO: SELECT * FROM SampleTable WHERE sleep(600) AND ID IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,...,12764,127 [65536 char]
TIME_MS: 799914
ROWS_SENT: 0
ROWS_EXAMINED: 0
mysql [localhost:8042] {msandbox} (test) > show create table information_schema.processlist\G
*************************** 1. row ***************************
Table: PROCESSLIST
Create Table: CREATE TEMPORARY TABLE `PROCESSLIST` (
...
`INFO` longtext,
...
mysql [localhost:8042] {msandbox} (test) > show create table performance_schema.processlist\G
*************************** 1. row ***************************
Table: processlist
Create Table: CREATE TABLE `processlist` (
...
`INFO` longtext,
...
mysql [localhost:8042] {msandbox} (test) > desc information_schema.processlist\G
...
Field: INFO
Type: varchar(65535)
Null: YES
Key:
Default:
Extra:
mysql [localhost:8042] {msandbox} (test) > desc performance_schema.processlist\G
...
Field: INFO
Type: longtext
Null: YES
Key:
Default: NULL
Extra:
How to repeat:
Run long text query and select processlist from information_schema and performance_schema.
Suggested fix:
Should show all query without truncated.
DESC and SHOW CREATE TABLE output should match.
Description: When querying performance_schema.processlist or information_schema.processlist, the INFO column, which is designed to store the full SQL text of currently running queries, is truncated even though the underlying schema defines it as longtext or varchar(65535) respectively. mysql [localhost:8042] {msandbox} (test) > select * from performance_schema.processlist\G ID: 13 USER: msandbox HOST: localhost DB: test COMMAND: Query TIME: 7 STATE: User sleep INFO: SELECT * FROM SampleTable WHERE sleep(600) AND ID IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,27 [1024 char] mysql [localhost:8042] {msandbox} (test) > select * from information_schema.processlist\G *************************** 1. row *************************** ID: 13 USER: msandbox HOST: localhost DB: test COMMAND: Query TIME: 800 STATE: User sleep INFO: SELECT * FROM SampleTable WHERE sleep(600) AND ID IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,...,12764,127 [65536 char] TIME_MS: 799914 ROWS_SENT: 0 ROWS_EXAMINED: 0 mysql [localhost:8042] {msandbox} (test) > show create table information_schema.processlist\G *************************** 1. row *************************** Table: PROCESSLIST Create Table: CREATE TEMPORARY TABLE `PROCESSLIST` ( ... `INFO` longtext, ... mysql [localhost:8042] {msandbox} (test) > show create table performance_schema.processlist\G *************************** 1. row *************************** Table: processlist Create Table: CREATE TABLE `processlist` ( ... `INFO` longtext, ... mysql [localhost:8042] {msandbox} (test) > desc information_schema.processlist\G ... Field: INFO Type: varchar(65535) Null: YES Key: Default: Extra: mysql [localhost:8042] {msandbox} (test) > desc performance_schema.processlist\G ... Field: INFO Type: longtext Null: YES Key: Default: NULL Extra: How to repeat: Run long text query and select processlist from information_schema and performance_schema. Suggested fix: Should show all query without truncated. DESC and SHOW CREATE TABLE output should match.