[2022/01/10 15:31:51.270 +08:00] [WARN] [backoff.go:149] [“regionMiss backoffer.maxSleep 40000ms is exceeded, errors:
region_id:64503303, region_ver:72300, store
_type:tiflash, peer_addr:, error:epoch_not_match:<> at 2022-01-10T15:31:50.263391753+08:00
region_id:64503303, region_ver:72300, store_type:tiflash, peer_addr:,
error:epoch_not_match:<> at 2022-01-10T15:31:50.764768481+08:00
region_id:64503303, region_ver:72300, store_type:tiflash, peer_addr:, error:epoch_not_match:<>
at 2022-01-10T15:31:51.270662518+08:00”]
会不会是 这个 tiflash region 64503303 的问题
上周五几次备份 报错时间的也都是tiflash 报错,region_id 还不一样
会不会是dumpling 时间太长 ,开始获取的region_id 列表 ,部分region_id到实际去查询的时候 region 合并 或者分裂了 ? 所以提示unavailable
我观察发现 备份的时候 会分两步
SELECT _tidb_rowid
FROM yixintui_operate
.Agent_material_report_cost
TABLESAMPLE REGIONS() ORDER BY _tidb_rowid
SELECT * FROM yixintui_operate
.Agent_material_report_cost
WHERE ( report_date >=‘2021-01-01’ and report_date <‘2021-02-01’ ) AND (_tidb_rowid
>=3452416045 and _tidb_rowid
<3452440709) ORDER BY _tidb_rowid
我按月份分段备份就没问题 。
tiflash报错信息是什么,dumpling可能是去查询tiflash。
xxx.xx.17.188 | SUCCESS | rc=0 >>
2022.01.10 15:31:10.994648 [ 35 ] CoprocessorHandler: grpc::Status DB::CoprocessorHandler::execute(): RegionException: region 64503303, message: NOT_FOUND
Hi, 麻烦提供一份完整的 dumpling 日志。
Hi,麻烦提供对应 dumpling 时间段的 tidb-server 的日志。
应该是你参数不太合理,region 在 dump 期间发生变动,导致报错。
试一下下面这样看可不可以。
./dumpling -h 127.0.0.1 -P 4000 -u backup -p -B yixintui_operate --filetype sql --threads 8 -r 50000 -o ${Bak_dir}/${Ip}/${Port}/${Time} -F 256MiB --compress gzip
–params “tidb_distsql_scan_concurrency=1,tidb_mem_quota_query=8589934592”
只是用了这2个参数,
SELECT * FROM `yixintui_operate`.`Agent_material_report_cost` WHERE ( report_date >='2022-07-01') AND (`_tidb_rowid`>=2305843016533029100 and `_tidb_rowid`<2305843016533314278) ORDER BY `_tidb_rowid`
dumpling 为什么非要关联 _tidb_rowid ?
执行计划走的tiflash ,有关系吗?
–threads=1 太小了
把线程改成 2 或者 改回默认的 4 就可以备份成功了 。
该主题在最后一个回复创建后60天后自动关闭。不再允许新的回复。