GET 24/7 LIVE HELP NOW

Announcement

Announcement Module
Collapse
No announcement yet.

pt-table-sync error 'cannot nibble table'

Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • pt-table-sync error 'cannot nibble table'

    Running this on our replication master (toolkit v2.2.4):
    sudo pt-table-sync --print --sync-to-master slave1 --tables=pulse.unsubscribe > /tmp/ptsync.log

    results in the error:
    Cannot nibble table `pulse`.`unsubscribe` because MySQL chose no index instead of the `PRIMARY` index at /usr/bin/pt-table-sync line 5456. while doing pulse.unsubscribe on slave1

    It's a pretty simple table, holds email addresses for unsubscribers:
    CREATE TABLE `unsubscribe` (
    `email` varchar(320) NOT NULL,
    `contact_id` varchar(50) DEFAULT NULL,
    `unsubscribed` datetime NOT NULL,
    PRIMARY KEY (`email`(255)),
    KEY `unsubscribe_contact_index` (`contact_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;


    I was able to run this command against 2 other tables in the database 'pulse' which had diffs found by pt-table-checksum and it worked great. This is the only table I'm having the Nibble error on. Any ideas?
    Last edited by xref; 09-18-2013, 03:33 PM.

  • #2
    Hi,

    You might be affected by this bug https://bugs.launchpad.net/percona-toolkit/+bug/918056
    What version of pt-table-sync you are using ? You can check via

    $ pt-table-sync --version

    And try with latest version of pt-table-sync and let me know how it goes.

    Thank you.

    Comment


    • #3
      Well the fix for that was released in 2.1.9, i've been having the error on 2.2.3

      Comment

      Working...
      X