业务测试过程中如何验证事务的一致性?
先简单介绍下,我这边的业务逻辑吧。
业务表A、B、C;修改A表的状态、B、C表新增一条数据是做为一个事务。
测试操作:
简言之,锁表。锁事务中的任意一个表,进行正常的能走进这个事务的操作,如果都回滚了,说明这个事务是生效的。否则这3张表的操作是不在同一个事务中。
锁表语句:
lock table user read; -- 锁表
show OPEN TABLES where In_use > 0; -- 查询锁表是否有效
show processlist; -- 取 Command 值为Query的id ,作为kill的id
kill 12364; -- 解锁