Problem with pt-table-sync

I am using pt-table-sync to determine whether our replicated databases are in sync. All servers are running the same version of CentOS (6.2) and the same version of MySQL (Percona 5.5.20-55-log). The version of pt-table-sync we are using is 2.1.1.

Our replication setup is like this:

A -> B (high-speed connection)
B -> C (high-speed connection)
B -> D (LOW-speed connection)
D -> E (high-speed connection)
D -> F (high-speed connection)

Here’s the pt-table-sync command I am using:

pt-table-sync --print --wait 12000 --no-check-triggers
–ignore-databases=information_schema,performance_schema,mys ql,arch
–tables=exp.schedule,fbp.user_sp_term,fbp.user_syllabus_ite m
–sync-to-master
h=(appropriate IP),u=dba,p=???

I have not had any problems using this command where there is a high-speed network connection, but I get the following error message every time I use it over our LOW-speed connection:

DBD::mysql::db commit failed: MySQL server has gone away at /usr/bin/pt-table-sync line 8821.
Issuing rollback() for database handle being DESTROY’d without explicit disconnect().

I have increased the “–wait” to the current 12000, but that does not seem to help.

Am I using the command incorrectly? Is there another parameter that I need to be using? I will appreciate any assistance.

–wait might not do what you think. You might need to use --set-vars and add wait_timeout to it.

Baron, thank you. My sync check finally worked when I changed the command to:

pt-table-sync --print --wait 24000 --set-vars wait_timeout=24000 --no-check-triggers
–ignore-databases=information_schema,performance_schema,mys ql,arch
–tables=exp.schedule,fbp.user_sp_term,fbp.user_syllabus_ite m
–sync-to-master
h=(appropriate IP),u=dba,p=???

This particular slave is connected to its master over a T1 connection…all other connections are either 100M or 1G.

Thanks again.