2009-03-04 9 views

Odpowiedz

6

Praca wstecz poprzez kod, fetch licznik tylko zostaje zwiększany, gdy jednostka jest pobierana od źródła danych (w przeciwieństwie do żadnych skrytek) -

protected Object loadFromDatasource(
     final LoadEvent event, 
     final EntityPersister persister, 
     final EntityKey keyToLoad, 
     final LoadEventListener.LoadType options) { 
    final SessionImplementor source = event.getSession(); 
    Object entity = persister.load(
      event.getEntityId(), 
      event.getInstanceToLoad(), 
      event.getLockMode(), 
      source 
    ); 

    if (event.isAssociationFetch() && source.getFactory().getStatistics().isStatisticsEnabled()) { 
     source.getFactory().getStatisticsImplementor().fetchEntity(event.getEntityClassName()); 
    } 

    return entity; 
} 

Licznik obciążenia nazwano od zbyt wielu miejsc do śledzenia je wszystkie, ale wygląda na to, że zwiększa się za każdym razem, gdy jednostka zostanie wczytana, zarówno ze źródła danych, jak i pamięci podręcznych.

+0

Aktualizacja? Wydaje mi się, że otrzymuję wiele aktualizacji na temat obiektów, które są niezmienne. – Sam

Powiązane problemy