Package java.sql

Examples of java.sql.Savepoint


        int[] count = new int[2];
        int[] countCommitted = new int[2];
        int[] countSave = new int[2];
        int len = getSize(2000, 10000);
        Random random = new Random(10);
        Savepoint sp = null;
        for (int i = 0; i < len; i++) {
            int tableId = random.nextInt(2);
            String table = "TEST" + tableId;
            int op = random.nextInt(6);
            switch (op) {
View Full Code Here


    private void testSavepoint() throws SQLException {
        Statement stat = conn.createStatement();
        stat.execute("CREATE TABLE TEST(ID INT PRIMARY KEY, NAME VARCHAR(255))");
        conn.setAutoCommit(false);
        stat.execute("INSERT INTO TEST VALUES(0, 'Hi')");
        Savepoint savepoint1 = conn.setSavepoint();
        int id1 = savepoint1.getSavepointId();
        assertThrows(ErrorCode.SAVEPOINT_IS_UNNAMED, savepoint1).
                getSavepointName();
        stat.execute("DELETE FROM TEST");
        conn.rollback(savepoint1);
        stat.execute("UPDATE TEST SET NAME='Hello'");
        Savepoint savepoint2a = conn.setSavepoint();
        Savepoint savepoint2 = conn.setSavepoint();
        conn.releaseSavepoint(savepoint2a);
        assertThrows(ErrorCode.SAVEPOINT_IS_INVALID_1, savepoint2a).
                getSavepointId();
        int id2 = savepoint2.getSavepointId();
        assertTrue(id1 != id2);
        stat.execute("UPDATE TEST SET NAME='Hallo' WHERE NAME='Hello'");
        Savepoint savepointTest = conn.setSavepoint("Joe's");
        stat.execute("DELETE FROM TEST");
        assertEquals(savepointTest.getSavepointName(), "Joe's");
        assertThrows(ErrorCode.SAVEPOINT_IS_NAMED, savepointTest).
                getSavepointId();
        conn.rollback(savepointTest);
        conn.commit();
        ResultSet rs = stat.executeQuery("SELECT NAME FROM TEST");
View Full Code Here

        Connection conn = getConnection("cancel");
        Statement stat = conn.createStatement();
        stat.execute("CREATE TABLE TEST(ID INT)");
        conn.setAutoCommit(false);
        stat.execute("INSERT INTO TEST VALUES(1)");
        Savepoint sp = conn.setSavepoint();
        stat.execute("INSERT INTO TEST VALUES(2)");
        stat.setQueryTimeout(1);
        conn.rollback(sp);
        conn.commit();
        conn.close();
View Full Code Here

        Connection conn = reconnect(null);
        conn.createStatement().execute("CREATE TABLE TEST(ID IDENTITY, DATA CLOB, DATA2 VARCHAR)");
        conn.setAutoCommit(false);
        Random random = new Random(0);
        int rows = 0;
        Savepoint sp = null;
        int len = getSize(100, 400);
        for (int i = 0; i < len; i++) {
            switch (random.nextInt(10)) {
            case 0:
                trace("insert");
View Full Code Here

        s1.execute("create table test(id int primary key, name varchar) as select 0, 'Hello'");
        c1.setAutoCommit(false);
        s1.executeUpdate("update test set name = 'World'");
        printRows("after update", s1, s2);
        Savepoint sp1 = c1.setSavepoint();
        s1.executeUpdate("delete from test");
        printRows("after delete", s1, s2);
        c1.rollback(sp1);
        printRows("after rollback delete", s1, s2);
        c1.rollback();
View Full Code Here

  /**
   * @see Connection#setSavepoint()
   */
  public Savepoint setSavepoint() throws SQLException {
    long end, start = System.currentTimeMillis();
    Savepoint savepoint = null;


    try {
      savepoint = real.setSavepoint();
      end = System.currentTimeMillis();
      if ( log.isInfoEnabled()) log.info(getId()+":savepoint("+savepoint.getSavepointName()+") succeed ("+(end-start)+" ms)");
    } catch ( SQLException e) {
      end = System.currentTimeMillis();
      if ( log.isErrorEnabled()) log.error(getId()+":savepoint("+"unnamed"+") failed state="+e.getSQLState()+",code="+e.getErrorCode()+" ("+(end-start)+" ms)",e);
      throw e;
    }
View Full Code Here

  /**
   * @see Connection#setSavepoint(java.lang.String)
   */
  public Savepoint setSavepoint(String name) throws SQLException {
    long end ,start = System.currentTimeMillis();
    Savepoint savepoint = null;


    try {
      savepoint = real.setSavepoint(name);
      end = System.currentTimeMillis();
View Full Code Here

      final DatabaseType databaseType, final Callable<T> callable) throws SQLException {

    boolean autoCommitAtStart = false;
    try {
      boolean hasSavePoint = false;
      Savepoint savePoint = null;
      if (saved || databaseType.isNestedSavePointsSupported()) {
        if (connection.isAutoCommitSupported()) {
          autoCommitAtStart = connection.getAutoCommit();
          if (autoCommitAtStart) {
            // disable auto-commit mode if supported and enabled at start
            connection.setAutoCommit(false);
            logger.debug("had to set auto-commit to false");
          }
        }
        savePoint = connection.setSavePoint(SAVE_POINT_PREFIX + savePointCounter.incrementAndGet());
        if (savePoint == null) {
          logger.debug("started savePoint transaction");
        } else {
          logger.debug("started savePoint transaction {}", savePoint.getSavepointName());
        }
        hasSavePoint = true;
      }
      try {
        T result = callable.call();
View Full Code Here

        String            sql;
        String            msg;
        int               i;
        PreparedStatement ps;
        ResultSet         rs;
        Savepoint         sp1;
        Savepoint         sp2;
        Savepoint         sp3;
        Savepoint         sp4;
        Savepoint         sp5;
        Savepoint         sp6;
        Savepoint         sp7;
        int               rowcount = 0;

        sql = "drop table t if exists";

        stmt.executeUpdate(sql);
View Full Code Here

     */
    public void checkpoint(Handle handle, String name)
    {
        final Connection conn = handle.getConnection();
        try {
            final Savepoint savepoint = conn.setSavepoint(name);
            localStuff.get(handle).getCheckpoints().put(name, savepoint);
        }
        catch (SQLException e) {
            throw new TransactionException(String.format("Unable to create checkpoint %s", name), e);
        }
View Full Code Here

TOP

Related Classes of java.sql.Savepoint

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.