空region不合并

请问能提供下宕机时的 tiflash 的日志,或者宕机时的报错信息么?

上一楼的百度网盘就是当时的日志。

tiflash_tikv.log 是 tiflash proxy 的日志,tiflash 本体的日志大概叫 tiflash.log 或者 server.log,方便提供下么?

需要恢复,所以已经scale-in了 日志也清理了 不好意思

合并的这两个 region,是否属于不同的 table ?目前tiflash 会假设一个region 只能包含一个 table 的数据,如果打破了这个假设,确实会出现各种问题

大佬,也就是说 即使开了跨表合并的话因为tiflash也不允许合并? 正常作为时没不对其进行合并,这种手工合并时是否也加个检查或限制?

我觉得确实需要限制一下,schedule.enable-cross-table-merge 为 false 的情况下不应该让合并成功:joy:

这些空 region 是不是都对应一个 rule?可能有 tiflash 表的 rule 没有 gc 掉,造成无法合并,也可能这些表本省就没什么数据,因此统计成了 empty region,则使正常的情况。可以调一个 empty region,然后运行一下

curl http://pd_ip:port/pd/api/v1/config/rules/region/{empty_region_id}

看看是什么rule,以及检查一下对应的表是否还在(https://docs.pingcap.com/zh/tidb/dev/tidb-functions#tidb_decode_key).

tiflash 是不允许跨表合并的,手动强制合并引起了 tiflash 崩溃,可能需要重建该 tiflash 节点上的数据才行(可下线,上线)。

查询的table_id和db_id都是null 不知道这些空region是属于哪个表了怎么办?

1 个赞

看table_id是null


看table_id是null

curl 的时候这个地址报404

tiflash不允许跨表合并的原因是什么? 每个表是一个按segment组织的B树,region不能跨树?

:astonished:Tiflash不允许跨表合并?

因为tiflash 的存储结构必须是按表来组织的,region 调度也需要按照表来切。允许夸表region 处理起来相当麻烦Orz

嗯嗯,同一棵树内部默认都是一种 table schema

rule 匹配出来是什么?

curl http://pd_ip:port/pd/api/v1/config/rules/region/1377744

有个 rules 漏掉了,再check 一下

检查了是tiflash使用了,这个表400行数据。



试过改大改小都没减少空region