5817 Commits

Author SHA1 Message Date
Daniel Nichter
830f855c05 Fix race condition between replicate and replicate-check. 2011-09-30 09:58:33 -06:00
Daniel Nichter
b3cfd659b1 First basic tests. Reset global var. Add post_pipeline to PercoaTest::no_diff(). 2011-09-29 17:54:38 -06:00
Daniel Nichter
72d71a84da Remove pt-table-checksum tests which are no longer applicable. 2011-09-29 16:04:34 -06:00
Daniel Nichter
78b4f36d71 Don't require DSN. Begin rewriting docs. 2011-09-29 13:02:14 -06:00
Daniel Nichter
ed68f3ef5c Exit 1 if diffs. 2011-09-29 12:21:32 -06:00
Daniel Nichter
c794f5e119 Implement --replicate and --replicate-check at same time. Pass where arg to find_replication_differences(). 2011-09-29 12:16:35 -06:00
Daniel Nichter
c4092295a5 Re-implement --replicate-check. Add --quiet. Update find_replication_differences(). 2011-09-29 10:46:22 -06:00
Daniel Nichter
206ac93214 Working --resume. 2011-09-29 09:17:36 -06:00
Daniel Nichter
e2739d8a25 Add NibbleIterator::set_boundary(). 2011-09-29 09:11:50 -06:00
Daniel Nichter
258ed361c8 test 2011-09-29 08:36:18 -06:00
Daniel Nichter
929000cfdd Partial --resume implementation (work in progress). 2011-09-28 11:33:12 -06:00
Daniel Nichter
25882d49e7 Resume for SchemaIterator. Use only next_lb; don't need first_lb in NibbleIterator. 2011-09-27 13:06:24 -06:00
Daniel Nichter
d4b5409492 Implement --[no]empty-replicate-table (default: yes). 2011-09-27 12:05:42 -06:00
Daniel Nichter
af17abb7ed EXPLAIN next ub sql. Catch Ctrl-C between nibbles. Use NibbleIterator member functions instead of args. 2011-09-27 10:40:11 -06:00
Daniel Nichter
04eca15150 Add next_boundaries callback. 2011-09-27 10:23:09 -06:00
Daniel Nichter
83bbe45187 Simplify NibbleIterator callbacks. Pass args to init callback so caller can check ub_sth. 2011-09-27 08:21:34 -06:00
Daniel Nichter
c9e8444166 Handle one-chunk tables. Chunk tables w/o indexes if they're small enough. Check index for every chunk. Check chunk size if ub and next_lb are equal. 2011-09-26 11:38:35 -06:00
Daniel Nichter
10e31c1b63 Fix NibbleIterator::_can_nibble_once(). Add boundaries() and one_nibble(), remove unused _check_index_usage(). 2011-09-26 10:23:42 -06:00
Daniel Nichter
eff835ffe7 Detect infinite loops using only lower boundaries. 2011-09-26 08:53:22 -06:00
Daniel Nichter
4e8b00b4cc Update NibbleIterator in pt-table-checksum. 2011-09-23 17:41:49 -06:00
Daniel Nichter
9f3e05691c Detect infinite loops. Use best non-unique index. Disable chunk size limit if chunk index is unique. 2011-09-23 17:33:23 -06:00
Daniel Nichter
07cb6010a2 More repl table columns: chunk_time, chunk_index, lower_boundary, and upper_boundary (those two replace boundaries). 2011-09-23 10:13:57 -06:00
Daniel Nichter
b783470aaa Implement table progress. Adj rate and chunk size only if nibbled > 0 rows. Always use --chunk-size if --chunk-time=0. 2011-09-23 08:54:58 -06:00
Daniel Nichter
361c958a66 Auto-skip mysql.slow|general_log tables. 2011-09-23 08:07:03 -06:00
Daniel Nichter
1d47fe29b8 Use CleanupTask to close all dbh nicely. Don't do after_nibble stuff if chunk was skipped. Don't pass %common_modules. 2011-09-22 12:11:33 -06:00
Daniel Nichter
acef6450ff Add CleanupTask. 2011-09-22 11:45:44 -06:00
Daniel Nichter
60c28c0b30 Remove --[no]optimize-xor; it's always on now. Add prefix TS with day and month. 2011-09-22 10:47:54 -06:00
Daniel Nichter
380cf4b0bd Init talbe 2+ chunk size based on total server rate. 2011-09-22 10:13:44 -06:00
Daniel Nichter
bbae1ba9cf Add TS to output. Don't require initial n and t. 2011-09-22 09:04:11 -06:00
Daniel Nichter
43ecc8546d Replace ReplicaLagLimiter with ReplicaLagWaiter and WeightedAvgRate. Don't inherit rate from prev tables. Store nibble_time and chunk_size in $tbl. 2011-09-21 11:31:36 -06:00
Daniel Nichter
9a3899d9d0 Fix typo. 2011-09-21 11:22:43 -06:00
Daniel Nichter
f6fb8b44bd Decompose ReplicaLagLimiter into ReplicaLagWaiter and WeightedAvgRate. Don't use OptionParser in NibbleIterator; use chunk_size arg instead. 2011-09-21 11:19:49 -06:00
Daniel Nichter
31d6171355 Restore --max-lag and friends. 2011-09-21 10:39:55 -06:00
Daniel Nichter
d979821efe Rewrite ReplicaLagLimiter::wait(). 2011-09-21 10:30:33 -06:00
Daniel Nichter
6784bf30c3 Make error message prettier. 2011-09-20 12:00:42 -06:00
Daniel Nichter
bfb5b7ae6a Implement ReplicaLagLimiter. Add --chunk-time. 2011-09-20 11:52:35 -06:00
Daniel Nichter
30dc37e3a5 Debug-print initial chunk size. 2011-09-20 11:51:40 -06:00
Daniel Nichter
412e9e4e18 Allow initial values to be zero for ReplicaLagLimiter::new(). Return 1/0/death from ReplicaLagLimiter::wait(). 2011-09-20 11:28:00 -06:00
Daniel Nichter
be9337a202 Pass NibbleIterator obj to callbacks. 2011-09-20 10:05:37 -06:00
Daniel Nichter
a19dd0b16c Simplify ReplicaLagLimiter::update(). 2011-09-20 08:59:33 -06:00
Daniel Nichter
26b99b20ad Use weighted exp avg instead of moving avg for ReplicaLagLimiter::update(). Use "LIMIT ?, 2" for ub_sql/sth in NibbleIterator. 2011-09-19 11:41:41 -06:00
Daniel Nichter
b1e01be2c2 Finish, test, and docu ReplicaLagLimiter. 2011-09-19 09:06:30 -06:00
Daniel Nichter
006b93ddf9 Create ReplicaLagLimiter. Replace --max-lag, --check-interval, and --check-slave-lag with --replica-lag and --replica-lag-dsn. Use TableParser::get_table_status() in NibbleItertor. Eval SHOW TABLE STATUS. Auto-add "n" (name) part to parsed DSNs. 2011-09-16 17:35:40 -06:00
Daniel Nichter
32ade00663 Eval entire checksum op for each tbl. Use "percona" as default db for checksums table. 2011-09-15 11:46:57 -06:00
Daniel Nichter
bc2401ebf5 Remove MySQLDump from pt-table-checksum. Use "$tp" instead of "$du" in SchemaIterator. 2011-09-15 09:41:47 -06:00
Daniel Nichter
756142c1d1 Remove MySQLDump; move get_create_table() and get_table_status() to TableParser and remove saving results in each function. 2011-09-15 09:39:32 -06:00
Daniel Nichter
d5eb621333 Set AutoCommit=1. 2011-09-14 10:57:06 -06:00
Daniel Nichter
2f2644caf1 Update RowChecksum and OptionParser in pt-table-checksum. 2011-09-14 10:41:37 -06:00
Daniel Nichter
d881fa0b35 Change --chunk-size to type size. Make TIME column %.3f. Make OptionParser report invalid sizes. 2011-09-14 10:40:42 -06:00
Daniel Nichter
676a7aa20f Fix cols, sep, trim, and float precision. Re-add --columns. 2011-09-14 10:16:43 -06:00