Commit Graph

96 Commits

Author SHA1 Message Date
Daniel Nichter
083fb1b8ca Make --explain cummulative. Update char_chunking.t. Reword checksum query comments. 2011-10-12 11:22:13 -06:00
Daniel Nichter
271cd850d6 Enable --create-replicate-table by default, and create the repl db too. 2011-10-12 08:35:08 -06:00
Daniel Nichter
ce9d7d461a Re-implement --explain. 2011-10-11 12:33:36 -06:00
Daniel Nichter
2de29214b9 Remove obsolete tests and unused sample files. 2011-10-11 10:54:29 -06:00
Daniel Nichter
df7366d302 Rename pt-table-checksum/replicate.t to basics.t. 2011-10-11 10:39:11 -06:00
Daniel Nichter
937a514b49 Add Cxn.t. 2011-10-11 10:31:25 -06:00
Daniel Nichter
b2f92391a7 Fatal error if slave dies. Make Cxn::connect() if dbh id dead. Sort slave lag properly and use Cxn instead of dbh in ReplicaLagWaiter. Check master cxn before keepalive. Sleep N+0.25 waiting for chunks. 2011-10-10 10:56:08 -06:00
Daniel Nichter
e2e40488c5 Add Cxn.pm. Make MasterSlave, NibbleIterator, and ReplicaLagWaiter use Cxn. Rewrite, simplify Retry. 2011-10-06 12:47:35 -06:00
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
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
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
eff835ffe7 Detect infinite loops using only lower boundaries. 2011-09-26 08:53:22 -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
361c958a66 Auto-skip mysql.slow|general_log tables. 2011-09-23 08:07:03 -06:00
Daniel Nichter
acef6450ff Add CleanupTask. 2011-09-22 11:45: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
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
d979821efe Rewrite ReplicaLagLimiter::wait(). 2011-09-21 10:30:33 -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
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
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
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
Daniel Nichter
5f2cdad299 Implement MasterSlave::get_slaves() to get cxns from a DSN table. Add comments explaining use_repl_db(). 2011-09-13 09:27:59 -06:00
Daniel Nichter
0f05ca9b94 Fix multi-column index nibbling. Remove extra spaces in generated statements. 2011-09-12 08:14:57 -06:00
Daniel Nichter
3ed822e8e6 Implement dynamic chunk size, set_chunk_size(). 2011-09-12 07:32:19 -06:00
Daniel Nichter
985ee65928 Pass EXPLAIN sths to callbacks. 2011-09-11 11:10:11 -06:00
Daniel Nichter
8ce093655f Add dms arg, remove before_row callback, pass some args to callbacks, get next boundary if no rows (so exec_nibble callback can skip nibbles). 2011-09-11 10:22:40 -06:00
Daniel Nichter
84f7c47ff4 Rename new TableChecksum to RowChecksum and revert TableChecksum to r108. This will avoid completely break TableSync*.pm and pt-table-sync. 2011-09-10 13:46:55 -06:00
Daniel Nichter
968d10ac37 Refactor TableChecksum for NibbleIterator (use only BIT_XOR, return just column list, etc.). 2011-09-10 12:21:00 -06:00
Daniel Nichter
c989bd29dd First working NibbleIterator. 2011-09-09 17:29:28 -06:00
Daniel Nichter
7fde36a65b Create NibbleIterator. Cleanup TableNibbler. Fix bug in SchemaIterator. 2011-09-09 11:50:19 -06:00
Daniel Nichter
1373f69361 Fix OptionParser to parse new version format. 2011-09-01 09:01:34 -06:00
Daniel Nichter
dcceaae66b Fix typo: "TESTS" not "TEST" makes prove happy. 2011-09-01 08:46:50 -06:00
Daniel Nichter
e91aad978f Fix pt-index-usage save_results.t. 2011-08-27 12:47:55 -06:00
Daniel Nichter
d567e3d282 Restart slave1 so subsequent tests don't try to connect to phantom 12347. 2011-08-27 12:27:11 -06:00
Daniel Nichter
b2a982f9ea Update a test result that is now correct. 2011-08-27 12:22:49 -06:00
Daniel Nichter
3c6edf6d71 Update TableChunker in pt-table-checksum. Include COUNT in test samples. 2011-08-27 11:26:00 -06:00
Daniel Nichter
a7ab27bb54 Don't get min/max a 2nd time in _chunk_char(). Use where in _chunk_char(). Test char chunking world_city.name with real range stats. Add failing pt-table-checksum char chunk --where test. 2011-08-27 11:17:28 -06:00
Daniel Nichter
2e0f607589 Pass --where to get_range_statistics(). 2011-08-27 09:23:36 -06:00
Daniel Nichter
64c6ad418e Fix MockSyncStream.t for pre-DBD::mysql 4.001. 2011-08-24 11:37:45 -06:00
Daniel Nichter
fb8f3148f5 The last Daemon.t stabilizer? 2011-08-24 11:26:18 -06:00
Daniel Nichter
a1bee06edf One more stabilizer for Daemon.t. 2011-08-24 11:24:07 -06:00