TiFlash显式事务报错,Internal : Can't find a proper physical plan for this query

【 TiDB 使用环境】测试
【 TiDB 版本】5.7.25-TiDB-v6.5.0
【复现路径】

CREATE TABLE test_202304141 (id INT NOT NULL PRIMARY KEY);
CREATE TABLE test_202304142 (id INT NOT NULL PRIMARY KEY);

ALTER TABLE test_202304141 SET TIFLASH REPLICA 1;

SELECT * FROM INFORMATION_SCHEMA.tiflash_replica 
WHERE TABLE_NAME = 'test_202304141';

INSERT INTO test_202304141 VALUES (1);

BEGIN; 
INSERT INTO test_202304142 
SELECT /*+ read_from_storage(tiflash[t]) */ * FROM test_202304141 t;      
COMMIT;

【遇到的问题:问题现象及影响】
对于使用了TiFlash的表进行事务操作时,报错。如果删掉副本或者去掉事务,就可以正常使用。但是目前业务需要添加事务保持一致性。

当使用显式事务操作时,
BEGIN; 
INSERT INTO test_202304142 
SELECT /*+ read_from_storage(tiflash[t]) */ * FROM test_202304141 t;

报错:Internal : Can’t find a proper physical plan for this query

当不使用显式事务操作时,
INSERT INTO test_202304142 
SELECT /*+ read_from_storage(tiflash[t]) */ * FROM test_202304141 t;

不报错

貌似是踩坑了: Can't find a proper physical plan for this query when hint using primary index and tiflash replica exists · Issue #31202 · pingcap/tidb (github.com)

1 个赞

:joy:这是5.x修复了,6.5又出现了么?

有可能,这个就是6.5出现的 bench_tpcc set tiflash replica: execute run failed, err Error 1815: Internal : Can’t find a proper physical plan for this query · Issue #40916 · pingcap/tidb (github.com)

:joy: :joy: :joy:我扒拉扒拉看看,是不是一样的问题

看完了现有的18个相关issue,我这个应该是个新坑,我提一下

1 个赞

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。