Nice article. Very useful for independent transactions which hold unnecessary database connection in single request. But I guess we can not use this when we need whole request in same transaction to rollback when something goes wrong. Or do you have any solution on this as well?