【 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;
不报错