use of com.orientechnologies.orient.core.index.OIndexTxAwareOneValue in project orientdb by orientechnologies.
the class IndexTxAwareOneValueGetTest method testPutAfterRemove.
@Test
public void testPutAfterRemove() {
database.getMetadata().getIndexManager().reload();
database.begin();
final OIndex<?> index = database.getMetadata().getIndexManager().getIndex("idxTxAwareOneValueGetTest");
Assert.assertTrue(index instanceof OIndexTxAwareOneValue);
final int clusterId = database.getDefaultClusterId();
index.put(1, new ORecordId(clusterId, 1));
index.remove(1, new ORecordId(clusterId, 1));
index.put(1, new ORecordId(clusterId, 1));
Assert.assertNotNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetTest"));
Assert.assertNotNull(index.get(1));
database.commit();
Assert.assertNotNull(index.get(1));
}
use of com.orientechnologies.orient.core.index.OIndexTxAwareOneValue in project orientdb by orientechnologies.
the class IndexTxAwareOneValueGetTest method testRemoveOneWithinTransaction.
@Test
public void testRemoveOneWithinTransaction() {
database.getMetadata().getIndexManager().reload();
database.begin();
final OIndex<?> index = database.getMetadata().getIndexManager().getIndex("idxTxAwareOneValueGetTest");
Assert.assertTrue(index instanceof OIndexTxAwareOneValue);
final int clusterId = database.getDefaultClusterId();
index.put(1, new ORecordId(clusterId, 1));
index.remove(1);
Assert.assertNotNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetTest"));
Assert.assertNull(index.get(1));
database.commit();
Assert.assertNull(index.get(1));
}
use of com.orientechnologies.orient.core.index.OIndexTxAwareOneValue in project orientdb by orientechnologies.
the class IndexTxAwareOneValueGetValuesTest method testRemove.
@Test
public void testRemove() {
database.getMetadata().getIndexManager().reload();
database.begin();
final OIndex<?> index = database.getMetadata().getIndexManager().getIndex("idxTxAwareOneValueGetValuesTest");
Assert.assertTrue(index instanceof OIndexTxAwareOneValue);
final int clusterId = database.getDefaultClusterId();
index.put(1, new ORecordId(clusterId, 1));
index.put(2, new ORecordId(clusterId, 2));
database.commit();
Assert.assertNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
OIndexCursor cursor = index.iterateEntries(Arrays.asList(1, 2), true);
Set<OIdentifiable> resultOne = new HashSet<OIdentifiable>();
cursorToSet(cursor, resultOne);
Assert.assertEquals(resultOne.size(), 2);
database.begin();
index.remove(1);
Assert.assertNotNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
cursor = index.iterateEntries(Arrays.asList(1, 2), true);
Set<OIdentifiable> resultTwo = new HashSet<OIdentifiable>();
cursorToSet(cursor, resultTwo);
Assert.assertEquals(resultTwo.size(), 1);
database.rollback();
Assert.assertNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
Set<OIdentifiable> resultThree = new HashSet<OIdentifiable>();
cursor = index.iterateEntries(Arrays.asList(1, 2), true);
cursorToSet(cursor, resultThree);
Assert.assertEquals(resultThree.size(), 2);
}
use of com.orientechnologies.orient.core.index.OIndexTxAwareOneValue in project orientdb by orientechnologies.
the class IndexTxAwareOneValueGetValuesTest method testPutAfterRemove.
@Test
public void testPutAfterRemove() {
database.getMetadata().getIndexManager().reload();
database.begin();
final OIndex<?> index = database.getMetadata().getIndexManager().getIndex("idxTxAwareOneValueGetValuesTest");
Assert.assertTrue(index instanceof OIndexTxAwareOneValue);
final int clusterId = database.getDefaultClusterId();
index.put(1, new ORecordId(clusterId, 1));
index.put(2, new ORecordId(clusterId, 2));
index.remove(1, new ORecordId(clusterId, 1));
index.put(1, new ORecordId(clusterId, 1));
Assert.assertNotNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
Set<OIdentifiable> result = new HashSet<OIdentifiable>();
OIndexCursor cursor = index.iterateEntries(Arrays.asList(1, 2), true);
cursorToSet(cursor, result);
Assert.assertEquals(result.size(), 2);
database.commit();
cursor = index.iterateEntries(Arrays.asList(1, 2), true);
cursorToSet(cursor, result);
Assert.assertEquals(result.size(), 2);
}
use of com.orientechnologies.orient.core.index.OIndexTxAwareOneValue in project orientdb by orientechnologies.
the class IndexTxAwareOneValueGetValuesTest method testClear.
@Test
public void testClear() {
database.getMetadata().getIndexManager().reload();
database.begin();
final OIndex<?> index = database.getMetadata().getIndexManager().getIndex("idxTxAwareOneValueGetValuesTest");
Assert.assertTrue(index instanceof OIndexTxAwareOneValue);
final int clusterId = database.getDefaultClusterId();
index.put(1, new ORecordId(clusterId, 1));
index.put(2, new ORecordId(clusterId, 2));
database.commit();
Assert.assertNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
Set<OIdentifiable> resultOne = new HashSet<OIdentifiable>();
OIndexCursor cursor = index.iterateEntries(Arrays.asList(1, 2), true);
cursorToSet(cursor, resultOne);
Assert.assertEquals(resultOne.size(), 2);
database.begin();
index.clear();
Assert.assertNotNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
cursor = index.iterateEntries(Arrays.asList(1, 2), true);
Set<OIdentifiable> resultTwo = new HashSet<OIdentifiable>();
cursorToSet(cursor, resultTwo);
Assert.assertEquals(resultTwo.size(), 0);
database.rollback();
Assert.assertNull(database.getTransaction().getIndexChanges("idxTxAwareOneValueGetValuesTest"));
Set<OIdentifiable> resultThree = new HashSet<OIdentifiable>();
cursor = index.iterateEntries(Arrays.asList(1, 2), true);
cursorToSet(cursor, resultThree);
Assert.assertEquals(resultThree.size(), 2);
}
Aggregations