Last spring, we added a feature that allows the user to see the progress of writes in a statement. Vadim liked it. In 2.2.0, in “show processlist”, we add progress information on reads.
Here is an example of what “show processlist” displays on an update:
|
1 |
<br>mysql> show processlist G<br>*************************** 1. row ***************************<br>Id: 1<br>User: root<br>Host: localhost<br>db: test<br>Command: Query<br>Time: 7<br>State: Queried about 1576008 rows, Updated about 197000 rows<br>Info: update foo set a=9 where a=8<br> |
Here is an example of what “show processlist” displays on an insert that requires a query:
|
1 |
<br>mysql> show processlist G<br>*************************** 1. row ***************************<br>Id: 1<br>User: root<br>Host: localhost<br>db: test<br>Command: Query<br>Time: 6<br>State: Queried about 1542001 rows, Inserted about 771000 rows<br>Info: insert into bar select* from foo where a < 5<br> |
And here is an example of what show processlist displays in a query:
|
1 |
<br>mysql> show processlist G<br>*************************** 1. row ***************************<br>Id: 1<br>User: root<br>Host: localhost<br>db: test<br>Command: Query<br>Time: 4<br>State: Queried about 2790000 rows<br>Info: select sum(a) from foo<br> |
As we see in the examples above, the work required to execute some statements are a combination of reads and writes. Having progress information on both helps provide the user with a better understanding of what is going on in the system.
Resources
RELATED POSTS