tree 2fa5a18dcf10714ac2901408454260691dd764e7
parent 2a1103869f7808caf533d3841970a460ce6a1be8
author David Ostrovsky <david@ostrovsky.org> 1402754453 +0200
committer David Pursehouse <david.pursehouse@sonymobile.com> 1404117213 +0900

Add transaction support for Jdbc dialects

Transaction support is a no-op for Jdbc dialects.
In some rare cases it's however indispensable to have transaction
support, as in:

  beginTransaction();
  try {
    insertPatchSetAncestors();
    insertPatchSets();
    updateChange();
    commit();
  } catch (OrmException e) {
    rollback();
  }

I assume that I65e111bed was trying to achieve just that.  Make it work
also for Jdbc dialects and not only for NoSQL dialects.

Conflicts:
        src/main/java/com/google/gwtorm/jdbc/JdbcSchema.java
        src/test/java/com/google/gwtorm/schema/sql/DialectMaxDBTest.java

(cherry picked from commit 1324d618941127d1b76cb22c96cb75ec73ab8fa7)

Bug: issue 2034
Bug: issue 2246
Bug: issue 2383
Bug: issue 2702
Change-Id: I29ab37e1cbc78468cb3f8f6abfd1bf54359e6090
