@Override
 protected void finished(Description description) {
   if (!autoCommit && delegate != null) {
     try {
       if (!delegate.isClosed()) {
         delegate.rollback();
         delegate.reset();
       }
     } catch (SQLException se) {
       throw new RuntimeException(se);
     }
   }
 }
 @Override
 public void rollback(Savepoint savepoint) throws SQLException {
   delegate.rollback(savepoint);
 }
 @Override
 public void rollback() throws SQLException {
   delegate.rollback();
 }