pt-table-checksum depends on unique server-id even for PXC nodes
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Percona Toolkit moved to https://jira.percona.com/projects/PT |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
pt-table-checksum checks for unique server-id values when connecting to nodes defined either in the dsns tables when recursion-
I suppose this check has carried through the checks are done on slaves in a regular async replication topology.
This is true for latest pt-table-checksum version 2.2.6
This can be seen when running pt-table-checksum with PTDEBUG=1
# Cxn:3648 8272 Removing duplicates from pxc01 pxc01 pxc02 pxc03
# Cxn:3654 8272 SELECT @@server_id
# Cxn:3656 8272 Server ID for pxc01 : 1
# Cxn:3654 8272 SELECT @@server_id
# Cxn:3656 8272 Server ID for pxc01 : 1
# Cxn:3662 8272 Removing pxc01 , ID 1 , because we've already seen it
# Cxn:3654 8272 SELECT @@server_id
# Cxn:3656 8272 Server ID for pxc02 : 1
# Cxn:3662 8272 Removing pxc02 , ID 1 , because we've already seen it
# Cxn:3654 8272 SELECT @@server_id
# Cxn:3656 8272 Server ID for pxc03 : 1
# Cxn:3662 8272 Removing pxc03 , ID 1 , because we've already seen it
# Cxn:3673 8272 Destroying cxn
# Cxn:3682 8272 DBI::db=
# Cxn:3673 8272 Destroying cxn
# Cxn:3682 8272 DBI::db=
# Cxn:3673 8272 Destroying cxn
# Cxn:3682 8272 DBI::db=
# pt_table_
Diffs cannot be detected because no slaves were found. Please read the --recursion-method documentation for information.
# VersionParser:4156 8272 VersionParser got a dbh, trying to get the version
# VersionParser:4204 8272 InnoDB support: DEFAULT
# VersionParser:4216 8272 InnoDB version: 5.5.31-rel30.3
pxc01 is a cluster node but no other nodes or regular replicas were found. Use --recursion-
# Cxn:3673 8272 Destroying cxn
# Cxn:3682 8272 DBI::db=
Able to reproduce with PXC 5.5, pt-table-checksum 2.2.10 and PTDEBUG=1
# Percona: :XtraDB: :Cluster: 3711 1513 percona-pxc55-2 SHOW VARIABLES LIKE 'wsrep_ cluster_ name' HASH(0x1ecca88) Disconnecting dbh on percona-pxc55-2 h=192.168. 43.61,P= 3306 HASH(0x1ec9dd8) Disconnecting dbh on percona-pxc55-1 h=192.168. 43.60,P= 3306 checksum: 9317 1513 0 slaves found method= dsn to specify the other nodes in the cluster. HASH(0x1ebca88) Disconnecting dbh on percona-pxc55-1 h=localhost pxc55-1 mysql]# pxc55-1 mysql]# pxc55-1 mysql]# pt-table-checksum --version pxc55-1 mysql]#
# Cxn:3631 1513 Removing duplicates from percona-pxc55-1 percona-pxc55-2
# Cxn:3637 1513 SELECT @@server_id
# Cxn:3639 1513 Server ID for percona-pxc55-1 : 1
# Cxn:3645 1513 Removing percona-pxc55-1 , ID 1 , because we've already seen it
# Cxn:3637 1513 SELECT @@server_id
# Cxn:3639 1513 Server ID for percona-pxc55-2 : 1
# Cxn:3645 1513 Removing percona-pxc55-2 , ID 1 , because we've already seen it
# Cxn:3656 1513 Destroying cxn
# Cxn:3665 1513 DBI::db=
# Cxn:3656 1513 Destroying cxn
# Cxn:3665 1513 DBI::db=
# Cxn:3631 1513 Removing duplicates from
# Cxn:3631 1513 Removing duplicates from percona-pxc55-1
# Cxn:3637 1513 SELECT @@server_id
# Cxn:3639 1513 Server ID for percona-pxc55-1 : 1
# pt_table_
Diffs cannot be detected because no cluster nodes were found. Please read the --recursion-method documentation for information.
# VersionParser:4139 1513 VersionParser got a dbh, trying to get the version
# VersionParser:4187 1513 InnoDB support: DEFAULT
# VersionParser:4199 1513 InnoDB version: 5.5.39-36.0
percona-pxc55-1 is a cluster node but no other nodes or regular replicas were found. Use --recursion-
# Cxn:3656 1513 Destroying cxn
# Cxn:3665 1513 DBI::db=
[root@percona-
[root@percona-
[root@percona-
pt-table-checksum 2.2.10
[root@percona-