Is there anyone can tell that The "snapshot" in myoodb is based on Copy-On-Write OR Mirror-Data-Set?
let me answer your question like this instead of comparing it to COW or Mirror-Data-Set.
1) every database object method that has a "Write" annotation persists immediately and all clients will see the
change. i call this an "implicit transactions", in other words, an internal transaction is created under the hood.
2) "Write" methods that are called within a transaction scope [ tx = db.createTransaction(); tx.begin() ] are
what i call an explicit transaction and the object in question is "snapshot-ed". Snaphots can either be
committed [ tx.commit() ] or rolled back [ tx.rollback() ].
it should be noted that subsequent [ tx.begin() ] will continue the snapshot-ing process. all will see these
changes ( dirty reads ). myoodb can also be built to have clients access "blocked" until the pending changes
have been committed; or with a few tweaks, it can be configured to have clients "not-block" and access only
the committed changes and not the pending changes