Package org.helidb.txn

Examples of org.helidb.txn.Transaction


    final int noOfAdditionalRecords = tc.getNoOfAdditionalRecords();
    System.out.println("Deleting " + noOfAdditionalRecords + " additional records in " + dbs.size() + " databases");
    long start = System.currentTimeMillis();
    for (Database<String, String> db : dbs)
    {
      Transaction txn = null;
      try
      {
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn = Transaction.startTransaction(false);
        }
        for (int i = noOfBaseRecords; i < noOfBaseRecords + noOfAdditionalRecords; i++)
        {
          db.delete(s_vrs_keys[i]);
        }
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn.commit();
          txn = null;
        }
      }
      finally
      {
        if (txn != null)
        {
          txn.rollback();
        }
      }
    }
    long time = System.currentTimeMillis() - start;
    double res = (float) time / (noOfAdditionalRecords * dbs.size());
 
View Full Code Here


    final int vrsValuesLen = s_vrs_values.length;
    int dbNo = 0;
    int i = 0;
    for (Database<String, String> db : dbs)
    {
      Transaction txn = null;
      try
      {
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn = Transaction.startTransaction(false);
        }
        for (i = 0; i < noOfRecords; i++)
        {
          db.update(s_vrs_keys[i], s_vrs_values[vrsValuesLen - i - 1]);
        }
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn.commit();
          txn = null;
        }
      }
      catch (RuntimeException e)
      {
        System.err.println("DB #" + dbNo);
        System.err.println("Entry " + i);
        throw e;
      }
      finally
      {
        if (txn != null)
        {
          txn.rollback();
        }
      }
      dbNo++;
    }
    long time = System.currentTimeMillis() - start;
View Full Code Here

    final int noOfRecords = tc.getNoOfBaseRecords();
    System.out.println("Deleting 1/3rd of " + noOfRecords + " (all) records in " + dbs.size() + " databases");
    long start = System.currentTimeMillis();
    for (Database<String, String> db : dbs)
    {
      Transaction txn = null;
      try
      {
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn = Transaction.startTransaction(false);
        }
        for (int i = 0; i < noOfRecords / 3; i++)
        {
          db.delete(s_vrs_keys[3 * i]);
        }
        if (db instanceof TransactionalDatabase<?, ?>)
        {
          txn.commit();
          txn = null;
        }
      }
      finally
      {
        if (txn != null)
        {
          txn.rollback();
        }
      }
    }
    long time = System.currentTimeMillis() - start;
    double res = (float) time / ((noOfRecords / 3) * dbs.size());
 
View Full Code Here

  public void testUpdateCommit()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.update(1, 100L);
        db.update(2, 200L);
        txn.rollback();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(20L, db.get(2).longValue());
        assertEquals(10L, db.get(1).longValue());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testUpdateRollback()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.update(1, 100L);
        db.update(2, 200L);
        txn.rollback();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(20L, db.get(2).longValue());
        assertEquals(10L, db.get(1).longValue());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testClearCommit()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.clear();
        txn.commit();

        txn = Transaction.startTransaction(true);
        assertEquals(0, db.size());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testClearRollback()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.clear();
        db.insert(1, 100L);
        txn.rollback();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(20L, db.get(2).longValue());
        assertEquals(10L, db.get(1).longValue());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testCompactCommit()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.delete(1);
        db.insert(3, 30L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.compact();
        txn.commit();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(30L, db.get(3).longValue());
        assertEquals(20L, db.get(2).longValue());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testCompactRollback()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.delete(1);
        db.insert(3, 30L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.compact();
        txn.rollback();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(30L, db.get(3).longValue());
        assertEquals(20L, db.get(2).longValue());
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

  public void testDeleteCommit()
  {
    Database<Integer, Long> db = createDatabaseWoTxn();
    try
    {
      Transaction txn = Transaction.startTransaction(false);
      try
      {
        db.insert(1, 10L);
        db.insert(2, 20L);
        db.insert(3, 30L);
        txn.commit();

        txn = Transaction.startTransaction(false);
        db.delete(2);
        txn.commit();

        txn = Transaction.startTransaction(true);
        assertEquals(2, db.size());
        assertEquals(30L, db.get(3).longValue());
        assertEquals(10L, db.get(1).longValue());
        assertNull(db.get(2));
      }
      finally
      {
        txn.rollback();
      }
    }
    finally
    {
      tearDownDatabase(db);
View Full Code Here

TOP

Related Classes of org.helidb.txn.Transaction

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.