SHOW PROCESSLIST is deprecated?

It says here that “SHOW PROCESSLIST” is deprecated:

Deprecations
The following items are deprecated in this release and using any of these items may cause a warning:

  • INFORMATION_SCHEMA.PROCESSLIST and the SHOW PROCESSLIST command

However, it doesn’t seem to be the case here:
https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-35.html

INFORMATION_SCHEMA.PROCESSLIST is deprecated and subject to removal in a future MySQL release. As such, the implementation of SHOW PROCESSLIST which uses that table is also deprecated.

They just say that the implementation of SHOW PROCESSLIST using information_schema is deprecated, but not the implementation using performance_schema.

See also top description at: https://dev.mysql.com/doc/refman/8.0/en/show-processlist.html

Can you please clarify?

Hello @nunop,

Please refer to the documentation for the command where it mentions the depreciation warning: https://dev.mysql.com/doc/refman/8.0/en/show-processlist.html

As of MySQL 8.0.22, an alternative implementation for SHOW PROCESSLIST is available based on the Performance Schema processlist table, which, unlike the default SHOW PROCESSLIST implementation, does not require a mutex and has better performance characteristics.

You might find that note in 8022 release note.

Thanks,
K

Thanks.

I read that before, and I referred to that description in my first post above.

That message is saying that the default implementation is deprecated, and that a new implementation is available to use.

As of MySQL 8.0.22, an alternative implementation for SHOW PROCESSLIST is available based on the Performance Schema processlist table, which, unlike the default SHOW PROCESSLIST implementation, does not require a mutex and has better performance characteristics.

Not the whole SHOW PROCESSLIST being deprecated, as the Percona change log at Percona Server for MySQL 8.0.35-27 (2023-12-27) - Percona Server for MySQL makes it seem.

Hi @nunop,

I understand that that text from both the documentation as they’re are saying the same thing. MySQL doc is descriptive while the Percona doc is making 2 bulletpoints.

Are you trying to highlight that there is no explicit mention of “SHOW PROCESSLIST” is re-implemented using performance_schema?

aaha… I was typing above text and realized what you mean

“SHOW PROCESSLIST - is not deprecated, just the implementation has changed to use performance_schema.” and documentation is sort of misleading there.

Thanks,
K

When I read Percona’s change log:

Deprecations
The following items are deprecated in this release and using any of these items may cause a warning:

  • INFORMATION_SCHEMA.PROCESSLIST and the SHOW PROCESSLIST command

I understand this as SHOW PROCESSLIST being deprecated, and that I should stop using it, as using “any of these items may cause a warning”.

I’m simply saying that it may need more clarification to say that SHOW PROCESSLIST will continue to work, as that’s what MySQL’s change log and documentation says.

correct, that’s what I understood. This could be a documentation bug, though I couldn’t raise the bug report yet.

@nunop Thank you for bringing this to our attention. I’ve opened a bug with our documentation team.
https://perconadev.atlassian.net/browse/DOCS-101

1 Like

results are different from both schema, in performance shchema some strange hanging process with “DELETE FROM mysql.wsrep_cluster_members”

SQL > select * from information_schema.processlist order by id asc;
±—±----------------±-------------------±-------------------±--------±-----±-------------------------±-------------------------------------------------------------±--------±----------±--------------+
| ID | USER | HOST | DB | COMMAND | TIME | STATE | INFO | TIME_MS | ROWS_SENT | ROWS_EXAMINED |
±—±----------------±-------------------±-------------------±--------±-----±-------------------------±-------------------------------------------------------------±--------±----------±--------------+
| 1 | system user | | NULL | Sleep | 957 | wsrep: aborter idle | NULL | 956903 | 0 | 0 |
| 2 | system user | | NULL | Sleep | 957 | innobase_commit_low (-1) | NULL | 956903 | 0 | 0 |
| 8 | event_scheduler | localhost | NULL | Daemon | 953 | Waiting on empty queue | NULL | 952795 | 0 | 0 |
| 10 | system user | | NULL | Sleep | 953 | innobase_commit_low (-1) | NULL | 952794 | 0 | 0 |
| 11 | system user | | NULL | Sleep | 953 | innobase_commit_low (-1) | NULL | 952793 | 0 | 0 |
| 12 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952793 | 0 | 0 |
| 13 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952792 | 0 | 0 |
| 14 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952792 | 0 | 0 |
| 15 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952792 | 0 | 0 |
| 17 | system user | | NULL | Sleep | 953 | innobase_commit_low (-1) | NULL | 952792 | 0 | 0 |
| 18 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952791 | 0 | 0 |
| 19 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952791 | 0 | 0 |
| 20 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952790 | 0 | 0 |
| 21 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952790 | 0 | 0 |
| 22 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952790 | 0 | 0 |
| 23 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952790 | 0 | 0 |
| 24 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952789 | 0 | 0 |
| 25 | system user | | NULL | Sleep | 953 | wsrep: applier idle | NULL | 952789 | 0 | 0 |
| 96 | dev-mm | 10.10.121.10:40590 | performance_schema | Query | 0 | executing | select * from information_schema.processlist order by id asc | 0 | 0 | 0 |
±—±----------------±-------------------±-------------------±--------±-----±-------------------------±-------------------------------------------------------------±--------±----------±--------------+
19 rows in set, 1 warning (0.0041 sec)
Warning (code 1287): ‘INFORMATION_SCHEMA.PROCESSLIST’ is deprecated and will be removed in a future release. Please use performance_schema.processlist instead

SQL > select * from performance_schema.processlist;
±—±----------------±-------------------±-------------------±--------±-----±-----------------------±---------------------------------------------±--------±----------±--------------±-----------------+
| ID | USER | HOST | DB | COMMAND | TIME | STATE | INFO | TIME_MS | ROWS_SENT | ROWS_EXAMINED | EXECUTION_ENGINE |
±—±----------------±-------------------±-------------------±--------±-----±-----------------------±---------------------------------------------±--------±----------±--------------±-----------------+
| 1 | system user | NULL | NULL | Sleep | 972 | wsrep: aborter idle | NULL | 971355 | 0 | 0 | PRIMARY |
| 2 | system user | NULL | NULL | Sleep | 972 | | DELETE FROM mysql.wsrep_cluster_members | 971355 | 0 | 2 | PRIMARY |
| 8 | event_scheduler | localhost | NULL | Daemon | 968 | Waiting on empty queue | NULL | 967248 | 0 | 0 | PRIMARY |
| 10 | system user | NULL | NULL | Sleep | 968 | | DELETE FROM mysql.wsrep_cluster_members | 967246 | 0 | 3 | PRIMARY |
| 11 | system user | NULL | NULL | Sleep | 968 | | DELETE FROM mysql.wsrep_cluster_members | 967246 | 0 | 2 | PRIMARY |
| 19 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967244 | 0 | 0 | PRIMARY |
| 12 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967246 | 0 | 0 | PRIMARY |
| 24 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967242 | 0 | 0 | PRIMARY |
| 14 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967245 | 0 | 0 | PRIMARY |
| 15 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967245 | 0 | 0 | PRIMARY |
| 17 | system user | NULL | NULL | Sleep | 968 | | DELETE FROM mysql.wsrep_cluster_members | 967244 | 0 | 2 | PRIMARY |
| 18 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967244 | 0 | 0 | PRIMARY |
| 20 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967243 | 0 | 0 | PRIMARY |
| 21 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967243 | 0 | 0 | PRIMARY |
| 22 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967242 | 0 | 0 | PRIMARY |
| 23 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967242 | 0 | 0 | PRIMARY |
| 13 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967245 | 0 | 0 | PRIMARY |
| 25 | system user | NULL | NULL | Sleep | 968 | wsrep: applier idle | NULL | 967242 | 0 | 0 | PRIMARY |
| 96 | dev-mm | 10.10.121.10:40590 | performance_schema | Query | 0 | executing | select * from performance_schema.processlist | 0 | 18 | 38 | PRIMARY |
±—±----------------±-------------------±-------------------±--------±-----±-----------------------±---------------------------------------------±--------±----------±--------------±-----------------+
19 rows in set (0.0033 sec)