Here's a test case that reproduces this issue:
# STEP 1. Create some test data (create table and inserts below):
$ mysql tmp
Server version: 5.5.37-MariaDB-log MariaDB Server MariaDB [tmp]>
CREATE TABLE `tiger_pony` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `ref` varchar(32) COLLATE utf8_unicode_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
insert into tiger_pony (ref) values ('Timber'); insert into tiger_pony (ref) values ('Shiny');
select * from tiger_pony; +----+--------+ | id | ref | +----+--------+ | 1 | Timber | | 2 | Shiny | +----+--------+
# STEP 2. Run the Percona archiver utility on the table:
$ /opt/percona-toolkit-2.2.17/bin/pt-archiver -u <user> -p <password> --source h=<host>,D=tmp,t=tiger_pony --where 'true' --no-delete --limit 1000 --commit-each --file ./tmp.txt
$ cat tmp.txt 1 Timber
# So the original select gives two rows, and the Percona archiver utility only outputs one.
Here's a test case that reproduces this issue:
# STEP 1. Create some test data (create table and inserts below):
$ mysql tmp
Server version: 5.5.37-MariaDB-log MariaDB Server
MariaDB [tmp]>
CREATE TABLE `tiger_pony` ( utf8_unicode_ ci;
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`ref` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=
insert into tiger_pony (ref) values ('Timber');
insert into tiger_pony (ref) values ('Shiny');
select * from tiger_pony;
+----+--------+
| id | ref |
+----+--------+
| 1 | Timber |
| 2 | Shiny |
+----+--------+
# STEP 2. Run the Percona archiver utility on the table:
$ /opt/percona- toolkit- 2.2.17/ bin/pt- archiver -u <user> -p <password> --source h=<host> ,D=tmp, t=tiger_ pony --where 'true' --no-delete --limit 1000 --commit-each --file ./tmp.txt
$ cat tmp.txt
1 Timber
# So the original select gives two rows, and the Percona archiver utility only outputs one.