Please do we have any solution to this issue yet? I am getting the same issue, only that in my case, >i have the memchached server on the physical machine. >also, the session factory is well managed, created only at app start > and yes, the app is multi-tenant, though i don't see how that is a problem about creating mappings dynamically, if this is abt ORM, we just use static hbm.xml files
Please help! Thanks in advance On Sun, Feb 7, 2010 at 5:05 AM, Fabio Maulo <[email protected]> wrote: > Strange behaviour.... > "additional logging and metrics"... metrics about what ? > If you think that your modification can be useful to somebody else and you > prefer to have it maintained by the NH's team, would be nice if you can > share the issues and its patches in our issue tracker ( > http://jira.nhforge.org/). > > About this thread: > Is your app. multi tenant ? > how you are managing the sessionfactory ? > are you recreating the sessionfactory on the fly for some reason ? > are you creating mappings dynamically ? > > 2010/2/6 Seth Goldstein <[email protected]> > >> >> We are using our own compiled version. The source code is only very >> slightly modified to include additional logging and metrics. In >> theory, it should behave no differently than the officially compiled >> version. We could certainly plug the official version in and see what >> happens. When we compile, it is compiled in Release, not Debug. >> >> >> On Feb 5, 7:01 pm, Fabio Maulo <[email protected]> wrote: >> > Only as curiosity... >> > are you using a custom NH's version compiled in debug ? >> > >> > 2010/2/5 Seth Goldstein <[email protected]> >> > >> > >> > >> > >> > >> > > Today, we starting seeing IndexOutOfRangeException in >> > > AccessOptimizer.SetPropertyValues. Our code base in production hasn't >> > > changed for about a week now, and all of a sudden this exception >> > > started getting thrown. We are unable to consistently reproduce the >> > > bug. But it does happen on a somewhat frequent basis. We currently >> > > use memcached version 1.4.1 for our nhibernate 2nd level cache. The >> > > exception is: >> > >> > > Exception type: System.IndexOutOfRangeException Exception message: >> > > Index was outside the bounds of the array. >> > >> > > The call stack is: >> > >> > > Stack trace: >> > > at (Object , Object[] , SetterCallback ) >> > > at >> NHibernate.Bytecode.Lightweight.AccessOptimizer.SetPropertyValues(Object >> > > target, Object[] values) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Bytecode\Lightweight\AccessOptimizer.cs:line >> > > 32 >> > > at >> > > >> NHibernate.Tuple.Entity.PocoEntityTuplizer.SetPropertyValuesWithOptimizer(Object >> > > entity, Object[] values) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Tuple\Entity\PocoEntityTuplizer.cs:line >> > > 292 >> > > at NHibernate.Tuple.Entity.PocoEntityTuplizer.SetPropertyValues(Object >> > > entity, Object[] values) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Tuple\Entity\PocoEntityTuplizer.cs:line >> > > 280 >> > > at >> > > >> NHibernate.Persister.Entity.AbstractEntityPersister.SetPropertyValues(Object >> > > obj, Object[] values, EntityMode entityMode) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Persister\Entity\AbstractEntityPersister.cs:line >> > > 3776 >> > > at NHibernate.Cache.Entry.CacheEntry.Assemble(Object[] values, Object >> > > result, Object id, IEntityPersister persister, IInterceptor >> > > interceptor, ISessionImplementor session) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Cache\Entry\CacheEntry.cs:line >> > > 94 >> > > at NHibernate.Cache.Entry.CacheEntry.Assemble(Object instance, Object >> > > id, IEntityPersister persister, IInterceptor interceptor, >> > > ISessionImplementor session) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Cache\Entry\CacheEntry.cs:line >> > > 72 >> > > at >> > > >> NHibernate.Event.Default.DefaultLoadEventListener.AssembleCacheEntry(CacheEntry >> > > entry, Object id, IEntityPersister persister, LoadEvent event) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Event\Default\DefaultLoadEventListener.cs:line >> > > 464 >> > > at >> > > >> NHibernate.Event.Default.DefaultLoadEventListener.LoadFromSecondLevelCache(LoadEvent >> > > event, IEntityPersister persister, LoadType options) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Event\Default\DefaultLoadEventListener.cs:line >> > > 438 >> > > at NHibernate.Event.Default.DefaultLoadEventListener.DoLoad(LoadEvent >> > > event, IEntityPersister persister, EntityKey keyToLoad, LoadType >> > > options) in C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Event\Default\DefaultLoadEventListener.cs:line >> > > 304 >> > > at NHibernate.Event.Default.DefaultLoadEventListener.Load(LoadEvent >> > > event, IEntityPersister persister, EntityKey keyToLoad, LoadType >> > > options) in C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Event\Default\DefaultLoadEventListener.cs:line >> > > 103 >> > > at NHibernate.Event.Default.DefaultLoadEventListener.OnLoad(LoadEvent >> > > event, LoadType loadType) in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Event\Default\DefaultLoadEventListener.cs:line >> > > 68 >> > > at NHibernate.Impl.SessionImpl.FireLoad(LoadEvent event, LoadType >> > > loadType) in C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Impl\SessionImpl.cs:line >> > > 2485 >> > > at NHibernate.Impl.SessionImpl.ImmediateLoad(String entityName, Object >> > > id) in C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Impl\SessionImpl.cs:line >> > > 1361 >> > > at NHibernate.Proxy.AbstractLazyInitializer.Initialize() in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Proxy\AbstractLazyInitializer.cs:line >> > > 70 >> > > at NHibernate.Proxy.AbstractLazyInitializer.GetImplementation() in >> > > C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate\Proxy\AbstractLazyInitializer.cs:line >> > > 154 >> > > at NHibernate.ByteCode.Castle.LazyInitializer.Intercept(IInvocation >> > > invocation) in C:\SourceCode\shamu\vendor\NHibernate\2.1.0.GA >> > > \src\NHibernate.ByteCode.Castle\LazyInitializer.cs:line >> > > 61 >> > > at Castle.DynamicProxy.AbstractInvocation.Proceed() >> > > at TenantProxy1a719121d7ad431a94e33e6604a711fa.get_Id() >> > >> > > I've tracked it down to what I believe to be >> > > NHibernate\Bytecode\Lightweight\ReflectionOptimizer.cs >> > > in the GenerateSetPropertyValuesMethod method >> > >> > > The only way that exception could get thrown would be if there were >> > > more setters than getters which sounds outrageous. >> > >> > > Or the getters array is never initialized? >> > >> > > Any ideas? >> > >> > > Any other information that I can provide to further diagnose? >> > >> > > -- >> > > You received this message because you are subscribed to the Google >> Groups >> > > "nhusers" group. >> > > To post to this group, send email to [email protected]. >> > > To unsubscribe from this group, send email to >> > > [email protected]< >> nhusers%[email protected]> >> > > . >> > > For more options, visit this group at >> > >http://groups.google.com/group/nhusers?hl=en. >> > >> > -- >> > Fabio Maulo >> >> -- >> You received this message because you are subscribed to the Google Groups >> "nhusers" 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/group/nhusers?hl=en. >> >> > > > -- > Fabio Maulo > > -- > You received this message because you are subscribed to the Google Groups > "nhusers" 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/group/nhusers?hl=en. > -- You received this message because you are subscribed to the Google Groups "nhusers" 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/group/nhusers?hl=en.
