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

LP #1247677: --recursion-method documentation or behaviour incorrect

Details

    Description

      **Reported in Launchpad by Jaime Crespo last update 16-11-2014 04:33:23

      Working with 2 instances on the same machine, ports 3307 and 3308, both non-standard.

      1. pt-table-checksum --version
        pt-table-checksum 2.2.5
      2. pt-table-checksum --defaults-file=master/my.cnf
        Diffs cannot be detected because no slaves were found. Please read the --recursion-method documentation for information.
      3. pt-table-checksum --defaults-file=master/my.cnf --recursion-method=hosts
        (slave is detected)

      According to the docs:
      "The processlist method is the default, because SHOW SLAVE HOSTS is not reliable. However, if the server uses a non-standard port (not 3306), then the hosts method becomes the default because it works better in this case."

      Probably both the docs AND the behaviour should be changed -try hosts every time show processlist fails?. Maybe pt-table-sync is also affected?

      Sample slave my.cnf (I have a non-standard port and report-host -hosts doesn't work without it. Master is similar, running in 3307):
      [mysqld]
      datadir = /usr/local/slave
      tmpdir = /usr/local/slave
      port = 3308
      user = mysql
      bind-address = 127.0.0.1
      report-host = 127.0.0.1
      socket = /usr/local/slave/mysql.sock
      pid-file = /usr/local/slave/mysql.pid
      #log-bin = /usr/local/slave/binlog
      #binlog_format = ROW
      relay-log = /usr/local/slave/relay
      slow-query-log
      slow-query-log-file = /usr/local/slave/slow.log
      long-query-time = 1
      log-error = /usr/local/slave/error.log
      server-id = 2
      skip-slave-start
      skip-name-resolve

      #innodb settings
      innodb-file-per-table
      innodb-log-file-size = 500M
      innodb-buffer-pool-size = 5G
      innodb-flush-log-at-trx-commit = 2

      [client]
      user = root
      host = localhost
      port = 3308
      socket = /usr/local/slave/mysql.sock

      [mysql]
      prompt = "\[email protected] (\d)> "

      Attachments

        Activity

          People

            Unassigned Unassigned
            lpjirasync lpjirasync (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Smart Checklist