在Galera群集中读取的已插入行(一个数据库连接,自动提交的查询)失败

时间:2018-09-05 10:18:46

标签: mysql galera

我使用的是Galera群集(mariadb 10.2、2个节点+ garb,master-master),并且我注意到在某些情况下(负载较大),在读取之前插入的读取行失败。它是在与一个群集节点的一个数据库连接期间,因此它不受复制延迟的影响。

这种情况很少见,但有时会在更大的负载和更多并发连接中写入同一数据库表时发生。

所有查询均以自动提交模式发送,因此无需显式事务。但是,如果插入是在显式事务中完成并在自动命令查询中获取的,则是相同的,我正在使用PHP脚本中的mysql PDO。

查询可以例如喜欢:

-- insert into table
INSERT INTO t ...;
-- fetch id of inserted row to variable
SELECT LAST_INSERT_ID();
-- fetch row by id
SELECT * FROM t WHERE id=$id;
-- -> no row found

请问任何想法,问题出在哪里,什么原因导致这种行为?

0 个答案:

没有答案