Alvaro Herrera wrote:
> I think we need a safety net so that the new serializable isolation
> code doesn't get upset if we change the base snapshot from under
> it, but I haven't looked at that yet.
Replacing the snapshot for a serializable transaction after it has
acquired its initial snapshot would quietly allow non-serializable
behavior, I would think. I don't think that setting a snapshot for a
SERIALIZABLE READ ONLY DEFERRABLE transaction makes any sense, since
the point of that is that it waits for a snapshot which meets certain
criteria to be available; setting a snapshot in that mode should
probably just be disallowed. Otherwise, if you set the snapshot
before the transaction acquires one through normal means, I can't
think of any problems -- just make sure you set FirstSnapshotSet.
-Kevin