Subtransactions in ZODB 3

ZODB 3 provides limited support for subtransactions. Subtransactions are nested to one level. There are top-level transactions and subtransactions. When a transaction is committed, a flag is passed indicating whether it is a subtransaction or a top-level transaction. Consider the following exampler commit calls: