Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
MyRocks currently lacks a large number of features compared to InnoDB:
- Online DDL is not supported yet, but fast alter table add and drop indexes are supported.
- EXCHANGE PARTITION does not work in MyRocks yet
- Lack of SAVEPOINT support
- Transportable Tablespace, Foreign Key, Spatial Index, and Fulltext Index are not supported
- Gap Lock support - see MyRocks Row Locking - ROW based binary logging must be used. Statement based binary logging may cause data inconsistency between master and slave because MyRocks does not support Next-Key Locking.
- "*_bin" (e.g. latin1_bin) or binary collation should be used on CHAR/VARCHAR indexed columns. By default, MyRocks prevents creating indexes with non-binary collations (including latin1). You can optionally use it by setting rocksdb_strict_collation_exceptions='t1' (table names with regex format), but non_binary covering indexes other than latin1 (excluding german1) still require a primary key lookup to return the CHAR/VARCHAR column.
- Either ORDER BY DESC or ASC is slow. This is because of "Prefix Key Encoding" feature in RocksDB. See http://www.slideshare.net/matsunobu/myrocks-deep-dive/58 for details. By default, ascending scan is faster but descending scan is slower. By configuring "reverse column family”, descending scan is faster but ascending scan is slower. Note that InnoDB also imposes a cost when the index is scanned in the opposite order.
Clone this wiki locally
Press h to open a hovercard with more details.