Java 类org.hibernate.stat.SecondLevelCacheStatistics 实例源码
项目:lams
文件:ConcurrentStatisticsImpl.java
/**
* Second level cache statistics per region
*
* @param regionName region name
*
* @return SecondLevelCacheStatistics
*/
public SecondLevelCacheStatistics getSecondLevelCacheStatistics(String regionName) {
ConcurrentSecondLevelCacheStatisticsImpl slcs
= (ConcurrentSecondLevelCacheStatisticsImpl) secondLevelCacheStatistics.get( regionName );
if ( slcs == null ) {
if ( sessionFactory == null ) {
return null;
}
Region region = sessionFactory.getSecondLevelCacheRegion( regionName );
if ( region == null ) {
return null;
}
slcs = new ConcurrentSecondLevelCacheStatisticsImpl( region );
ConcurrentSecondLevelCacheStatisticsImpl previous;
if ( ( previous = (ConcurrentSecondLevelCacheStatisticsImpl) secondLevelCacheStatistics.putIfAbsent(
regionName, slcs
) ) != null ) {
slcs = previous;
}
}
return slcs;
}
项目:hazelcast-hibernate5
文件:CacheHitMissNonStrictTest.java
@Test
public void testUpdateEventuallyInvalidatesObject() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
assertSizeEventually(9, dummyEntityCacheStats.getEntries());
}
项目:hazelcast-hibernate5
文件:CacheHitMissReadOnlyTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(4, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(1, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate5
文件:CacheHitMissReadWriteTest.java
@Test
public void testUpdateShouldNotInvalidateEntryInCache() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities, 10 entities are cached
getDummyEntities(sf, 10);
//updates cache entity
updateDummyEntityName(sf, 2, "updated");
assertEquals(10, dummyEntityCacheStats.getElementCountInMemory());
}
项目:ezyfox-db
文件:BaseDbTest.java
@Test
public void test() {
SessionFactory factory = SessionFactoryProvider
.getInstance().provide(Context.class);
Statistics statistics = factory.getStatistics();
SecondLevelCacheStatistics secondStat = factory.getStatistics().getSecondLevelCacheStatistics(GameUser.class.getName());
deleteAll();
logger.info("==========>>>deleteAll: second level cache hits: " + statistics.getSecondLevelCacheHitCount());
logger.info("==========>>>deleteAll: query execution hits: " + statistics.getQueryExecutionCount());
logger.info("==========>>>deleteAll: element count in mem: " + secondStat.getElementCountInMemory());
intsert5();
logger.info("==========>>>intsert5: second level cache hits: " + statistics.getSecondLevelCacheHitCount());
logger.info("==========>>>intsert5: query execution hits: " + statistics.getQueryExecutionCount());
logger.info("==========>>>intsert5: element count in mem: " + secondStat.getElementCountInMemory());
doSomeThing();
logger.info("==========>>>doSomeThing: second level cache hits: " + statistics.getSecondLevelCacheHitCount());
logger.info("==========>>>doSomeThing: query execution hits: " + statistics.getQueryExecutionCount());
logger.info("==========>>>doSomeThing: element count in mem: " + secondStat.getElementCountInMemory());
deleteAll();
logger.info("==========>>>deleteAll: second level cache hits: " + statistics.getSecondLevelCacheHitCount());
logger.info("==========>>>deleteAll: query execution hits: " + statistics.getQueryExecutionCount());
logger.info("==========>>>deleteAll: element count in mem: " + secondStat.getElementCountInMemory());
}
项目:hazelcast-hibernate
文件:CacheHitMissNonStrictTest.java
@Test
public void testUpdateEventuallyInvalidatesObject() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
final SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
assertSizeEventually(9, dummyEntityCacheStats.getEntries());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadOnlyTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(4, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(1, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadWriteTest.java
@Test
public void testUpdateShouldNotInvalidateEntryInCache() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities, 10 entities are cached
getDummyEntities(sf, 10);
//updates cache entity
updateDummyEntityName(sf, 2, "updated");
assertEquals(10, dummyEntityCacheStats.getElementCountInMemory());
}
项目:hazelcast-hibernate
文件:CacheHitMissNonStrictTest.java
@Test
public void testUpdateEventuallyInvalidatesObject() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
final SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
assertSizeEventually(9, dummyEntityCacheStats.getEntries());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadOnlyTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(4, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(1, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadWriteTest.java
@Test
public void testUpdateShouldNotInvalidateEntryInCache() {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities, 10 entities are cached
getDummyEntities(sf, 10);
//updates cache entity
updateDummyEntityName(sf, 2, "updated");
assertEquals(10, dummyEntityCacheStats.getElementCountInMemory());
}
项目:ignite
文件:HibernateL2CacheSelfTest.java
/**
* @param sesFactory Session factory.
* @param idToChildCnt Number of children per entity.
* @param expHit Expected cache hits.
* @param expMiss Expected cache misses.
*/
@SuppressWarnings("unchecked")
private void assertCollectionCache(SessionFactory sesFactory, Map<Integer, Integer> idToChildCnt, int expHit,
int expMiss) {
sesFactory.getStatistics().clear();
Session ses = sesFactory.openSession();
try {
for(Map.Entry<Integer, Integer> e : idToChildCnt.entrySet()) {
Entity entity = (Entity)ses.load(Entity.class, e.getKey());
assertEquals((int)e.getValue(), entity.getChildren().size());
}
}
finally {
ses.close();
}
SecondLevelCacheStatistics stats =
sesFactory.getStatistics().getSecondLevelCacheStatistics(CHILD_COLLECTION_REGION);
assertEquals(expHit, stats.getHitCount());
assertEquals(expMiss, stats.getMissCount());
}
项目:ignite
文件:HibernateL2CacheSelfTest.java
/**
* @param sesFactory Session factory.
* @param idToChildCnt Number of children per entity.
* @param expHit Expected cache hits.
* @param expMiss Expected cache misses.
*/
@SuppressWarnings("unchecked")
private void assertCollectionCache(SessionFactory sesFactory, Map<Integer, Integer> idToChildCnt, int expHit,
int expMiss) {
sesFactory.getStatistics().clear();
Session ses = sesFactory.openSession();
try {
for(Map.Entry<Integer, Integer> e : idToChildCnt.entrySet()) {
Entity entity = (Entity)ses.load(Entity.class, e.getKey());
assertEquals((int)e.getValue(), entity.getChildren().size());
}
}
finally {
ses.close();
}
SecondLevelCacheStatistics stats =
sesFactory.getStatistics().getSecondLevelCacheStatistics(CHILD_COLLECTION_REGION);
assertEquals(expHit, stats.getHitCount());
assertEquals(expMiss, stats.getMissCount());
}
项目:ignite
文件:HibernateL2CacheExample.java
/**
* Prints Hibernate L2 cache statistics to standard output.
*
* @param sesFactory Hibernate {@link SessionFactory}, for which to print
* statistics.
*/
private static void printStats(SessionFactory sesFactory) {
System.out.println("=== Hibernate L2 cache statistics ===");
for (String entityName : ENTITY_NAMES) {
System.out.println("\tEntity: " + entityName);
SecondLevelCacheStatistics stats =
sesFactory.getStatistics().getSecondLevelCacheStatistics(entityName);
System.out.println("\t\tPuts: " + stats.getPutCount());
System.out.println("\t\tHits: " + stats.getHitCount());
System.out.println("\t\tMisses: " + stats.getMissCount());
}
System.out.println("=====================================");
}
项目:hazelcast-hibernate5
文件:CacheHitMissNonStrictTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//entity 2 and its properties are invalidated
//miss updated entity, hit 4 properties(they are still the same)
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(2, dummyEntityCacheStats.getHitCount());
assertEquals(11, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate5
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireRegion() {
insertDummyEntities(10);
executeUpdateQuery(sf, "UPDATE DummyEntity set name = 'manually-updated' where id=2");
sf.getStatistics().clear();
getDummyEntities(sf, 10);
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
assertEquals(10, dummyEntityCacheStats.getMissCount());
assertEquals(0, dummyEntityCacheStats.getHitCount());
}
项目:hazelcast-hibernate5
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireCollectionRegion() {
insertDummyEntities(1, 10);
//properties reference in DummyEntity is evicted because of custom SQL query on Collection region
executeUpdateQuery(sf, "update DummyProperty ent set ent.key='manually-updated'");
sf.getStatistics().clear();
//property reference missed in cache.
getPropertiesOfEntity(sf, 0);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY + ".properties");
assertEquals(0, dummyPropertyCacheStats.getHitCount());
assertEquals(1, dummyPropertyCacheStats.getMissCount());
}
项目:hazelcast-hibernate5
文件:CacheHitMissReadWriteTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//hit 1 entity, hit 4 properties
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(3, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissNonStrictTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//entity 2 and its properties are invalidated
//miss updated entity, hit 4 properties(they are still the same)
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(2, dummyEntityCacheStats.getHitCount());
assertEquals(11, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireRegion() {
insertDummyEntities(10);
executeUpdateQuery(sf, "UPDATE DummyEntity set name = 'manually-updated' where id=2");
sf.getStatistics().clear();
getDummyEntities(sf, 10);
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
assertEquals(10, dummyEntityCacheStats.getMissCount());
assertEquals(0, dummyEntityCacheStats.getHitCount());
}
项目:hazelcast-hibernate
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireCollectionRegion() {
insertDummyEntities(1, 10);
//properties reference in DummyEntity is evicted because of custom SQL query on Collection region
executeUpdateQuery(sf, "update DummyProperty ent set ent.key='manually-updated'");
sf.getStatistics().clear();
//property reference missed in cache.
getPropertiesOfEntity(sf, 0);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY + ".properties");
assertEquals(0, dummyPropertyCacheStats.getHitCount());
assertEquals(1, dummyPropertyCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadWriteTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//hit 1 entity, hit 4 properties
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(3, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissNonStrictTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//invalidation is not synchronized, so we have to wait
//entity 2 and its properties are invalidated
//miss updated entity, hit 4 properties(they are still the same)
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(2, dummyEntityCacheStats.getHitCount());
assertEquals(11, dummyEntityCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireRegion() {
insertDummyEntities(10);
executeUpdateQuery(sf, "UPDATE DummyEntity set name = 'manually-updated' where id=2");
sf.getStatistics().clear();
getDummyEntities(sf, 10);
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
assertEquals(10, dummyEntityCacheStats.getMissCount());
assertEquals(0, dummyEntityCacheStats.getHitCount());
}
项目:hazelcast-hibernate
文件:HibernateStatisticsTestSupport.java
@Test
public void testUpdateQueryCausesInvalidationOfEntireCollectionRegion() {
insertDummyEntities(1, 10);
//properties reference in DummyEntity is evicted because of custom SQL query on Collection region
executeUpdateQuery(sf, "update DummyProperty ent set ent.key='manually-updated'");
sf.getStatistics().clear();
//property reference missed in cache.
getPropertiesOfEntity(sf, 0);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY + ".properties");
assertEquals(0, dummyPropertyCacheStats.getHitCount());
assertEquals(1, dummyPropertyCacheStats.getMissCount());
}
项目:hazelcast-hibernate
文件:CacheHitMissReadWriteTest.java
@Test
public void testGetUpdateRemoveGet()
throws Exception {
insertDummyEntities(10, 4);
//all 10 entities and 40 properties are cached
SecondLevelCacheStatistics dummyEntityCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_ENTITY);
SecondLevelCacheStatistics dummyPropertyCacheStats = sf.getStatistics().getSecondLevelCacheStatistics(CACHE_PROPERTY);
sf.getCache().evictEntityRegions();
sf.getCache().evictCollectionRegions();
//miss 10 entities
getDummyEntities(sf, 10);
//hit 1 entity and 4 properties
updateDummyEntityName(sf, 2, "updated");
//hit 1 entity, hit 4 properties
getPropertiesOfEntity(sf, 2);
//hit 1 entity and 4 properties
deleteDummyEntity(sf, 1);
assertEquals(12, dummyPropertyCacheStats.getHitCount());
assertEquals(0, dummyPropertyCacheStats.getMissCount());
assertEquals(3, dummyEntityCacheStats.getHitCount());
assertEquals(10, dummyEntityCacheStats.getMissCount());
}
项目:cacheonix-core
文件:BaseCacheProviderTestCase.java
public void testEmptySecondLevelCacheEntry() throws Exception {
getSessions().evictEntity( Item.class.getName() );
Statistics stats = getSessions().getStatistics();
stats.clear();
SecondLevelCacheStatistics statistics = stats.getSecondLevelCacheStatistics( Item.class.getName() );
Map cacheEntries = statistics.getEntries();
assertEquals( 0, cacheEntries.size() );
}
项目:hibernate-master-class
文件:AbstractTest.java
protected void printEntityCacheStats(String region, boolean printEntries) {
SecondLevelCacheStatistics stats = getCacheStats(region);
LOGGER.info(region + " Stats: \n\n\t" + stats + "\n");
if (printEntries) {
@SuppressWarnings("rawtypes")
Map cacheEntries = stats.getEntries();
LOGGER.info(Arrays.toString(cacheEntries.entrySet().toArray()));
}
}
项目:hibernate-master-class
文件:AbstractTest.java
protected SecondLevelCacheStatistics getCacheStats(String region) {
SecondLevelCacheStatistics stats = getSessionFactory().getStatistics().getSecondLevelCacheStatistics(region);
if (stats == null){
LOGGER.warn("No such cache: " + region);
}
return stats;
}
项目:gocd
文件:UserSqlMapDaoCachingTest.java
@Test
public void shouldCacheUserOnFind() {
User first = new User("first");
first.addNotificationFilter(new NotificationFilter("pipline", "stage1", StageEvent.Fails, true));
first.addNotificationFilter(new NotificationFilter("pipline", "stage2", StageEvent.Fails, true));
int originalUserCacheSize = sessionFactory.getStatistics().getSecondLevelCacheStatistics(User.class.getCanonicalName()).getEntries().size();
int originalNotificationsCacheSize = sessionFactory.getStatistics().getSecondLevelCacheStatistics(User.class.getCanonicalName() + ".notificationFilters").getEntries().size();
userDao.saveOrUpdate(first);
long userId = userDao.findUser("first").getId();
assertThat(sessionFactory.getStatistics().getSecondLevelCacheStatistics(User.class.getCanonicalName()).getEntries().size(), is(originalUserCacheSize + 1));
SecondLevelCacheStatistics notificationFilterCollectionCache = sessionFactory.getStatistics().getSecondLevelCacheStatistics(User.class.getCanonicalName() + ".notificationFilters");
assertThat(notificationFilterCollectionCache.getEntries().size(), is(originalNotificationsCacheSize + 1));
assertThat(notificationFilterCollectionCache.getEntries().get(userId), is(Matchers.notNullValue()));
}
项目:lemon
文件:StatisticsWrapper.java
public SecondLevelCacheStatistics getSecondLevelCacheStatistics(
String regionName) {
return null;
}
项目:infinispan-simple-tutorials
文件:InfinispanHibernateCacheLocal.java
private static SecondLevelCacheStatistics getCacheStatistics(String regionName) {
return emf.unwrap(SessionFactory.class).getStatistics()
.getSecondLevelCacheStatistics(regionName);
}
项目:cacheonix-core
文件:StatisticsService.java
/**
* @see StatisticsServiceMBean#getSecondLevelCacheStatistics(java.lang.String)
*/
public SecondLevelCacheStatistics getSecondLevelCacheStatistics(String regionName) {
return stats.getSecondLevelCacheStatistics(regionName);
}
项目:cacheonix-core
文件:BaseCacheProviderTestCase.java
public void testQueryCacheInvalidation() {
Session s = openSession();
Transaction t = s.beginTransaction();
Item i = new Item();
i.setName("widget");
i.setDescription("A really top-quality, full-featured widget.");
s.persist(i);
t.commit();
s.close();
SecondLevelCacheStatistics slcs = s.getSessionFactory().getStatistics()
.getSecondLevelCacheStatistics( Item.class.getName() );
assertEquals( slcs.getPutCount(), 1 );
assertEquals( slcs.getElementCountInMemory(), 1 );
assertEquals( slcs.getEntries().size(), 1 );
s = openSession();
t = s.beginTransaction();
i = (Item) s.get( Item.class, i.getId() );
assertEquals( slcs.getHitCount(), 1 );
assertEquals( slcs.getMissCount(), 0 );
i.setDescription("A bog standard item");
t.commit();
s.close();
assertEquals( slcs.getPutCount(), 2 );
Object entry = slcs.getEntries().get( i.getId() );
Map map;
if ( entry instanceof ReadWriteCache.Item ) {
map = new HashMap();
map = (Map) ( (ReadWriteCache.Item) entry ).getValue();
}
else {
map = (Map) entry;
}
assertTrue( map.get("description").equals("A bog standard item") );
assertTrue( map.get("name").equals("widget") );
// cleanup
s = openSession();
t = s.beginTransaction();
s.delete( i );
t.commit();
s.close();
}
项目:high-performance-java-persistence
文件:AbstractTest.java
protected void printCacheRegionStatistics(String region) {
SecondLevelCacheStatistics statistics = sessionFactory().getStatistics().getSecondLevelCacheStatistics(region);
LOGGER.debug("\nRegion: {},\nStatistics: {},\nEntries: {}", region, statistics, statistics.getEntries());
}
项目:high-performance-java-persistence
文件:AbstractTest.java
protected void printQueryCacheRegionStatistics() {
SecondLevelCacheStatistics statistics = sessionFactory()
.getStatistics()
.getSecondLevelCacheStatistics(StandardQueryCache.class.getName());
StringBuilder queryCache = new StringBuilder();
for ( Object queryCacheEntry: statistics.getEntries().entrySet()) {
if(queryCache.length() > 0) {
queryCache.append( ", " );
}
if(queryCacheEntry instanceof Map.Entry) {
Map.Entry queryCacheEntryMap = (Map.Entry) queryCacheEntry;
queryCache.append( "{" );
queryCache.append( queryCacheEntryMap.getKey() );
queryCache.append( "=" );
List values = (List) queryCacheEntryMap.getValue();
boolean first = true;
queryCache.append( "[" );
for ( Object value: values) {
if(first) {
first = false;
}
else {
queryCache.append( ", " );
}
queryCache.append(
Object[].class.isAssignableFrom( value.getClass() ) ?
Arrays.toString( (Object[]) value ) :
value
);
}
queryCache.append( "]" );
queryCache.append( "}" );
}
}
statistics.getEntries();
LOGGER.debug("\nRegion: {},\nStatistics: {},\nEntries: {}", StandardQueryCache.class.getName(), statistics, queryCache );
}
项目:HibernateStatistics
文件:DelegatingStatisticsService.java
public SecondLevelCacheStatistics getSecondLevelCacheStatistics(String arg0) {
return delegate.getSecondLevelCacheStatistics( arg0 );
}
项目:hibernate-master-class
文件:AbstractTest.java
protected void printQueryCacheStats(String region) {
SecondLevelCacheStatistics stats = getCacheStats(region);
LOGGER.info(region + " Stats: \n\n\t" + stats + "\n");
}