Replay log user documentation
Query run mode
We run all queries in autocommit-mode.
Input log format
Slow query log only now.
Progress report
Print out a line for every query. Show statistics such as the query execution time, error code, number of rows affected and matched.
Configuration
This options both available as command-line options as config options.
Input slow query log
Accept either a filename on the command-line, -, or STDIN, just like normal Unix applications.
Read thread number
--read-thread-count
count of threads for execute read queries.
Report plugin
Later - not now.
Use database option
--database=name
This option notice, what tool should run “use name;” after establish every connection to mysql server.
Progress report
None other than the one-line-per-query output.
MySQL client options
--mysql-client=options
The “options” is mysql settings (such as user, socket, host, port, etc) what should propagate to establishment connection for every mysql's connection.
Report analyzers plugins
We'll write awk/perl/sed scripts against the raw output and figure out what is useful.
Replay log developers documentation
Build result
Result should be single static-linked binaries what run on every system (economy of time).
Programming language
C+++
Libraries
STL, Boost
Tests
Boost.test
Performance tests
We should prepare some performance what investigate replay log speed. Also we can collect some internal statistic about load of different components.
Build system
We use CMake because is wonderful for C/C++ project (simpler that autotools, out-of-source build, Makefile generator, flexible depends management, support may compilers and libraries).
Documentation
Doxygen
Internal architecture
Single thread to parse input slow query log, (CORE_NUMBER - 2) threads for read queries, 1 thread for write (UPDATE/INSERT) queries. All queries run as fast as possible.


