Package org.hibernate.stat

Examples of org.hibernate.stat.EntityStatistics


    s.close();
   
    s = openSession();
    t = s.beginTransaction();
   
    EntityStatistics addressStats = getSessions().getStatistics().getEntityStatistics( Address.class.getName() );
    EntityStatistics mailingAddressStats = getSessions().getStatistics().getEntityStatistics("MailingAddress");

    p = (Person) s.createQuery("from Person p join fetch p.address left join fetch p.mailingAddress").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();

    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 0 );
   
    p = (Person) s.createQuery("from Person p join fetch p.address").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 1 );

    p = (Person) s.createQuery("from Person").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 1 );
    assertEquals( mailingAddressStats.getFetchCount(), 2 );

    p = (Person) s.createQuery("from Entity").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 2 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );

    //note that in here join fetch is used for the nullable
    //one-to-one, due to a very special case of default
    p = (Person) s.get(Person.class, "Gavin");
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 2 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );

    p = (Person) s.get(Entity.class, "Gavin");
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 2 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );
   
    t.commit();
    s.close();
   
    s = openSession();
View Full Code Here


    s.close();

    s = openSession();
    s.beginTransaction();

    EntityStatistics addressStats = getSessions().getStatistics().getEntityStatistics( "Address" );

    person = ( Map ) s.createQuery( "from Person p join fetch p.address" ).uniqueResult();
    assertNotNull( "could not locate person", person );
    assertNotNull( "could not locate persons address", person.get( "address" ) );
    s.clear();

    Object[] tuple = ( Object[] ) s.createQuery( "select p.name, p from Person p join fetch p.address" ).uniqueResult();
    assertEquals( tuple.length, 2 );
    person = ( Map ) tuple[1];
    assertNotNull( "could not locate person", person );
    assertNotNull( "could not locate persons address", person.get( "address" ) );

    s.delete( "Person", person );

    s.getTransaction().commit();
    s.close();

    assertEquals( addressStats.getFetchCount(), 0 );
  }
View Full Code Here

    s.save(i);
    t.commit();
    s.close();
   
    QueryStatistics qs = s.getSessionFactory().getStatistics().getQueryStatistics( queryString );
    EntityStatistics es = s.getSessionFactory().getStatistics().getEntityStatistics( Item.class.getName() );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    List result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 0 );
       
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 1 );
    assertEquals( s.getSessionFactory().getStatistics().getEntityFetchCount(), 0 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    assertTrue( Hibernate.isInitialized( result.get(0) ) );
    i = (Item) result.get(0);
    i.setName("Widget");
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 2 );
    assertEquals( qs.getCacheMissCount(), 2 );
    assertEquals( s.getSessionFactory().getStatistics().getEntityFetchCount(), 0 );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    if ( dialectIsCaseSensitive("i.name='widget' should not match on case sensitive database.") ) {
      assertEquals( result.size(), 0 );
    }
    i = (Item) s.get( Item.class, new Long(i.getId()) );
    assertEquals( i.getName(), "Widget" );
   
    s.delete(i);
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 2 );
    assertEquals( qs.getCacheMissCount(), 3 );
    assertEquals( qs.getCachePutCount(), 3 );
    assertEquals( qs.getExecutionCount(), 3 );
    assertEquals( es.getFetchCount(), 0 ); //check that it was being cached
   
  }
View Full Code Here

    s.save(i);
    t.commit();
    s.close();

        QueryStatistics qs = s.getSessionFactory().getStatistics().getQueryStatistics( queryString );
    EntityStatistics es = s.getSessionFactory().getStatistics().getEntityStatistics( Item.class.getName() );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    List result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 0 );

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 1 );

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
    assertEquals( result.size(), 1 );
    Map m = (Map) result.get(0);
    assertEquals(1, m.size());
    t.commit();
    s.close();

    assertEquals( "hit count should not go up since we are adding a resulttransformer", qs.getCacheHitCount(), 1 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
    assertEquals( result.size(), 1 );
    m = (Map) result.get(0);
    assertEquals(1, m.size());
    t.commit();
    s.close();
   
    assertEquals( "hit count should go up since we are using the same resulttransformer", qs.getCacheHitCount(), 2 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    assertTrue( Hibernate.isInitialized( result.get(0) ) );
    i = (Item) s.get( Item.class, new Long(i.getId()) );
        i.setName("widget");
    i.setDescription("A middle-quality widget.");
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 3 );
    assertEquals( qs.getCacheMissCount(), 3 );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    i = (Item) s.get( Item.class, new Long(i.getId()) );
    assertEquals( (String) result.get(0), "A middle-quality widget." );
   
    s.delete(i);
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 3 );
    assertEquals( qs.getCacheMissCount(), 4 );
    assertEquals( qs.getCachePutCount(), 4 );
    assertEquals( qs.getExecutionCount(), 4 );
    assertEquals( es.getFetchCount(), 0 ); //check that it was being cached

  }
View Full Code Here

    s.save(i);
    t.commit();
    s.close();
   
    QueryStatistics qs = s.getSessionFactory().getStatistics().getQueryStatistics( queryString );
    EntityStatistics es = s.getSessionFactory().getStatistics().getEntityStatistics( Item.class.getName() );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    List result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 0 );
       
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 1 );
    assertEquals( s.getSessionFactory().getStatistics().getEntityFetchCount(), 0 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    assertTrue( Hibernate.isInitialized( result.get(0) ) );
    i = (Item) result.get(0);
    i.setName("Widget");
    t.commit();
    s.close();
   
    assertEquals( qs.getCacheHitCount(), 2 );
    assertEquals( qs.getCacheMissCount(), 2 );
    assertEquals( s.getSessionFactory().getStatistics().getEntityFetchCount(), 0 );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    if ( dialectIsCaseSensitive("i.name='widget' should not match on case sensitive database.") ) {
      assertEquals( result.size(), 0 );
    }
    i = (Item) s.get( Item.class, new Long(i.getId()) );
    assertEquals( i.getName(), "Widget" );
   
    s.delete(i);
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 2 );
    assertEquals( qs.getCacheMissCount(), 3 );
    assertEquals( qs.getCachePutCount(), 3 );
    assertEquals( qs.getExecutionCount(), 3 );
    assertEquals( es.getFetchCount(), 0 ); //check that it was being cached
   
  }
View Full Code Here

    s.save(i);
    t.commit();
    s.close();

        QueryStatistics qs = s.getSessionFactory().getStatistics().getQueryStatistics( queryString );
    EntityStatistics es = s.getSessionFactory().getStatistics().getEntityStatistics( Item.class.getName() );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    List result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 0 );

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 1 );

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
    assertEquals( result.size(), 1 );
    Map m = (Map) result.get(0);
    assertEquals(1, m.size());
    t.commit();
    s.close();

    assertEquals( "hit count should not go up since we are adding a resulttransformer", qs.getCacheHitCount(), 1 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list();
    assertEquals( result.size(), 1 );
    m = (Map) result.get(0);
    assertEquals(1, m.size());
    t.commit();
    s.close();
   
    assertEquals( "hit count should go up since we are using the same resulttransformer", qs.getCacheHitCount(), 2 );
   
    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    assertTrue( Hibernate.isInitialized( result.get(0) ) );
    i = (Item) s.get( Item.class, new Long(i.getId()) );
        i.setName("widget");
    i.setDescription("A middle-quality widget.");
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 3 );
    assertEquals( qs.getCacheMissCount(), 3 );

    Thread.sleep(200);

    s = openSession();
    t = s.beginTransaction();
    result = s.createQuery( queryString ).setCacheable(true).list();
    assertEquals( result.size(), 1 );
    i = (Item) s.get( Item.class, new Long(i.getId()) );
    assertEquals( (String) result.get(0), "A middle-quality widget." );
   
    s.delete(i);
    t.commit();
    s.close();

    assertEquals( qs.getCacheHitCount(), 3 );
    assertEquals( qs.getCacheMissCount(), 4 );
    assertEquals( qs.getCachePutCount(), 4 );
    assertEquals( qs.getExecutionCount(), 4 );
    assertEquals( es.getFetchCount(), 0 ); //check that it was being cached

  }
View Full Code Here

      logger.info( "Entites statistics :" );
      logger.info( "" );
      String[] entities = stats.getEntityNames();
      for (String entity : entities) {
        EntityStatistics stat = stats.getEntityStatistics( entity );
        logger.info( "Entity name:" + stat.getCategoryName() );
        logger.info( "Entity delete count:" + stat.getDeleteCount() );
        logger.info( "Entity fetch count:" + stat.getFetchCount() );
        logger.info( "Entity insert count:" + stat.getInsertCount() );
        logger.info( "Entity load count:" + stat.getLoadCount() );
        logger.info( "Entity update count:" + stat.getUpdateCount() );
        logger.info( "" );
      }

      logger.info( "Queries statistics :\n" );
      logger.info( "Queries execution count :" + stats.getQueryExecutionCount() );
      logger.info( "Queries max time :" + stats.getQueryExecutionMaxTime() );
      logger.info( "Queries max time sql:" + stats.getQueryExecutionMaxTimeQueryString() );
      logger.info( "" );
      String[] queries = stats.getQueries();
      for (String query : queries) {
        QueryStatistics stat = stats.getQueryStatistics( query );
        logger.info( "Query name:" + stat.getCategoryName() );
        logger.info( "Query cache hit count:" + stat.getCacheHitCount() );
        logger.info( "Query cache miss count:" + stat.getCacheMissCount() );
        logger.info( "Query cache put count:" + stat.getCachePutCount() );
        logger.info( "Query exec count:" + stat.getExecutionCount() );
        logger.info( "Query avg time:" + stat.getExecutionAvgTime() );
        logger.info( "Query max time:" + stat.getExecutionMaxTime() );
        logger.info( "Query min time:" + stat.getExecutionMinTime() );
        logger.info( "Query row count:" + stat.getExecutionRowCount() );
        logger.info( "" );
      }
      stats.clear();
    }
  }
View Full Code Here

      logger.info( "Entites statistics :" );
      logger.info( "" );
      String[] entities = stats.getEntityNames();
      for (String entity : entities) {
        EntityStatistics stat = stats.getEntityStatistics( entity );
        logger.info( "Entity name:" + stat.getCategoryName() );
        logger.info( "Entity delete count:" + stat.getDeleteCount() );
        logger.info( "Entity fetch count:" + stat.getFetchCount() );
        logger.info( "Entity insert count:" + stat.getInsertCount() );
        logger.info( "Entity load count:" + stat.getLoadCount() );
        logger.info( "Entity update count:" + stat.getUpdateCount() );
        logger.info( "" );
      }

      logger.info( "Queries statistics :\n" );
      logger.info( "Queries execution count :" + stats.getQueryExecutionCount() );
      logger.info( "Queries max time :" + stats.getQueryExecutionMaxTime() );
      logger.info( "Queries max time sql:" + stats.getQueryExecutionMaxTimeQueryString() );
      logger.info( "" );
      String[] queries = stats.getQueries();
      for (String query : queries) {
        QueryStatistics stat = stats.getQueryStatistics( query );
        logger.info( "Query name:" + stat.getCategoryName() );
        logger.info( "Query cache hit count:" + stat.getCacheHitCount() );
        logger.info( "Query cache miss count:" + stat.getCacheMissCount() );
        logger.info( "Query cache put count:" + stat.getCachePutCount() );
        logger.info( "Query exec count:" + stat.getExecutionCount() );
        logger.info( "Query avg time:" + stat.getExecutionAvgTime() );
        logger.info( "Query max time:" + stat.getExecutionMaxTime() );
        logger.info( "Query min time:" + stat.getExecutionMinTime() );
        logger.info( "Query row count:" + stat.getExecutionRowCount() );
        logger.info( "" );
      }
      stats.clear();
    }
  }
View Full Code Here

      logger.info( "Entites statistics :" );
      logger.info( "" );
      String[] entities = stats.getEntityNames();
      for (String entity : entities) {
        EntityStatistics stat = stats.getEntityStatistics( entity );
        logger.info( "Entity name:" + stat.getCategoryName() );
        logger.info( "Entity delete count:" + stat.getDeleteCount() );
        logger.info( "Entity fetch count:" + stat.getFetchCount() );
        logger.info( "Entity insert count:" + stat.getInsertCount() );
        logger.info( "Entity load count:" + stat.getLoadCount() );
        logger.info( "Entity update count:" + stat.getUpdateCount() );
        logger.info( "" );
      }

      logger.info( "Queries statistics :\n" );
      logger.info( "Queries execution count :" + stats.getQueryExecutionCount() );
      logger.info( "Queries max time :" + stats.getQueryExecutionMaxTime() );
      logger.info( "Queries max time sql:" + stats.getQueryExecutionMaxTimeQueryString() );
      logger.info( "" );
      String[] queries = stats.getQueries();
      for (String query : queries) {
        QueryStatistics stat = stats.getQueryStatistics( query );
        logger.info( "Query name:" + stat.getCategoryName() );
        logger.info( "Query cache hit count:" + stat.getCacheHitCount() );
        logger.info( "Query cache miss count:" + stat.getCacheMissCount() );
        logger.info( "Query cache put count:" + stat.getCachePutCount() );
        logger.info( "Query exec count:" + stat.getExecutionCount() );
        logger.info( "Query avg time:" + stat.getExecutionAvgTime() );
        logger.info( "Query max time:" + stat.getExecutionMaxTime() );
        logger.info( "Query min time:" + stat.getExecutionMinTime() );
        logger.info( "Query row count:" + stat.getExecutionRowCount() );
        logger.info( "" );
      }
      stats.clear();
    }
  }
View Full Code Here

    s.close();
   
    s = openSession();
    t = s.beginTransaction();
   
    EntityStatistics addressStats = getSessions().getStatistics().getEntityStatistics( Address.class.getName() );
    EntityStatistics mailingAddressStats = getSessions().getStatistics().getEntityStatistics("MailingAddress");

    p = (Person) s.createQuery("from Person p join fetch p.address left join fetch p.mailingAddress").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();

    p = (Person) s.createQuery("select p from Person p join fetch p.address left join fetch p.mailingAddress").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();

    Object[] stuff = (Object[]) s.createQuery("select p.name, p from Person p join fetch p.address left join fetch p.mailingAddress").uniqueResult();
    assertEquals(stuff.length, 2);
    p = (Person) stuff[1];
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();

    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 0 );
   
    p = (Person) s.createQuery("from Person p join fetch p.address").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 1 );

    p = (Person) s.createQuery("from Person").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 2 );

    p = (Person) s.createQuery("from Entity").uniqueResult();
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );

    //note that in here join fetch is used for the nullable
    //one-to-one, due to a very special case of default
    p = (Person) s.get(Person.class, "Gavin");
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );

    p = (Person) s.get(Entity.class, "Gavin");
    assertNotNull(p.address); assertNull(p.mailingAddress);
    s.clear();
   
    assertEquals( addressStats.getFetchCount(), 0 );
    assertEquals( mailingAddressStats.getFetchCount(), 3 );
   
    t.commit();
    s.close();
   
    s = openSession();
View Full Code Here

TOP

Related Classes of org.hibernate.stat.EntityStatistics

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.