Hi Fabio/Ayende,

Ok that explains everything...Every 5 minutes or so I get a cache miss
and yes I'm using the latest version of the SysCache2 provider from
the trunk with NH2.0.1, which are you stated is not compatable with
NH2.0.1.

Probably a little off the topic but other providers like SysCache and
Prevalence are working as expected (just had to update the config
schema).

Anyway is there a way I can get the source code of SysCache2 (and the
other providers) which are compatible with NH2.0.1?

I'll need a version compatable with 2.0.1. Like I said before, because
of the NH2.1.400 issues I needed to get the latest build of NH2.0.1 so
the cache binaries for NH.2.0.1.400 won't work (I receive an assembly
error).

One again thanks and very much appreciated,
Joe

On Sep 28, 3:14 pm, Fabio Maulo <[email protected]> wrote:
> I'm missing something...Are you using the last SysCache2 provider, from
> trunk, with NH2.0.1 ?
>
> Note: the last SysCache2 provider is compatible with NH2.1.0.
>
> btw the default expiration is 5 minutes (if there isn't an
> insert/update/delete in the tables in cache)
>
> 2009/9/28 Jopo <[email protected]>
>
>
>
>
>
>
>
> > Hi Ayende,
>
> > Thanks and much appreciated for your prompt response.
>
> > Just before I check NH Prof, I am using NH 2.0.1.
>
> > Excuse me for my ignorance but is there a default expiration with
> > SysCache2 under NH2.0.1?
>
> > I can't see the setting in the NHibernate configuration schema.
>
> > Thanks,
> > Joe
>
> > On Sep 28, 1:29 pm, Ayende Rahien <[email protected]> wrote:
> > > What does NH Prof report?
> > > Are you specifying the expiration? I think that the default expiration is
> > 5
> > > minutes.
>
> > > On Mon, Sep 28, 2009 at 3:47 AM, Jopo <[email protected]> wrote:
>
> > > > Hi All,
>
> > > > I have been having issues with NHibernate’s 2nd level caching while
> > > > using the SysCache2 provider. I am receiving a lot of random caching
> > > > misses that are occurring roughly every 3-5 minutes or so. The 2nd
> > > > level caching appears to be working when inspecting database calls
> > > > through SQL profiler, i.e. for cached queries or entities, first time
> > > > they are loaded into the 2nd level cache a query is sent and after
> > > > that no query is sent until the next miss.
>
> > > > I am using what I believe is the latest version from the trunk of the
> > > > SysCache2 provider (as of last week). I built the solution against a
> > > > NHibernate version from more than a few months ago. I would really
> > > > like to get this caching provider working because of the SQL Server
> > > > Dependencies functionality. I’ve tried SysCache but that does not
> > > > build against my NHibernate version.
>
> > > > I’ve searched the net and found that some people are having the same
> > > > problem but their solution did not work for me:
>
> > > >https://forum.hibernate.org/viewtopic.php?p=2406601
>
> > > > Below are my settings and configurations:
>
> > > > *Web.config*
>
> > > >    <section name="syscache2"
> > > > type="NHibernate.Caches.SysCache2.SysCacheSection,
> > > > NHibernate.Caches.SysCache2"/>
>
> > > >  <syscache2>
> > > >  <cacheRegion name="ReferenceData">
> > > >    <dependencies>
> > > >      <tables>
> > > >        <add name="DomainObjectA" databaseEntryName="DatabaseName"
> > > > tableName="dbo.DatabaseObjectA" />
> > > >        <add name=" DomainObjectB " databaseEntryName="
> > > > DatabaseName" tableName="dbo. DatabaseObjectB" />
> > > >      </tables>
> > > >    </dependencies>
> > > >  </cacheRegion>
> > > >  </syscache2>
>
> > > > *Session Factory.config*
>
> > > >  <session-factory name=" DatabaseName">
> > > >  <property name="dialect">NHibernate.Dialect.MsSql2005Dialect</
> > > > property>
> > > >  <property
>
> > name="connection.provider">NHibernate.Connection.DriverConnectionProvider</
> > > > property>
> > > >  <property
> > > > name="connection.driver_class">NHibernate.Driver.SqlClientDriver</
> > > > property>
> > > >  <property name="cache.use_second_level_cache">true</property>
> > > >  <property name="cache.use_query_cache" >true</property>
> > > >  <property
>
> > name="cache.provider_class">NHibernate.Caches.SysCache2.SysCacheProvider,
> > > > NHibernate.Caches.SysCache2</property>
> > > >  <!--<property
> > > > name="connection.connection_string_name">DatabaseConnectionString</
> > > > property>-->
> > > >  <property name="show_sql">false</property>
> > > >  <property name="generate_statistics">false</property>
> > > >  <property name="max_fetch_depth">1</property>
> > > >  <property name="connection.isolation">ReadCommitted</property>
> > > >  <property name="default_schema">dbo</property>
> > > >   <mapping assembly="AssemblyName.Repositories" />
> > > > </session-factory>
> > > > </hibernate-configuration>
>
> > > > *Mapping Files*
>
> > > > ObjectA.hbm
> > > > <class name="BusinessLogic.Domain.ObjectA, BusinessLogic.Domain"
> > > > table="ObjectA" optimistic-lock="version">
>
> > > >  <id name="Id" column ObjectAId" access="field.camelcase-
> > > > underscore">
> > > >    <generator class="identity" />
> > > >  </id>
>
> > > >  <version name="Version" column="RowVersion"
> > > > access="field.camelcase-underscore" />
>
> > > >  <many-to-one name=" ObjectB" class="BusinessLogic.Domain.ObjectB,
> > > > BusinessLogic.Domain" access="field.camelcase-underscore">
> > > >    <column name=" ObjectBId" not-null="true" fetch="select"
> > > > lazy="false"/>
> > > >  </many-to-one>
>
> > > > <property>
> > > > …
> > > > <property />
> > > >  </class>
>
> > > > ObjectB.hbm
> > > >  <class name=" BusinessLogic.Domain.ObjectB, BusinessLogic.Domain "
> > > > table="ObjectB" optimistic-lock="none" mutable="true">
> > > >  <cache usage="read-only" region="ReferenceData"/>
> > > >  <id name="Id" column="ObjectBId" access="field.camelcase-
> > > > underscore">
> > > >    <generator class="assigned" />
> > > >  </id>
>
> > > > <property>
> > > > …
> > > > <property>
> > > > </class>
>
> > > > *Query Example*
>
> > > >      public List<ObjectB> GetObjectBReferenceData()
> > > >      {
> > > >          List<ObjectB> objectBs = new List<ObjectB>();
> > > >          ICriteria critObjectBs =
> > > > UnitOfWork.CurrentSession.CreateCriteria(typeof(ObjectB))
> > > >                                  .SetCacheable(true);
> > > >          objectBs = critObjectBs.List<ObjectB>() as
> > > > List<ObjectB>;
> > > >          return objectBs;
> > > >      }
>
> > > > Please note that I am using Nhibernate version 2.0.1.X (where X is the
> > > > latest from the trunk) as opposed to using Nhibernate 2.0.1.400 which
> > > > has some serious memory leak issues:
>
> > > >http://www.rasmuskl.dk/post/A-WinDbg-Debugging-Journey-NHibernate-Mem.
> > ..
>
> > > > Any help or direction would be very much appreciated.
>
> > > > Thanks,
> > > > Joe Turcic
> > > > Senior .NET Developer
> > > > Email: [email protected] Hide quoted text -
>
> > > - Show quoted text -
>
> --
> Fabio Maulo- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"NHibernate Contrib - Development Group" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com.ar/group/nhcdevs?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to