Generalized snapshot isolation extends snapshot isolation as used in Oracle and other databases in a manner suitable for replicated databases. While (conventional) snapshot isolation requires that transactions observe the “latest ” snapshot of the database, gener-alized snapshot isolation allows the use of “older ” snapshots, fa-cilitating a replicated implementation. We show that many of the desirable properties of snapshot isolation remain. In particular, un-der certain assumptions on the transaction workload the execution is serializable. An implementation of generalized snapshot isolation can choose which past snapshot it uses. An interesting choice for a replicated database is prefix-consistent snapshot isolation, in which the snap-sho...