cf69c5b4c3
This patch addresses the issue by removing the extra nesting (which is effectively redundant). The longer story about this patch is the following: Race conditions may cause DBDuplicateEntry exceptions that require a transaction to be rollbacked back, and yet make the whole operation succeed. A classic example is what has been solved in commit fbc6b99. If the rollback is done in a nested transaction, the above mentioned exception is raised. To address the problem, we could use savepoints by means of sqlalchemy's begin_nested(); Even though this approach is preferable, it causes quite a bit of changes in the unit tests (because of sqlite); it may also require that certain DBMS, or certain DB backend configurations, support savepoints. In the end, the simpler approach was chosen. Closes-bug: #1354072 Change-Id: Ic9393319e55f71d681124bd3052e939724ebab6b