code: protected final void execute(ConnectionBlock connectionBlock) throws Exception {
          checkState(initialized);
  
          setupConnection();
          checkNotNull(connection);
          boolean committed = false;
          try {
              connectionBlock.use(connection);
              connection.commit();
              committed = true;
          } finally {
              if (!committed) {
                  connection.rollback();
                  cleanupConnection();
              }
          }
      }
docs: Executes the nested SQL statements in a single transaction. If any exception
  is thrown, the commit is rolled back. Otherwise, when {@code connectionBlock}
  completes successfully the entire transaction is committed.
  @param connectionBlock block containing sql statements to be executed in this transaction
  @throws Exception on any error (from either {@code connectionBlock}, or while
  executing a SQL statement