TokuDB Development Gone Quiet

Hiyas,

I’m concerned that very little news has been heard from the TokuDB development team. According to the tokudb-engine Github page, no commits have been made since the 1st of September 2015. Is it still being developed?

In MySQL 5.7, InnoDB has been enhanced to support very useful features including a JSON datatype, Spatial Indexing and Indexable Virtual Columns. However, InnoDB still does not support online addition/removal of columns - something that TokuDB handles brilliantly. This has greatly eased maintenance work in our production systems. InnoDB has also added support for page compression. Haven’t had a change to test it yet, but I doubt it would perform as well as TokuDB’s as InnoDB does not utilise TokuDB’s fractal tree indexes.

I am hoping to find out the TokuDB team’s plans for implementing the following features:

  1. JSON Datatype

  2. Indexable Virtual Columns

  3. Spatial Indexing

  4. Official Galera support

  5. Fulltext Indexes

TokuDB and fractal tree indexes are such great technology and add so much value to MySQL. It would really suck if they were not allowed to reach their full potential.

I am disappointed that nobody from Percona has stepped in to answer these questions. Nonetheless, I have managed to find answers to some of them myself:

Firstly, the current Github locations for PerconaFT (formerly Tokutek ft-index) and TokuDB development are now:

https://github.com/percona/PerconaFT

AND

https://github.com/percona/percona-server/tree/5.7/storage/tokudb

I see that there has been recent development activity in those locations.

Also, the TokuDB issue tracking page can be found here:

https://tokutek.atlassian.net/projects/DB

In regard to my other questions regarding TokuDB:

1. JSON Data Type

Looks like it’s supported. I successfully created JSON columns in a TokuDB table in Percona Server 5.7.10-1 RC1.

2. Generated Columns (Virtual Columns)

Not supported. Got the following error when I tried to alter a table to create a generated column: “ERROR 3106 (HY000): ‘Specified storage engine’ is not supported for generated columns.”

3. Spatial Indexing,
4. Official Galera support,
5. Fulltext Indexes

Have not tested but these do not appear to be supported.

  1. JSON data types will be supported in the 5.7 GA.
  2. Generated/Virtual columns are on the roadmap but not currently supported.
  3. Spatial Indexing is not currently on the roadmap and will likely not be implemented anytime soon.
  4. Galera/Group Replication support is being considered but is an immense task and will likely not be available anytime in the near future.
  5. Fulltext Indexes is not currently on the roadmap and will likely not be implemented anytime soon.


George O. Lorch III
Software Engineer, Percona

Does Percona plan to implement Foreign Keys in TokuDB?

No, foreign key support will likely never be implemented in TokuDB. If at some point upstream MySQL fixed the foreign key implementation to properly exist above the storage engines rather than within them, we would reconsider.


George O. Lorch III
Software Engineer, Percona

Thanks for reminding me that MySQL is so 20th century…

All I could find about the proper foreign key support in MySQL is this document from 2009:
https://dev.mysql.com/worklog/task/?id=148