Uploaded image for project: 'Percona Toolkit'
  1. Percona Toolkit
  2. PT-2160

Fix tests for pt-online-schema-change

Details

    • Improvement
    • Status: Done
    • Medium
    • Resolution: Fixed
    • 3.5.0
    • 3.5.2
    • None
    • None
    • Yes
    • Yes
    • 25

    Description

      How to Repeat

      Results are for PS-8.0.30

      $ prove -vw --trap --timer t/pt-online-schema-change/
      ...
      time="2023-01-06T17:47:37+03:00" level=info msg="1000 rows inserted"
           0s [====================================================================] 100%
      # 1000 rows loaded. Starting tests.
      not ok 1 - PT-1455 Successfully altered. Exit status = 0
      
      #   Failed test 'PT-1455 Successfully altered. Exit status = 0'
      #   at t/pt-online-schema-change/pt-1455.t line 76.
      #          got: '25'
      #     expected: '0'
      not ok 2 - PT-1455 Got successfully altered message.
      
      #   Failed test 'PT-1455 Got successfully altered message.'
      #   at t/pt-online-schema-change/pt-1455.t line 82.
      #                   'Found 2 slaves:
      # Delly-7390 -> 127.0.0.1:12346
      # Delly-7390 -> 127.0.0.1:12347
      # Will check slave lag on:
      # Delly-7390 -> 127.0.0.1:12346
      # Delly-7390 -> 127.0.0.1:12347
      # Operation, tries, wait:
      #   analyze_table, 10, 1
      #   copy_rows, 10, 0.25
      #   create_triggers, 10, 1
      #   drop_triggers, 10, 1
      #   swap_tables, 10, 1
      #   update_foreign_keys, 10, 1
      # Altering `employees`.`t1`...
      # Creating new table...
      # Created new table employees._t1_new OK.
      # Altering new table...
      # Altered `employees`.`_t1_new` OK.
      # 2023-01-06T17:47:38 Creating triggers...
      # 2023-01-06T17:47:38 Created triggers OK.
      # 2023-01-06T17:47:38 Copying approximately 17 rows...
      # 2023-01-06T17:47:38 Dropping triggers...
      # 2023-01-06T17:47:38 Dropped triggers OK.
      # 2023-01-06T17:47:38 Dropping new table...
      # 2023-01-06T17:47:38 Dropped new table OK.
      # `employees`.`t1` was not altered.
      # 	(in cleanup) 2023-01-06T17:47:38 Error copying rows from `employees`.`t1` to `employees`.`_t1_new`: DBD::mysql::db selectrow_hashref failed: Unknown database 'employees' [for Statement "EXPLAIN SELECT * FROM `employees`.`t1` WHERE 1=1"] at /home/sveta/src/percona-toolkit/bin/pt-online-schema-change line 6117.
      # 2023-01-06T17:47:38 Error copying rows from `employees`.`t1` to `employees`.`_t1_new`: DBD::mysql::db selectrow_hashref failed: Unknown database 'employees' [for Statement "EXPLAIN SELECT * FROM `employees`.`t1` WHERE 1=1"] at /home/sveta/src/percona-toolkit/bin/pt-online-schema-change line 6117.
      # '
      #     doesn't match '(?^s:Successfully altered)'
      # Resetting replication filters on slave 2
      # Resetting replication filters on slave 1
      ...
      

      Rest was hanging. Probably other tests also fail.

      Additionally, some tests are skipped, we need to check if they should be skipped.

      Suggested Fix

      Identify which tests fail, because badly written and which show real issues with code, fix either tests or code.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              sveta.smirnova Sveta Smirnova
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Smart Checklist