Commit Graph

796 Commits

Author SHA1 Message Date
Sveta Smirnova
acc0d495d2 Typo in t/lib/bash/collect.t, causing test failure on Bookworm 2024-05-24 11:49:05 +03:00
Sveta Smirnova
e946d26a45 Merge pull request #788 from percona/PT-2264_pt-query-digest_Pipeline_process_11_--output_slowlog_caused_an_error_Wide_character
PT-2264 - pt-query-digest Pipeline process 11 (--output slowlog) caused an error: Wide character
2024-03-29 10:48:16 +03:00
Sveta Smirnova
1ad44e04da PT-2264 - pt-query-digest Pipeline process 11 (--output slowlog) caused an error: Wide character
- Updated lib/DSNParser.pm, so it sets binmode to character set utf8 since
  MySQL 8.0 if character set is not specified in the DSN
- Added test case
- Run update-modules
2024-03-21 13:01:03 +03:00
Sveta Smirnova
e9fab37367 PT-2275 - "System Summary" graph breaks when perl is not available (OS summary dashboard)
- Added check for Perl binary in lib/bash/parse_options.sh
- Updated tools
- Updated t/lib/bash/parse_options.sh, so it includes required package alt_cmds.sh
2024-03-18 14:27:11 +03:00
Sveta Smirnova
f136116826 PT-2295 - Fix tests on distributions
- Added test result adjustment on slow machines for
  t/lib/bash/collect.sh, because no other solution worked
- Updated modules for all tools
2024-02-13 20:03:32 +03:00
Sveta Smirnova
19baa34872 PT-2295 - Fix tests on distributions
- Fixed sporadic pt-tc failures on rolled back SHOW MASTER STATUS code
- Added better diagnostic info for sporadically failing t/pt-table-checksum/basics.t
- Decreased chunk size it t/pt-table-checksum/progress.t, so this test
  has less chances to fail, because pt-osc finishes faster than expected
2024-02-13 20:03:32 +03:00
Sveta Smirnova
9819736156 PT-2295 - Fix tests on distributions
- disabled test 'Single column int key' in 8.0.35+ until
  https://bugs.mysql.com/bug.php?id=113892 is fixed
- Fixed data for 'Two column int key' test
2024-02-13 20:03:32 +03:00
Sveta Smirnova
8261dbc543 PT-2295 - Fix tests on distributions
- Removed mysql_ssl=1 from t/lib/TableParser.t, because it breaks with
  DBI 1.642
2024-02-01 18:03:18 +03:00
Sveta Smirnova
1036b5768a PR-140 - Add CPU cache configuration info to pt-summary
- Merge branch '3.x' into HEAD
- Move code to the proper place: library files
- Fix tests
2024-01-25 01:41:20 +03:00
Sveta Smirnova
f8c43118bd PT-2168 pt-osc shouldnt fail while unable to monitor a replica node (#676)
* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Proof of concept
- Fixed regular expression in lib/TableParser.pm mistakenly chaged in the tool's code

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Added basic test case for PT-2168
- Added more details for replica lag information
- Disconnecting replica if lag is not checked. This prevents "Too many
  connections" error

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Implemented option --wait-lost-replicas for pt-osc, added test case

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Added more tests for situations where connection to the replica can
  fail

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Removed extra checks for wait_no_die variable
- Added test cases for SQL queries that pt-osc sends to replicas

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Allow to reload dsns table while waiting for missed replica if
  --recursion-method is dsn
- Fixed logic in replica rediscovery, so it works with replicas on the
  same host but with different ports
- Renamed option wait-lost-replicas to fail-on-stopped-replication, so
  it is in line with pt-table-checksum
- Adjusted tests
- Removed debug code for PT-1760
- Added test case for PT-1760
- Added exception for variable Open_tables_with_triggers in
  lib/bash/collect.sh due to failed test in Percona Server 8.0.34+
- Updated pt-stalk

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Updated modules
- Fixed typo in t/pt-table-sync/bidirectional.t
- Removed trailing whitespaces in lib/MasterSlave.pm

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Help for option --fail-on-stopped-replication

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Added check for availability of the simple_rewrite_plugin in t/pt-online-schema-change/pt-2168.t

* PT-2168 - PT-OSC shouldn't fail while unable to monitor a replica node

- Added link to the simple_rewrite_plugin source code
- Removed tests for code that runs only in the beginning of pt-osc
  action, so should not be affected by the option fail-on-stopped-replication
2023-09-19 23:31:33 +03:00
Viktor Szépe
c57441be8c War on typos Act 1 (#655)
* Fix typos in lib/ directory

* Update generated bin/ files

* PR 655 -  War on typos Act 1 #655

- Updated modules in tools that were not updated
- Fixed tests to reflect proposed changes

---------

Co-authored-by: Sveta Smirnova <sveta.smirnova@percona.com>
2023-08-22 16:18:38 +03:00
Sveta Smirnova
9755074cd8 PT-2156 Fix tests for lib, part2 (#650)
* PT-2156 - Fix tests for lib

Fixed tests, broken by putting fix for PT-1554 into the library code, mostly by updating checksums.
Added AutoCommit option for test lib/QueryReview.t
Reset SQL mode to empty to allow TableChunker to work with invalid and zero dates

* PT-2156 - Fix tests for lib

Adjusted t/lib/SchemaIterator.t to work with version 8.0

* PT-2156 - Fix tests for lib

Adjusted b/t/lib/Processlist.t, so it reflects fix for PT-981

* PT-2156 - Fix tests for lib

Adjusted t/lib/HTTP/Micro.t, so it works with different order of parameters, returned at v.percona.com/
Adjusted test for empty files in t/lib/bash/collect.t
Disabled mysqladmin debug test in t/lib/bash/collect.t, because of PT-2242

* PT-2156 - Fix tests for lib

Added LC_NUMERRIC=POSIX into t/lib/bash/report_system_info.sh, so reports in tests are not environment-dependent
Updated expected results in t/lib/bash/report_system_info.sh, so they reflect new information, collected by pt-summary

* PT-2156 - Fix tests for lib

- Improved fix for PT-76, so it handles inline comments
- Added test case for PT-76
- Improved fix for PT-1720, so it ignores unrecognizable option only if it comes from the toolkit-wide files and still errors out if wrong option was passed via command line or the tool-specific option file.

* PT-2156 - Fix tests for lib

- Improved fix for PT-2102, so it finds running instance configuration file using PID and also does not break t/lib/bash/report_mysql_info.t test
- Removed unnecessary copy-paste from t/pt-mysql-summary/pt-2102.t test
- Adjusted number of collected files in t/lib/bash/collect_mysql_info.sh

* PT-2156 - Fix tests for lib

- Fix for PT-1543 and MyRocks collection were originally put only into lib/bash/report_mysql_info.shthat broke the logic of collecting data first, then formatting report from this data. This, in its turn, broke test t/lib/bash/report_mysql_info.sh/t/lib/bash/report_mysql_info.t, because CMD_MYSQL is not defined in this library. I rewrote these fixes, so they follow original logic of the tool (pt-mysql-summary)
- Added tests for keyring plugin, encrypted tables, and MyRocks for t/lib/bash/report_mysql_info.sh and t/pt-mysql-summary/pt-mysql-summary_encryption.t

* PT-2156 - Fix tests for lib

- Added FLUSH TABLES to t/lib/bash/collect.sh, so it does not fail opentables tests if run when more than 1000 tables open in the sandbox environment
- Changed number of expected sample files to reflect keyring colletion file

* PT-2156 - Fix tests for lib

- Added skip to some tests in lib that file when run with PXC, because not supported to work with PXC
- Adjusted configuration files for PXC, so they allow LOAD DATA/SELECT INTO OUTFILE commands
- Adjusted data samples, so they do not depend on auto increment values
- Fixed lib tests, failing with PXC

* PT-2156 - Fix tests for lib

Updated tests for pt-online-schema-change, so they work with PXC and skipped if designed for semi-synchronous replication setup

* PT-2156 - Fix tests for lib

- Added cluster-specific samples for t/lib/SchemaIterator.t
- Removed extra debugging print from t/pt-table-checksum/pt-1728.t

* PT-2156 - Fix tests for lib

Evgeniy's review on July 20

* Update t/lib/TableSyncer.t

Removed comment left after debugging

* Update t/pt-mysql-summary/pt-mysql-summary_encryption.t

Removed extra debug output

* PT-2156 - Fix tests for lib

Tabs to spaces
2023-08-02 14:50:21 +03:00
Sveta Smirnova
642253ce52 PT-2156 Fix tests for lib (#606)
* PT-2156 - Fix tests for lib

- Fixed tests broken for lib/TableParser.pm after fix for PT-1059
- Updated tests for lib/TableParser.pm that are broken due to SHOW CREATE TABLE output format change in 8.0
- Updated modules for all tools that use lib/TableParser.pm

* Revert "Fixed pt-archiver tests"

This reverts commit a3ab87b12e.

This commit wa needed, because removed code in sandbox/slave_channels.sql broked the test. Proper fix would be to do not remove channel names rather than chaging the test. So revertig it.

* PT-2156 - Fix tests for lib

- Updated test t/lib/TableChecksum.t so it reflects changes, introduced in the fix for PT-2016
- Updated test t/lib/RowChecksum.t so it reflects changes added to in the fix for PT-2138: UTF8 support
- Uncommented SQL in sandbox/slave_channels.sql that made t/lib/MasterSlave.t to fail
- Added check for undef into t/pt-archiver/archive_using_channels.t
- Updated lib/Cxn.pm so it uses $dbh->{Active} after issue with the ping() call, reported at https://github.com/perl5-dbi/DBD-mysql/issues/306

* PT-2156 - Fix tests for lib

- Impoved the fix for PT-2016, so it does not files with keys with USING keyword
- Added brackets to expression in lib/TableNibbler.pm, so it does not crap query wit many indexes with OR keyword
- Adjusted test t/lib/TableNibbler.t, so it reflects above chages
- Modified lib/Cxn.pm, so it has workaround for https://github.com/perl5-dbi/DBD-mysql/issues/306 , introduced in DBD::mysql 4.0.50
- Updated tests: added debugging code and cleanups
- Updated modules for tools
2023-03-27 14:18:26 +03:00
Sveta Smirnova
64ca4de973 PT-1642-Update PT docs to reference bug reporting location as Percona JIRA (#590)
Updated bug tracker URL and also changed "open issues" list to https://jira.percona.com/projects/PT/issues
2023-02-11 00:34:01 +03:00
Carlos Salguero
9d6508da5f PT-1900 pt-query-digest not hiding parameter properly sometimes when parameter=binary (#510)
* PT-1900 WIP

* Fixed quoted strings regexes

* PT-1900 Fixed query rewriter to properly handle quoted text

* Fixed merge conflicts with 3.x branch
2021-09-27 08:23:23 -03:00
Carlos Salguero
ecf43e2a17 PT-1985 pt-deadlock db schema check (#502) 2021-07-29 12:15:53 -03:00
Carlos Salguero
e570cecbab PT-1914 Column data lost when 'Generated' is in the column comment (#482)
* PMM-1914 Fixed column parsing having generated

Fixed table parser code that errouneously considered a column as
generated when the default was empty DEFAULT '' and the COMMENT had
the word 'Generated'.

* PMM-1914 Updated TableParser in all programs

* PT-1914 Updated changelog

* PT-1914 Added test
2021-03-09 11:46:05 -03:00
Carlos Salguero
f0ee14d479 WIP 2020-03-30 08:21:05 -03:00
Carlos Salguero
53213e0582 Merge branch '3.0' into PT-1707 2019-10-29 08:57:38 -03:00
Carlos Salguero
e656274493 PT-1707 Updated DSNParser in all apps 2019-10-29 08:53:26 -03:00
Carlos Salguero
0c50d8f708 Merge pull request #420 from percona/PT-1760
PT-1760 regression on slave with replication channels
2019-10-15 19:02:36 -03:00
Carlos Salguero
6a302e2b07 PT-1757 Implemented fallback in NibbleIterator
Since now NibbleIterator can fallback to nibble (from one chunk) pt-osc
can nibble tables even if due to unacurate stats, it choses one nible as
the initial nibbling method.
2019-10-13 21:58:56 -03:00
Carlos Salguero
a6e0b0d324 WIP 2019-10-08 13:10:26 -03:00
Carlos Salguero
605b97959c PT-1760 DSN parser overrides values if F= was specified 2019-10-01 11:20:18 -03:00
Carlos Salguero
ed6ebcedbd Updated changelog and tests 2019-09-06 06:25:52 -03:00
Carlos Salguero
9190b5e6ac Tests passed with MySQL 5.7 2019-09-03 15:26:26 -03:00
Carlos Salguero
5c4a6bd5e1 PT-1728 Fixed missing Quoter pkg 2019-05-30 09:56:26 -05:00
Carlos Salguero
a97e24be71 PT-1707 IPV6 support for recursion method processlist 2019-04-11 17:44:17 -03:00
Carlos Salguero
2b5c8f69ab PT-1573 Fixed General log parser regex
The regexp to process log entries was not considering timestamps in +n,
it was only considering timestamps in -n hours
2018-09-26 09:25:33 -03:00
Carlos Salguero
df20b8af28 PT 3.0.12 fixes tests 2018-09-10 16:31:01 -03:00
Carlos Salguero
8c806df658 PT-1572 Fixed issue with --chunk-index-columns 2018-08-09 13:58:31 -03:00
Carlos Salguero
d2c4f57a52 PT-1572 Updated tests 2018-07-28 16:08:27 -03:00
Carlos Salguero
ea4886ad9d PT-1572 WIP 2018-07-27 22:16:02 -03:00
Carlos Salguero
602c1f0ea2 PT-1570 pt-archiver fails to detect columns with the word GENERATED as part of the comment 2018-06-14 14:15:20 -03:00
Carlos Salguero
f5fd795fda PT-1559 pt-osc --alter-foreign-keys-method=drop_swap doesn't work with MySQL 8.0+ 2018-06-13 16:46:40 -03:00
Carlos Salguero
0004bb7bbc PT-1554 (WIP) Tests for MySQL 8
There are tests failing but the sandbox doesn't crash
2018-05-30 21:25:28 -03:00
Carlos Salguero
cbe2333e92 PT-1554 Test fixes for QueryReportFormatter 2018-05-23 11:32:03 -03:00
Carlos Salguero
6679596b3b PT-1554 4th attempt to fix ExplainAnalyzer.t 2018-05-22 15:26:56 -03:00
Carlos Salguero
b547b7c21c PT-1554 3rd attempt to fix ExplainAnalyzer.t 2018-05-22 15:25:33 -03:00
Carlos Salguero
9d1c67613b PT-1554 2nd attempt to fix ExplainAnalyzer.t 2018-05-22 15:20:06 -03:00
Carlos Salguero
f9f05b7289 PT-1554 Test fixes for ExplainAnalyzer.t 2018-05-22 15:11:30 -03:00
Carlos Salguero
0f98f72002 PT-1554 Fix tests that requires a connection using latin1 2018-05-17 12:08:51 -03:00
Carlos Salguero
a87d6e8765 PT-1554 Fixed test for MockSyncStream 2018-05-17 09:55:27 -03:00
Carlos Salguero
5414abc9aa PT-1554 Fixed tests for TableChecksum 2018-05-15 15:23:29 -03:00
Carlos Salguero
a48a767eb4 PT-243 added --max-hostname-length & max-line-length to pt-query-digest 2018-03-27 14:23:59 -03:00
Carlos Salguero
8943e0a9f6 Merge branch '3.0' into mysql-8 2018-02-19 12:11:07 -03:00
Carlos Salguero
cdec55dc84 PMM-1479 Switched to UUID for version check
In order to be able to count individual users for the usage stats, we
need to implement UUID instead of just using MD5(hostname) since most
servers are just 'localhost' or 'db1'.
Using UUID we would be able to count unique users.
2018-02-14 12:54:02 -03:00
Carlos Salguero
75ab0ba653 PT-1256 pt-table-sync does not use the character set for the table it is synchronizing 2018-02-09 16:46:16 -03:00
Carlos Salguero
51dcca5959 PT-572 Fixes for MySQL 8
- Updated sandbox data file
- Fixes for pt-upgrade since there is no query_cache in MySQL 8
- Updates for SchemaIterator since there are new/renamed tables in MySQL 8
- Disabled some tests due to errors in MySQL 8.0.4-rc
2018-02-01 11:30:12 -03:00
Carlos Salguero
d38a584271 Fixes for DSN parser to use UTF8 2018-01-28 14:46:51 -03:00