Commit Graph

309 Commits

Author SHA1 Message Date
Sveta Smirnova
670f4d159b Merge pull request #992 from percona/PT-1423_LP_1682929_pt-table-checksum_First_chunk_takes_too_long
PT-1423 - LP #1682929: pt-table-checksum: First chunk takes too long
2025-08-26 19:43:16 +03:00
Sveta Smirnova
a0dffc51e4 Merge pull request #989 from agejevasv/fix-precedence-error
Fix script crashing with precedence error
2025-08-26 19:43:00 +03:00
Sveta Smirnova
495869da3e PT-2440 - Support for MariaDB 10.5
- Updated non-libraries code in bin/pt-heartbeat, bin/pt-replica-restart, and bin/pt-slave-delay
- Adjusted lib/Sandbox.pm, so it does not require SSL for MariaDB
- Adjusted test case, so it is in line with other tests
2025-08-23 03:32:33 +03:00
Nyele
6c9deb9d66 Merge branch 'percona:3.x' into PT-2465_patch_fix_for_mariadb_10.5_above 2025-08-18 14:44:30 +03:00
Sveta Smirnova
825dea7547 PT-1423 - LP #1682929: pt-table-checksum: First chunk takes too long
- Modified the tool, so if both --chunk-size and --chunk-time are specified, it starts chunking with the indicated --chunk-size, and then adjusts chunk size to fit the time.
2025-08-16 02:01:22 +03:00
Sveta Smirnova
82a2ac7a40 PR-989 - Fix script crashing with precedence error
- Fixed typo in the tool code
- Added more diagnostic information into test for pt-1919
2025-08-13 17:03:29 +03:00
Sveta Smirnova
5100e9b1aa PT-191 - add ssl options to DSN
- Updated ssl tests, so they test option --mysql_ssl and DSN
2025-07-30 17:18:38 +03:00
Sveta Smirnova
b7094dfd09 PT-191 - add ssl options to DSN
- Added test cases to ensure SSL is working in all tools
2025-07-26 14:18:30 +03:00
Sveta Smirnova
7a8fee3d86 Merge pull request #974 from marek-knappe/PT-2457-pt-online-schema-change-add-drop-tablespace-Option
fix(pt-online-schema-change): correct --remove-data-dir default behav…
2025-07-23 13:11:59 +03:00
Sveta Smirnova
1d0487cf2f PT-2418 - pt-online-schema-change 3.7.0 lost data when exe alter xxx rename column xxx
- Added instructions to skip the test if server version is less than 8.0
2025-07-21 18:25:30 +03:00
Sveta Smirnova
8f068a9d59 PT-2418 - pt-online-schema-change 3.7.0 lost data when exe alter xxx rename column xxx
- Added clean up to the test
- Added test for enabled option --check-alter
- Removed extra spaces
2025-07-21 16:45:10 +03:00
mamadi
2dd8de7def created test case for patch 2025-07-16 16:45:17 +02:00
Marek Knappe
4a9a4bb903 PT-2418: Fix column data loss during RENAME COLUMN operations
The pt-online-schema-change tool was not properly handling RENAME COLUMN
syntax (MySQL 8.0+), causing renamed columns to be excluded from the
data copy operation. This resulted in NULL values for renamed columns
after the schema change.

The issue was in the find_renamed_cols() function which only supported
CHANGE COLUMN syntax but not RENAME COLUMN syntax. Added support for
RENAME COLUMN parsing to properly detect column renames and include
them in the common_cols list for data copying.

Fixes: PT-2418
2025-07-02 12:45:00 +10:00
Marek Knappe
d0d046122b fix(pt-online-schema-change): correct --remove-data-dir default behavior (#PT-2458)
- Fixed issue where --remove-data-dir incorrectly defaulted to true

feat(pt-online-schema-change): add support for TABLESPACE removal (#PT-2457)
- Implemented detection and removal of TABLESPACE clause during schema changes
2025-06-24 17:09:55 +10:00
Sveta Smirnova
c49c58db2b Merge pull request #941 from percona/PT-2355_pt-online-schema-change_should_not_resume_a_job_with_empty_boundaries
PT-2355 - pt-online-schema-change should not resume a job with empty …
2025-03-27 21:13:43 +03:00
Sveta Smirnova
88367c1dea PT-2407 - pt-online-schema-change exit status(return code) is 0 even if it does NOT succeed
- Changed die call for the case when ALTER TABLE fails for the new table
- Removed stalled comment from Frank
- Added test case
2025-03-26 17:51:35 +03:00
Sveta Smirnova
840ba6926b PT-2355 - pt-online-schema-change should not resume a job with empty boundaries
- The tool should still fail, so I improved error message and added test case
2025-03-22 00:01:56 +03:00
Sveta Smirnova
4bf48d864f PT-2422 - pt-online-schema-change race overwrites new_table_name
- Added test case
2025-03-13 21:30:00 +03:00
Sveta Smirnova
5c16d37020 PT-2389 - pt-online-schema-change resume functionality doesn't work with ADD/DROP column
- Modified pt-1717-resume.t test case, so it passes now
2025-03-12 17:31:43 +03:00
Perry Harrington
888af5f5ef Updated test for PT-1717 to perform meaningful alter so fix for PT-2389 would be exercised 2025-01-28 11:51:03 -08:00
Sveta Smirnova
f57d63ab00 PT-2340 - Support MySQL 8.4
- Added sleep to t/lib/MasterSlave.t, so it does not fail on fast machines
- Disabled SSL tests on versions earlier than 8.0
2024-11-14 22:48:06 +03:00
Sveta Smirnova
3786d4e4ce PT-2340 - Support MySQL 8.4
- Added SSL to 8.4 tests
2024-11-14 03:20:43 +03:00
Sveta Smirnova
33086769a1 PT-2340 - Support MySQL 8.4
- Added test for replica lag check for pt-archiver
- Re-added deprecated slave- options
- Added tests for deprecation warnings and for legacy options for pt-archiver
- Removed practically not supported options --replica-user and --replica-password from pt-archiver, pt-kill, pt-query-digest
- Added legacy source/replica options (master/slave) variants and tests for pt-heartbeat, pt-online-schema-change, pt-replica-find, pt-replica-restart, pt-table-checksum, pt-table-sync
- Updated modules after lib/MasterSlave.pm change
2024-10-04 18:27:00 +03:00
Sveta Smirnova
5d55904436 PT-2340 - Support MySQL 8.4
- Tests for the minimal SSL support
- Updated util/update-modules, so they don't skip tools with modules, not defined in lib
2024-09-18 15:28:45 +03:00
Sveta Smirnova
e3e352d1d6 PT-2340 - Support MySQL 8.4
- Fixed comparison operators for VersionCheck calls
2024-08-27 13:45:37 +03:00
Sveta Smirnova
b332537481 PT-2340 - Support MySQL 8.4
- Fixed staff I broke for 8.0
2024-08-23 16:03:53 +03:00
Sveta Smirnova
76c1202cb5 PT-2340 - Support MySQL 8.4
- Updated modules and tests for pt-online-schema-change
- Removed typo from lib/MasterSlave.pm
2024-07-30 18:20:50 +03:00
Sveta Smirnova
aaa258d209 Added master server restart in the cleanup for t/pt-online-schema-change/pt-2168-cancel.t test, so next test is not affected by not properly closed connections in 5.7 2024-06-07 22:12:44 +03:00
Sveta Smirnova
f8d2f59e62 PT-2119 - pt-osc aborts in 8.0.15 even if no FK exists
- Adjusted test case, so it is skipped on 5.7
2024-05-30 03:38:20 +03:00
Sveta Smirnova
c5cafbb486 PT-2231 - pt-osc + PTDEBUG=1 fails with Use of uninitialized value in concatenation (.) or string at ./pt-online-schema-change line 4309.
- Re-implemented fix for PT-1799 properly
- Added test case
- Updated modules
2024-04-11 21:47:11 +03:00
Sveta Smirnova
a9a4bc5b6c Merge pull request #792 from percona/PT-2119_pt-osc_aborts_in_8.0.15_even__if_no_FK_exists
PT-2119 - pt-osc aborts in 8.0.15 even if no FK exists
2024-04-08 18:40:11 +03:00
Sveta Smirnova
50bc80c243 Merge pull request #783 from percona/PT-1717_resume_pt-online-schema-change_if_interrupted
PT-1717 resume pt-online-schema-change if interrupted
2024-04-08 18:39:17 +03:00
Sveta Smirnova
c87a5da5ba PT-2119 - pt-osc aborts in 8.0.15 even if no FK exists
- Moved check after we identified child tables
- Added test case
2024-04-01 23:36:54 +03:00
Sveta Smirnova
e9ec7213f4 Merge pull request #769 from percona/PT-2295_Fix_tests_on_distributions
PT-2295 - fix tests on distributions
2024-03-15 16:24:29 +03:00
Sveta Smirnova
57e4008a2f PT-1717 - resume pt-online-schema-change if it's interrupted
- dash in options --no-drop-new-table and --no-drop-triggers
2024-03-14 22:19:16 +03:00
Sveta Smirnova
2d4f5c290a PT-1717 - resume pt-online-schema-change if it's interrupted
- Now --resume dies if new table or triggers do not exist
- New table and triggers are not removed if --resume fails during these
  checkups
- Added sample file and more tests for --resume
2024-03-14 21:20:50 +03:00
Sveta Smirnova
8ce3b94a1c PT-1717 - resume pt-online-schema-change if it's interrupted
- Added test case for failures and recovery
- Implemented option --resume
2024-03-05 18:46:14 +03:00
Sveta Smirnova
a111ed0b70 PT-1717 - resume pt-online-schema-change if it's interrupted
- Updating lower and upper boundaries in the history table
2024-02-28 18:25:39 +03:00
Sveta Smirnova
c8c1b2483a PT-1717 - resume pt-online-schema-change if it's interrupted
- Insert row with Job ID into the history table
- Update job row with progress, set 'done' to 'yes' when finished
  succesfully
2024-02-27 18:08:41 +03:00
Sveta Smirnova
ab6e5aa1bb PT-1717 - resume pt-online-schema-change if it's interrupted
- Added options --history, --history-table, and --binary-index
- Added code that creates history table to store pt-osc progress
2024-02-20 20:08:20 +03:00
Sveta Smirnova
d820b1b4ac PT-2295 - Fix tests on distributions
- Better diagnostic code in t/pt-online-schema-change/pt-169.t for
  failures
2024-02-01 22:14:02 +03:00
Sveta Smirnova
cbc00ad761 PT-1751 - adds --where param to pt-online-schema-change
- Option --where added
- Added test case
2024-01-30 17:55:15 +03:00
Sveta Smirnova
643113540f PT-2268 - pt-online-schema-change 3.5.5 breaks on mysql5.7 with server_id 0
- Better check if server_id is defined
- Added test case
2023-12-22 23:11:31 +03:00
Sveta Smirnova
9f5fc7e50a Merge pull request #388 from cswingler/check_undefined_skip_check_slave_lag_schema_change
Check undefined skip check slave lag schema change

Contirbutor signed corporate SLA as stated in https://github.com/percona/percona-toolkit/pull/230#issuecomment-308564024
2023-11-12 23:31:30 +03:00
Sveta Smirnova
3e1e9b8425 PT-1860 make pt-osc respect case insesitive lookup on Windows and osx #516
- Run update-modules
- Adjusted fix, so it does not create extra variable to hold $EVAL_ERROR
- Adjusted test case, so it runs on Linux
2023-11-09 17:16:43 +03:00
Sveta Smirnova
e4583b0542 Merge branch '3.x' into HEAD 2023-11-09 13:43:17 +03:00
Ivan Kruglov
8d38d0900a PT-1860 make pt-osc respect case insesitive lookup on Windows and osx 2023-11-08 20:16:31 +01:00
Sveta Smirnova
3d4751f428 PR-388 - Check undefined skip check slave lag schema change
- Merge branch '3.x' into HEAD
- Improve the fix, so it does not fail when $slave_to_skip->{P} is not
  defined while $slave->{dsn}->{P} is defined
- Improve the fix for pt-table-checksum (PR-230)
- Added test cases for this fix for pt-table-checksum and pt-osc
- Adjusted replica info repository options in test for pt-1760.t, so it
  does not break regression tests for pt-osc on 5.7
2023-11-08 19:42:35 +03:00
Ilaria Migliozzi
8e4824813f added new hook before_die (#509)
* added new hook before_die

before die, the script calls this hook in oder to execute extra user's 
operations

* PR-509 -  added new hook before_die

- Added test cases

---------

Co-authored-by: Sveta Smirnova <sveta.smirnova@percona.com>
2023-11-06 18:22:14 +03:00
Sveta Smirnova
46fd033994 PT-2258 - Pass tbl as argument for on_copy_rows_after_nibble (#682)
- Implemented the feature
- Created test case
2023-09-22 13:35:29 +03:00