I’ve just started to have a peek at TokuDB for MySQL today. I’m running a few statements to turn some existing MyISAM tables over to the TokuDB storage engine. Here’s what you see with a SHOW PROCESSLIST command.

Id: 6
   User: root
   Host: localhost:42944
     db: test_db
Command: Query
   Time: 658
  State: Loading of data about 14.2% done
   Info: ALTER TABLE table_name ENGINE = TokuDB

Live query progress reports! Much more informative than “executing” I hope there’s more nice surprises to come!

Here’s a few more examples…

OPTIMIZE TABLE index level information…

Id: 9
   User: root
   Host: localhost:42956
     db: test_db
Command: Query
   Time: 272
  State: Optimization of index 2 of 4 about 72% done
   Info: OPTIMIZE TABLE table_name

SELECT query progress…

Id: 11
   User: root
   Host: localhost:42958
     db: test_db
Command: Query
   Time: 98
  State: Queried about 136130000 rows
   Info: select count(*) from table_name

Detailed reporting on INSERT INTO table_name SELECT… queries…

Id: 10
   User: root
   Host: localhost:42957
     db: test_db
Command: Query
   Time: 815
  State: Queried about 100000000 rows, Inserted about 5354718 rows
   Info: insert into table_name (col1, col2, col3) SELECT col1, col2, col3 FROM table_name LIMIT 100000000

Rollback of killed transactions…

Id: 10
   User: root
   Host: localhost:42957
     db: qtest_db
Command: Killed
   Time: 1343
  State: processing abort of transaction, 5194752 out of 53792548
   Info: insert into table_name...