Search in sources :

Example 61 with Statistics

use of org.hibernate.stat.Statistics in project hibernate-orm by hibernate.

the class EhCacheTest method testEmptySecondLevelCacheEntry.

@Test
public void testEmptySecondLevelCacheEntry() throws Exception {
    sessionFactory().getCache().evictEntityRegion(Item.class.getName());
    Statistics stats = sessionFactory().getStatistics();
    stats.clear();
    SecondLevelCacheStatistics statistics = stats.getSecondLevelCacheStatistics(Item.class.getName());
    Map cacheEntries = statistics.getEntries();
    assertEquals(0, cacheEntries.size());
}
Also used : SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Statistics(org.hibernate.stat.Statistics) Map(java.util.Map) Test(org.junit.Test)

Example 62 with Statistics

use of org.hibernate.stat.Statistics in project hibernate-orm by hibernate.

the class ReadWriteTest method testAddNewOneToManyElementNoInitFlushInitLeaveCacheConsistent.

@Test
public void testAddNewOneToManyElementNoInitFlushInitLeaveCacheConsistent() throws Exception {
    Statistics stats = sessionFactory().getStatistics();
    stats.clear();
    SecondLevelCacheStatistics cStats = stats.getSecondLevelCacheStatistics(Item.class.getName() + ".items");
    ByRef<Long> itemId = new ByRef<>(null);
    saveItem(itemId);
    // create an element for item.bagOfItems
    Item itemElement = new Item();
    itemElement.setName("element");
    itemElement.setDescription("element item");
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        assertFalse(Hibernate.isInitialized(item.getBagOfItems()));
        item.addItemToBag(itemElement);
        assertFalse(Hibernate.isInitialized(item.getBagOfItems()));
        s.persist(itemElement);
        s.flush();
        Hibernate.initialize(item.getBagOfItems());
        markRollbackOnly(s);
    });
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        Hibernate.initialize(item.getBagOfItems());
        assertTrue(item.getBagOfItems().isEmpty());
        s.delete(item);
    });
}
Also used : VersionedItem(org.hibernate.test.cache.infinispan.functional.entities.VersionedItem) Item(org.hibernate.test.cache.infinispan.functional.entities.Item) OtherItem(org.hibernate.test.cache.infinispan.functional.entities.OtherItem) ByRef(org.infinispan.commons.util.ByRef) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Statistics(org.hibernate.stat.Statistics) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Test(org.junit.Test)

Example 63 with Statistics

use of org.hibernate.stat.Statistics in project hibernate-orm by hibernate.

the class ReadWriteTest method testAddNewOneToManyElementInitFlushLeaveCacheConsistent.

@Test
@TestForIssue(jiraKey = "HHH-9231")
public void testAddNewOneToManyElementInitFlushLeaveCacheConsistent() throws Exception {
    Statistics stats = sessionFactory().getStatistics();
    stats.clear();
    SecondLevelCacheStatistics cStats = stats.getSecondLevelCacheStatistics(Item.class.getName() + ".items");
    ByRef<Long> itemId = new ByRef<>(null);
    saveItem(itemId);
    // create an element for item.itsms
    Item itemElement = new Item();
    itemElement.setName("element");
    itemElement.setDescription("element item");
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        assertFalse(Hibernate.isInitialized(item.getItems()));
        item.addItem(itemElement);
        assertTrue(Hibernate.isInitialized(item.getItems()));
        s.persist(itemElement);
        s.flush();
        markRollbackOnly(s);
    });
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        Hibernate.initialize(item.getItems());
        assertTrue(item.getItems().isEmpty());
        s.delete(item);
    });
}
Also used : VersionedItem(org.hibernate.test.cache.infinispan.functional.entities.VersionedItem) Item(org.hibernate.test.cache.infinispan.functional.entities.Item) OtherItem(org.hibernate.test.cache.infinispan.functional.entities.OtherItem) ByRef(org.infinispan.commons.util.ByRef) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Statistics(org.hibernate.stat.Statistics) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Test(org.junit.Test) TestForIssue(org.hibernate.testing.TestForIssue)

Example 64 with Statistics

use of org.hibernate.stat.Statistics in project hibernate-orm by hibernate.

the class ReadWriteTest method testAddNewOneToManyElementNoInitFlushLeaveCacheConsistent.

@Test
@TestForIssue(jiraKey = "HHH-9231")
public void testAddNewOneToManyElementNoInitFlushLeaveCacheConsistent() throws Exception {
    Statistics stats = sessionFactory().getStatistics();
    stats.clear();
    SecondLevelCacheStatistics cStats = stats.getSecondLevelCacheStatistics(Item.class.getName() + ".items");
    ByRef<Long> itemId = new ByRef<>(null);
    saveItem(itemId);
    // create an element for item.bagOfItems
    Item itemElement = new Item();
    itemElement.setName("element");
    itemElement.setDescription("element item");
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        assertFalse(Hibernate.isInitialized(item.getItems()));
        item.addItemToBag(itemElement);
        assertFalse(Hibernate.isInitialized(item.getBagOfItems()));
        s.persist(itemElement);
        s.flush();
        markRollbackOnly(s);
    });
    withTxSession(s -> {
        Item item = s.get(Item.class, itemId.get());
        Hibernate.initialize(item.getItems());
        assertTrue(item.getItems().isEmpty());
        s.delete(item);
    });
}
Also used : VersionedItem(org.hibernate.test.cache.infinispan.functional.entities.VersionedItem) Item(org.hibernate.test.cache.infinispan.functional.entities.Item) OtherItem(org.hibernate.test.cache.infinispan.functional.entities.OtherItem) ByRef(org.infinispan.commons.util.ByRef) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Statistics(org.hibernate.stat.Statistics) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Test(org.junit.Test) TestForIssue(org.hibernate.testing.TestForIssue)

Example 65 with Statistics

use of org.hibernate.stat.Statistics in project hibernate-orm by hibernate.

the class ReadOnlyTest method testEmptySecondLevelCacheEntry.

@Test
public void testEmptySecondLevelCacheEntry() throws Exception {
    sessionFactory().getCache().evictCollectionRegion(Item.class.getName() + ".items");
    Statistics stats = sessionFactory().getStatistics();
    stats.clear();
    SecondLevelCacheStatistics statistics = stats.getSecondLevelCacheStatistics(Item.class.getName() + ".items");
    Map cacheEntries = statistics.getEntries();
    assertEquals(0, cacheEntries.size());
}
Also used : SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) SecondLevelCacheStatistics(org.hibernate.stat.SecondLevelCacheStatistics) Statistics(org.hibernate.stat.Statistics) Map(java.util.Map) Test(org.junit.Test)

Aggregations

Statistics (org.hibernate.stat.Statistics)97 Test (org.junit.Test)59 Session (org.hibernate.Session)27 SecondLevelCacheStatistics (org.hibernate.stat.SecondLevelCacheStatistics)26 EntityManager (javax.persistence.EntityManager)21 QueryStatistics (org.hibernate.stat.QueryStatistics)19 Item (org.hibernate.test.cache.infinispan.functional.entities.Item)14 Transaction (org.hibernate.Transaction)12 ArrayList (java.util.ArrayList)11 VersionedItem (org.hibernate.test.cache.infinispan.functional.entities.VersionedItem)11 List (java.util.List)10 OtherItem (org.hibernate.test.cache.infinispan.functional.entities.OtherItem)10 SessionFactory (org.hibernate.SessionFactory)9 CacheRegionStatistics (org.hibernate.stat.CacheRegionStatistics)9 ByRef (org.infinispan.commons.util.ByRef)8 TestForIssue (org.hibernate.testing.TestForIssue)6 Date (java.util.Date)5 UserTransaction (javax.transaction.UserTransaction)5 NaturalIdCacheStatistics (org.hibernate.stat.NaturalIdCacheStatistics)5 Test (org.testng.annotations.Test)5