上传项目图片:“Percona Toolkit”雷竞技下载官网
  1. 雷竞技下载官网Percona工具包
  2. pt - 116

Pt-online-schema更改在添加唯一索引时消耗数据

    XML 可打印的

细节

    • 错误
    • 状态: Done">完成
    • 解决方法: 固定
    • 3.0.2
    • 3.0.3
    • 没有一个
    • 没有一个

    描述

      设置
      = = = = =

      删除表t1
      创建表t1 (
      Id tinyint unsigned auto_increment主键
      varchar(200) NOT NULL
      );
      INSERT INTO t1(非唯一)VALUES('test01'),('test01'),('test02');
      SELECT * FROM t1;

      行动
      = = = = =

      pt-online-schema-change——alter="ADD UNIQUE INDEX unique_1 (notunique)"——statistics——execute h=127.0.0.1,P=5711,D=test,t=t1,u=msandbox, P= msandbox

      /预期想要的结果
      ===================

      osc终止,因为唯一索引的数据不是唯一的

      实际结果
      ==========

      在MySQL 5.6上,具有重复条目的数据将被静默地删除
      在MySQL 5.7中,有重复条目的数据被删除,并在统计数据中发出警告1062(可能也是MariaDB 5.5+)

      相关的
      = = = = = =

      https://bugs.launchpad.net/雷竞技下载官网percona-toolkit/+bug/1099836

      建议修复
      ===========

      • 如果可能,在警告1062时终止,并且/或在添加添加唯一索引时需要一个——force-unique标志。
      • 如果原始表的行数比原始表的行数少,则不要进行swap/drop(插入数?统计数据?)

      版本
      = = = = = = =

      • MySQL 5.7.11
      • 2.2.16 (git b1ca211)

      意外行为的原因是pt-osc使用INSERT LOW_PRIORITY IGNORE来复制块,这只会在有UNIQUE约束违反时引发警告而不是错误(Percona和Oracle 5.6.35),所以pt-osc会默默地忽略这些行。雷竞技下载官网

      例子

      1. pt_online_schema_change:10906 41234 INSERT LOW_PRIORITY IGNORE INTO ' xy '。“_table_new”()选择)((user_id > = ?))和((“user_id”< = ?))锁定/分享模式41234拷贝啃啃/下边界:18757143上边界:18773685
      2. pt_online_schema_change:10925 41234 SHOW WARNINGS

      启动:https://bugs.launchpad.net/雷竞技下载官网percona-toolkit/+bug/1545129

      附件

        活动

            carlos.salguero卡洛斯Salguero
            carlos.salguero卡洛斯Salguero
            投票:
            0 为这个问题投票
            观察人士:
            1 开始关注这个问题

            日期

              创建:
              更新:
              解决:

              时间跟踪

                估计:
                原始估计-未指定
                未指定
                剩余:
                剩余估计- 0分钟
                0米
                记录:
                时间:2天
                二维

                聪明的清单