I've implemented transaction support with atomic commits and rollbacks for simple in-memory database I am using in objWiki.