为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
- 【TiDB 版本】:v3.0.1
- 【问题描述】:
drainer同步数据的时候遇到了下游rds执行报错的ddl语句,按照官网的做法,需要找出报错的ddl的commitTs,然后在drainer.toml文件中加上ignore-txn-commit-ts = {报错的ddl的commitTS},但是我现在在drainer.log中找不到报错ddl的commitTs,但是在v3.0.4中能够找到,请问大佬,在这种情况下我需要怎么处理这个问题(ps:生产环境不敢轻举妄动)。现将drainer报错日志贴下:
[2019/12/16 11:33:50.615 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261423625109546] [2019/12/16 11:33:53.689 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261424595042366] [2019/12/16 11:33:56.696 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261425315938351] [2019/12/16 11:33:59.740 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261426259656706] [2019/12/16 11:34:02.874 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261427085410318] [2019/12/16 11:34:06.003 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261428029128768] [2019/12/16 11:34:09.093 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261428854882322] [2019/12/16 11:34:10.490 +08:00] [INFO] [client.go:758] ["recycle idle connection"] [target=10.10.10.143:20160] [2019/12/16 11:34:10.504 +08:00] [INFO] [collector.go:280] ["get ddl job"] [job="ID:1038, Type:create table, State:synced, SchemaState:public, SchemaID:44, TableID:1037, RowCount:0, ArgLen:0, start time: 2019-12-16 11:34:10.091 +0800 CST, Err:<nil>, ErrCount:0, SnapshotVersion:0"] [2019/12/16 11:34:12.146 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261429824815139] [2019/12/16 11:34:15.165 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261430545711176] [2019/12/16 11:34:16.593 +08:00] [ERROR] [util.go:153] [execDDL] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [2019/12/16 11:34:17.599 +08:00] [ERROR] [util.go:153] [execDDL] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [2019/12/16 11:34:18.604 +08:00] [ERROR] [util.go:153] [execDDL] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [2019/12/16 11:34:19.610 +08:00] [ERROR] [util.go:153] [execDDL] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [2019/12/16 11:34:20.616 +08:00] [ERROR] [util.go:153] [execDDL] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [2019/12/16 11:34:21.616 +08:00] [ERROR] [load.go:557] ["exec failed"] [sql="CREATE TABLE
tc_financial_newest_report(\
idbigint(20) ************(此处省略) PRIMARY KEY (
id),\
KEY
index(
payment_date,
merchant_id),\
KEY
index2(
payment_month,
merchant_id),\
KEY
index3(
payment_date,
merchant_name),\
KEY
index4(
payment_month,
merchant_name),\
KEY
merchantId_status_type_index(
merchant_id,
type,
status),\
KEY
merchantName_status_type_index(
merchant_name,
type,
status),\
UNIQUE KEY
merchant_id(
merchant_id)\
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin AUTO_INCREMENT=1 COMMENT='最新的财务报表数据'"] [error="Error 1071: Specified key was too long; max key length is 767 bytes"] [errorVerbose="Error 1071: Specified key was too long; max key length is 767 bytes\
github.com/pingcap/errors.AddStack\
\t/home/jenkins/workspace/release_tidb_3.0/go/pkg/mod/github.com/pingcap/errors@v0.11.4/errors.go:174\
github.com/pingcap/errors.Trace\
\t/home/jenkins/workspace/release_tidb_3.0/go/pkg/mod/github.com/pingcap/errors@v0.11.4/juju_adaptor.go:15\
github.com/pingcap/tidb-binlog/pkg/util.RetryOnError\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/pkg/util/util.go:157\
github.com/pingcap/tidb-binlog/pkg/loader.(*loaderImpl).execDDL\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/pkg/loader/load.go:278\
github.com/pingcap/tidb-binlog/pkg/loader.(*batchManager).execDDL\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/pkg/loader/load.go:555\
github.com/pingcap/tidb-binlog/pkg/loader.(*batchManager).put\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/pkg/loader/load.go:578\
github.com/pingcap/tidb-binlog/pkg/loader.(*loaderImpl).Run\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/pkg/loader/load.go:420\
github.com/pingcap/tidb-binlog/drainer/sync.(*MysqlSyncer).run\
\t/home/jenkins/workspace/release_tidb_3.0/go/src/github.com/pingcap/tidb-binlog/drainer/sync/mysql.go:117\
runtime.goexit\
\t/usr/local/go/src/runtime/asm_amd64.s:1337"] [2019/12/16 11:34:21.616 +08:00] [INFO] [load.go:402] ["Run()... in Loader quit"] [2019/12/16 11:34:21.616 +08:00] [INFO] [mysql.go:113] ["Successes chan quit"] [2019/12/16 11:34:21.617 +08:00] [INFO] [syncer.go:249] ["write save point"] [ts=413261430834069618]