jeremycole/mysql_management_tools — pull request #3 by Jericon (2013-04-09 22:34:07+00:00)
Title: Addition of connection_manager methods, task modifications and a couple of housekeeping changes

Changes to connection_manager:
* Added a dedicated method (swap_tables) to the connection_manager that
will swap two tables. Accepted arguments are host, table1 and table2,
where table1 and table2 are the tables that should be swapped.
* Added nonblock_compact_table method to the connection_manager. This
is called the same way as a normal compaction, accepting the arguments
of host and table. This uses a Twitter MySQL specific non-blocking
alter to do the compaction and will fail if not using Twitter build t8
or higher. (See:
https://github.com/twitter/mysql/wiki/Change-History#wiki-5.5.28.t8)
* Added a "list_keys" method to connection manager that will return an
array of indexes (by name) on the given table. Useful for checking if
an index is present or not prior to a schema change.

Task Changes:
* faux_truncate was modified to use the new swap_tables method.
* Added new "nonblock_compact" task that uses the new nonblock_compact
method from connection manager.

Housekeeping:
* Version bump to 0.3.8 (0.3.7 was used internally at Twitter)
* gemspec changed to not require explicit listing of each task file
* .gitignore added to allow Twitter specific tasks to not be committed.
It also ignores .gem files and Apple .DS_Store files