lp:~laurynas-biveinis/percona-server/tokudb-non-blocking-optimize

Created by Laurynas Biveinis and last modified
Get this branch:
bzr branch lp:~laurynas-biveinis/percona-server/tokudb-non-blocking-optimize
Only Laurynas Biveinis can upload to this branch. If you are Laurynas Biveinis please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Recent revisions

535. By Laurynas Biveinis

Add support for storage engines with online OPTIMIZE, implementing
https://blueprints.launchpad.net/percona-server/+spec/allow-writes-during-table-optimization.

The implementation is based on a combination of
https://github.com/Tokutek/mysql56/commit/1a321b6ae70f76da3dc76c944014baab2b7ce1ae
and
https://github.com/Tokutek/mysql56/commit/a701cea6de67c713d418a319a6a8486da8e07ff2

It adds a new handler table flag HA_CAN_WRITE_DURING_OPTIMIZE. While
executing OPTIMIZE, after opening the tables, the presence of this
flag is checked and the MDL lock is downgraded from
MDL_SHARED_NO_READ_WRITE to MDL_SHARED_WRITE, and the closing of any
open instances of this table for other connections is skipped.

Adjust handler::ha_optimize() to assert that HA_ADMIN_TRY_ALTER return
value is incompatible with HA_CAN_WRITE_DURING_OPTIMIZE.

Adjust MDL_ticker::downgrade_lock() to allow downgrades from
MDL_SHARED_NO_READ_WRITE.

531. By Laurynas Biveinis

Manually merge lp:~stewart/percona-server/pkg-5.6

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:percona-server/5.6
This branch contains Public information 
Everyone can see this information.