code: @Override
      public synchronized void commit() throws DatabaseEngineRuntimeException {
          /*
           * Reconnect on this method does not make sense since a new connection will have nothing to commit.
           */
          try {
              conn.commit();
              conn.setAutoCommit(true);
          } catch (final SQLException ex) {
              throw new DatabaseEngineRuntimeException("Something went wrong while committing transaction", ex);
          }
      }
docs: Commits the current transaction. You should only call this method if you've previously called {@link AbstractDatabaseEngine#beginTransaction()}.
  
  @throws DatabaseEngineRuntimeException If something goes wrong while persisting data.