I wonder if
1) these nested transactions are what we really want to happen when we call TCL apis like this.
Originally you'd just call the pl/sql directly from within your on db_transaction.
Since in PG in you have nested transactions you can't really do anything useful with the information if the content::revision::new call fails, in the outer transaction, maybe we need a way to not use a transaction in content::revisioN::new if is it called within a transaction.
Maybe Don is around and can comment on that idea :)