Greg Stark wrote:
> And I don't see why you discard "visibility" as unimportant. All the
> transaction isolations are defined in terms of the results if the
> transactions. Those results include both the database state and the data
> returned by the queries. Otherwise "phantom read" is a meaningless concept.
Basically, if he wants to make a rigid argument that some scenario
violates the serializability promise, then it is necessary to prove:
(1) There is no serial schedule for the set of transactions that
achieves the same outcome. (This proof is probably hard to work out, as
many "there is no" proofs are.)
- or -
(2) A phantom read situation occurs.
His original argument uses terms like "window" where something is
"visible" (to whom?), which can probably be transformed into a proof for
(2), but is not convincing (to me) by itself.