My favorites | Sign in
Logo
                
Search
for
Updated Jun 09, 2009 by baron.schwartz
GettingStarted  
Getting started hacking on Maatkit

Introduction

So you want to help out with Maatkit but aren't sure where or how to start? No problem. There are just a couple things you need to do to prepare and depending on how extensively you want to get involved, some of this is optional.

Requirements

Maatkit comes with a number of tools and utilities to assist developers but you need to provide a suitable environment for them to work in. The bare minimum you need is

Most Linux distributions ship MySQL and you can use your distribution's package management features to install a copy of MySQL. If you want to test some very specific features, you may need to install the Percona distribution of MySQL or another version of MySQL with the microslow patch applied. Please note, the Subversion repository for Maatkit (not the release tar files) contains data files and helper scripts that allow you to launch several instances of MySQL in stand-alone, master-slave and master-master replication configurations. This is similar to what MySQL Sandbox does but you don't need to install that.

  • diff

A suitable diff program for generating patches against the Maatkit code.

  • subversion

Subversion is the version control system used to manage the Maatkit source code. Most Linux distributions ship Subversion and you can use your distribution's package management features to install it. If your distribution doesn't have subversion, you can visit http://subversion.tigris.org to download source code or binaries.

  • realpath

Several developer utilities included with Maatkit use this program to demangle paths to files. Debian-based Linux distributions can install realpath using $ sudo apt-get install realpath but RPM-based distributions may not have this utility available. If you can't find realpath, then you can use this Perl script.

  • Time::HiRes Perl module

Many of the Maatkit programs use this Perl module. If your distribution doesn't provide this module, you need to either use the CPAN shell to install it or download it from http://search.cpan.org and install it manually.

  • $EDITOR

Your favorite editor.

Happy Hacking

Start by making sure MySQL is installed, that the InnoDB engine is enabled and that MySQL starts without error. You don't need to create any databases or users to run the Maatkit tests. Check out the source code from Google Code (see http://code.google.com/p/maatkit/source/checkout for specifics) and start hacking. Use $ svn update often to make sure you have the latest changes, since Maatkit is actively developed with many commits daily.

If you have an idea for a feature, please check the Issues list to see if it's been proposed and if any work has been started on it already.

Check the other pages in the Developer Information, Conventions and Internals sections of the wiki for more details on coding standards, developer utilities and specifics on the Maatkit code itself.

Hosted by Google Code