Bug 反馈
tikv pd 版本 v4.0.2
client 版本 github.com/pingcap/tidb v1.1.0-beta.0.20200731004449-a63fa79d90c5
scan getData 陷入了死循环,直到 [tikv:9006]GC life time is shorter than transaction duration
相关日志:
[2021/09/14 16:31:29.994 +08:00] [DEBUG] [scan.go:157] ["txn getData"] [nextStartKey=] [nextEndKey=00646f6e6779696e672f7e4d4438383033394537453944362f7e446174612f40234d4438383033394537453944365f313631353534353630305f4d44502e786d6c2e677a] [reverse=true] [txnStartTS=427716323047637140]
[2021/09/14 16:31:29.966 +08:00] [DEBUG] [scan.go:157] ["txn getData"] [nextStartKey=] [nextEndKey=00646f6e6779696e672f7e4d4438383033394537453944362f7e446174612f40234d4438383033394537453944365f313631353534353630305f4d44502e786d6c2e677a] [reverse=true] [txnStartTS=427716323047637140]
[2021/09/14 16:31:29.973 +08:00] [DEBUG] [scan.go:157] ["txn getData"] [nextStartKey=] [nextEndKey=00646f6e6779696e672f7e4d4438383033394537453944362f7e446174612f40234d4438383033394537453944365f313631353534353630305f4d44502e786d6c2e677a] [reverse=true] [txnStartTS=427716323047637140]
添加 debug 日志发现, loadRegion 的时候 GetRegion GetPrevRegion 获取的一直是同一个 region
[2021/09/14 16:31:29.995 +08:00] [DEBUG] [region_cache.go:967] [GetRegion][region-id=1384954]
[2021/09/14 16:31:29.997 +08:00] [DEBUG] [region_cache.go:958] [GetPrevRegion][region-id=1384954]
【问题复现步骤】
IterReverse 通过 Next 方法遍历,直到这个 key 是某个 region 的 StartKey 的时候, 出现死循环
这个问题是否在后续的版本中修复,应该更新到哪个版本?