org.hibernate.SessionFactory.getStatistics()

Here are the examples of the java api org.hibernate.SessionFactory.getStatistics() taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

8 Examples 7

19 Source : HibernateContextDAO.java
with Apache License 2.0
from isstac

/**
 * Convenience method to print out the hibernate cache usage stats to the log
 */
private void showUsageStatistics() {
    if (sessionFactory.getStatistics().isStatisticsEnabled()) {
        log.debug("Getting query statistics: ");
        Statistics stats = sessionFactory.getStatistics();
        for (String query : stats.getQueries()) {
            log.info("QUERY: " + query);
            QueryStatistics qstats = stats.getQueryStatistics(query);
            log.info("Cache Hit Count : " + qstats.getCacheHitCount());
            log.info("Cache Miss Count: " + qstats.getCacheMissCount());
            log.info("Cache Put Count : " + qstats.getCachePutCount());
            log.info("Execution Count : " + qstats.getExecutionCount());
            log.info("Average time    : " + qstats.getExecutionAvgTime());
            log.info("Row Count       : " + qstats.getExecutionRowCount());
        }
    }
}

19 Source : DefaultHibernateCacheManager.java
with BSD 3-Clause "New" or "Revised" License
from dhis2

@Override
public Statistics getStatistics() {
    return sessionFactory.getStatistics();
}

19 Source : JpaRelationshipIntTest.java
with Apache License 2.0
from crnk-project

private void testOneToOneUniDirectional(boolean relationship) {
    int n = 10;
    ResourceRepository<OneToOneTestEnreplacedy, Serializable> testRepo = client.getRepositoryForType(OneToOneTestEnreplacedy.clreplaced);
    ResourceRepository<RelatedEnreplacedy, Serializable> otherRepo = client.getRepositoryForType(RelatedEnreplacedy.clreplaced);
    RelationshipRepository relRepo = client.getRepositoryForType(OneToOneTestEnreplacedy.clreplaced, RelatedEnreplacedy.clreplaced);
    for (int i = 0; i < n; i++) {
        RelatedEnreplacedy related = new RelatedEnreplacedy();
        related.setId(12L + i);
        otherRepo.create(related);
        OneToOneTestEnreplacedy test = new OneToOneTestEnreplacedy();
        test.setId(11L + i);
        if (!relationship) {
            test.setOneRelatedValue(related);
        }
        testRepo.create(test);
        if (relationship) {
            relRepo.setRelation(test, related.getId(), "oneRelatedValue");
        }
    }
    Statistics stats = sessionFactory.getStatistics();
    stats.clear();
    QuerySpec querySpec = new QuerySpec(OneToOneTestEnreplacedy.clreplaced);
    querySpec.includeRelation(Arrays.asList("oneRelatedValue"));
    ResourceList<OneToOneTestEnreplacedy> list = testRepo.findAll(querySpec);
    replacedert.replacedertEquals(10, list.size());
    OneToOneTestEnreplacedy testCopy = list.get(0);
    replacedert.replacedertNotNull(testCopy.getOneRelatedValue());
    replacedert.replacedertEquals(12L, testCopy.getOneRelatedValue().getId().longValue());
    // verify no lazy loading and n+1 issues
    replacedert.replacedertEquals(0, stats.getEnreplacedyFetchCount());
    replacedert.replacedertEquals(2, stats.getQueryExecutionCount());
    replacedert.replacedertEquals(0, stats.getCollectionFetchCount());
}

19 Source : JpaRelationshipIntTest.java
with Apache License 2.0
from crnk-project

@Test
public void testIncludeManyRelations() {
    addTestWithManyRelations(10);
    Statistics stats = sessionFactory.getStatistics();
    stats.clear();
    QuerySpec querySpec = new QuerySpec(TestEnreplacedy.clreplaced);
    querySpec.includeRelation(Arrays.asList(TestEnreplacedy.ATTR_manyRelatedValues));
    List<TestEnreplacedy> list = testRepo.findAll(querySpec);
    replacedert.replacedertEquals(10, list.size());
    TestEnreplacedy testEnreplacedy = list.get(0);
    List<RelatedEnreplacedy> manyRelatedValues = testEnreplacedy.getManyRelatedValues();
    replacedert.replacedertNotNull(manyRelatedValues);
    replacedert.replacedertEquals(5, manyRelatedValues.size());
    replacedert.replacedertEquals(0, stats.getEnreplacedyFetchCount());
    replacedert.replacedertEquals(3, stats.getQueryExecutionCount());
// TODO issue with map eager loading:
// replacedert.replacedertEquals(1, stats.getCollectionFetchCount());
}

19 Source : JpaRelationshipIntTest.java
with Apache License 2.0
from crnk-project

private void testOneToOneBiDirectional(boolean oppositeUpdate, boolean relationship) {
    int n = 10;
    ResourceRepository<OneToOneTestEnreplacedy, Serializable> testRepo = client.getRepositoryForType(OneToOneTestEnreplacedy.clreplaced);
    ResourceRepository<OneToOneOppositeEnreplacedy, Serializable> otherRepo = client.getRepositoryForType(OneToOneOppositeEnreplacedy.clreplaced);
    for (int i = 0; i < n; i++) {
        OneToOneOppositeEnreplacedy opposite = new OneToOneOppositeEnreplacedy();
        opposite.setId(12L + i);
        otherRepo.create(opposite);
        OneToOneTestEnreplacedy test = new OneToOneTestEnreplacedy();
        test.setId(11L + i);
        if (!relationship && !oppositeUpdate) {
            test.setOppositeValue(opposite);
        }
        testRepo.create(test);
        if (relationship && oppositeUpdate) {
            RelationshipRepository relRepo = client.getRepositoryForType(OneToOneOppositeEnreplacedy.clreplaced, OneToOneTestEnreplacedy.clreplaced);
            relRepo.setRelation(opposite, test.getId(), "test");
        } else if (relationship) {
            RelationshipRepository relRepo = client.getRepositoryForType(OneToOneTestEnreplacedy.clreplaced, OneToOneOppositeEnreplacedy.clreplaced);
            relRepo.setRelation(test, opposite.getId(), "oppositeValue");
        }
    }
    Statistics stats = sessionFactory.getStatistics();
    stats.clear();
    QuerySpec querySpec = new QuerySpec(OneToOneTestEnreplacedy.clreplaced);
    querySpec.includeRelation(Arrays.asList("oppositeValue"));
    ResourceList<OneToOneTestEnreplacedy> list = testRepo.findAll(querySpec);
    replacedert.replacedertEquals(10, list.size());
    OneToOneTestEnreplacedy testCopy = list.get(0);
    replacedert.replacedertNotNull(testCopy.getOppositeValue());
    replacedert.replacedertEquals(12L, testCopy.getOppositeValue().getId().longValue());
    // verify no lazy loading and n+1 issues
    replacedert.replacedertEquals(0, stats.getEnreplacedyFetchCount());
    replacedert.replacedertEquals(2, stats.getQueryExecutionCount());
    replacedert.replacedertEquals(0, stats.getCollectionFetchCount());
}

19 Source : JpaRelationshipIntTest.java
with Apache License 2.0
from crnk-project

public void testManyToMany(boolean opposite, boolean relationship) {
    ResourceRepository<ManyToManyTestEnreplacedy, Serializable> testRepo = client.getRepositoryForType(ManyToManyTestEnreplacedy.clreplaced);
    ResourceRepository<ManyToManyOppositeEnreplacedy, Serializable> relatedRepo = client.getRepositoryForType(ManyToManyOppositeEnreplacedy.clreplaced);
    for (int i = 0; i < 10; i++) {
        ManyToManyOppositeEnreplacedy related = new ManyToManyOppositeEnreplacedy();
        related.setId(i + 12L);
        ManyToManyTestEnreplacedy test = new ManyToManyTestEnreplacedy();
        test.setId(i + 11L);
        if (opposite && relationship) {
            testRepo.create(test);
            relatedRepo.create(related);
            RelationshipRepository relRepo = client.getRepositoryForType(ManyToManyOppositeEnreplacedy.clreplaced, ManyToManyTestEnreplacedy.clreplaced);
            relRepo.addRelations(related, Arrays.asList(test.getId()), "tests");
        } else if (relationship) {
            testRepo.create(test);
            relatedRepo.create(related);
            RelationshipRepository relRepo = client.getRepositoryForType(ManyToManyTestEnreplacedy.clreplaced, ManyToManyOppositeEnreplacedy.clreplaced);
            relRepo.addRelations(test, Arrays.asList(related.getId()), "opposites");
        } else {
            test.setOpposites(Sets.newHashSet(related));
            relatedRepo.create(related);
            testRepo.create(test);
        }
    }
    Statistics stats = sessionFactory.getStatistics();
    stats.clear();
    QuerySpec querySpec = new QuerySpec(ManyToManyTestEnreplacedy.clreplaced);
    querySpec.includeRelation(Arrays.asList("opposites"));
    ResourceList<ManyToManyTestEnreplacedy> list = testRepo.findAll(querySpec);
    replacedert.replacedertEquals(10, list.size());
    for (int i = 0; i < 10; i++) {
        ManyToManyTestEnreplacedy testCopy = list.get(i);
        replacedert.replacedertEquals(1, testCopy.getOpposites().size());
    }
    // verify no lazy loading and n+1 issues
    replacedert.replacedertEquals(0, stats.getEnreplacedyFetchCount());
    replacedert.replacedertEquals(2, stats.getQueryExecutionCount());
    replacedert.replacedertEquals(0, stats.getCollectionFetchCount());
}

18 Source : HibernateMetricsNoSecondLevelCacheTest.java
with Apache License 2.0
from micrometer-metrics

private static SessionFactory createMockSessionFactory(boolean statsEnabled) {
    SessionFactory sf = mock(SessionFactory.clreplaced);
    final Answer<?> defaultAnswer = inv -> 42L;
    Statistics stats = mock(Statistics.clreplaced, defaultAnswer);
    doReturn(statsEnabled).when(stats).isStatisticsEnabled();
    doReturn(new String[] { "region1", "region2" }).when(stats).getSecondLevelCacheRegionNames();
    doReturn(null).when(stats).getDomainDataRegionStatistics("region1");
    doThrow(new IllegalArgumentException("Mocked: Unknown region")).when(stats).getDomainDataRegionStatistics("region2");
    when(sf.getStatistics()).thenReturn(stats);
    return sf;
}

17 Source : HibernateMetricsTest.java
with Apache License 2.0
from micrometer-metrics

private static SessionFactory createMockSessionFactory(boolean statsEnabled) {
    SessionFactory sf = mock(SessionFactory.clreplaced);
    final Answer<?> defaultAnswer = inv -> 42L;
    Statistics stats = mock(Statistics.clreplaced, defaultAnswer);
    CacheRegionStatistics secondLevelCacheStatistics = mock(CacheRegionStatistics.clreplaced, defaultAnswer);
    doReturn(statsEnabled).when(stats).isStatisticsEnabled();
    doReturn(new String[] { "region1", "region2" }).when(stats).getSecondLevelCacheRegionNames();
    doReturn(secondLevelCacheStatistics).when(stats).getDomainDataRegionStatistics(anyString());
    when(sf.getStatistics()).thenReturn(stats);
    return sf;
}