http://www.postgresql.org/docs/9.2/static/transaction-iso.html
可重复读取模式提供了严格的保证,即每个事务都能看到数据库的完全稳定的视图。但是,此视图不一定总是与同一级别的并发事务的某些串行(一次一个)执行一致。例如,即使是该级别的只读事务,也可能会看到更新了控制记录以显示批次已完成,但是看不到逻辑上属于该批次的详细记录之一,因为它读取了控制记录的较早版本。 。如果不谨慎使用显式锁来阻止冲突的事务,则试图通过在此隔离级别运行的事务来强制执行业务规则的尝试将无法正常工作。
这不是幻像读取吗,在可重复读取模式下是不可能的?
该文档说,在可重复读取事务中的查询在事务开始时看到快照,那么查询怎么可能读取不一致的数据?