-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: IStatelessSession ASP.Net WorkerThread Issues
PostPosted: Fri Mar 13, 2009 5:04 pm 
Newbie

Joined: Wed Mar 11, 2009 3:11 pm
Posts: 1
-- My Application spawns worker threads in asp.net to do some long running background work using ThreadPool.QueueUserWorkItem
-- IStatelessSession - Can't fetch entities from worker thread
-- IStatelessSession - BeginTransaction( IsolationLevel ) function is missing
-- IStatelessSession - doesn't pick up the base configuration ado.net CommandTimeout
-- IStatelessSession - IInterceptor is readonly? does/should it support interceptors or only events?

Hibernate version: v2.0.1 ga

Mapping documents: NA

Code between sessionFactory.openSession() and session.close():

Full stack trace of any exception that occurs:
NHibernate.AssertionFailure: possible non-threadsafe access to the session
at NHibernate.Engine.TwoPhaseLoad.InitializeEntity(Object entity, Boolean readOnly, ISessionImplementor session, PreLoadEvent preLoadEvent, PostLoadEvent postLoadEvent) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Engine\TwoPhaseLoad.cs:line 54

Name and version of the database you are using: SQL Server 2005 sp3

The generated SQL (show_sql=true): NA

Debug level Hibernate log excerpt:
2009-03-13 13:40:06,183 [mwalsh- 9] ERROR AppCore.Server.Auto.ThreadPool -
NHibernate.ADOException: could not execute query
[ select tblpointer0_.PointerPK as PointerPK25_, tblpointer0_.Pointer as Pointer25_, tblpointer0_.PointerAllocation1 as PointerA3_25_, tblpointer0_.PointerAllocation2 as PointerA4_25_, tblpointer0_.PointerAllocation3 as PointerA5_25_, tblpointer0_.PointerAllocation4 as PointerA6_25_, tblpointer0_.PointerAllocation5 as PointerA7_25_, tblpointer0_.PointerDestination as PointerD8_25_, tblpointer0_.PointerLocked as PointerL9_25_, tblpointer0_.PointerPercentAllocation as Pointer10_25_, tblpointer0_.PointerSequence as Pointer11_25_, tblpointer0_.PointerShared as Pointer12_25_, tblpointer0_.PointerType as Pointer13_25_, tblpointer0_.PointerUniformDistribution as Pointer14_25_, tblpointer0_.ClientFK as ClientFK25_ from S2_SPIDR_v10.dbo.tblPointer tblpointer0_ where (tblpointer0_.ClientFK=? ) ]
Positional parameters: #0>cebd4ad0-5205-4c41-bbde-008338f6841c
[SQL: select tblpointer0_.PointerPK as PointerPK25_, tblpointer0_.Pointer as Pointer25_, tblpointer0_.PointerAllocation1 as PointerA3_25_, tblpointer0_.PointerAllocation2 as PointerA4_25_, tblpointer0_.PointerAllocation3 as PointerA5_25_, tblpointer0_.PointerAllocation4 as PointerA6_25_, tblpointer0_.PointerAllocation5 as PointerA7_25_, tblpointer0_.PointerDestination as PointerD8_25_, tblpointer0_.PointerLocked as PointerL9_25_, tblpointer0_.PointerPercentAllocation as Pointer10_25_, tblpointer0_.PointerSequence as Pointer11_25_, tblpointer0_.PointerShared as Pointer12_25_, tblpointer0_.PointerType as Pointer13_25_, tblpointer0_.PointerUniformDistribution as Pointer14_25_, tblpointer0_.ClientFK as ClientFK25_ from S2_SPIDR_v10.dbo.tblPointer tblpointer0_ where (tblpointer0_.ClientFK=? )] ---> NHibernate.AssertionFailure: possible non-threadsafe access to the session
at NHibernate.Engine.TwoPhaseLoad.InitializeEntity(Object entity, Boolean readOnly, ISessionImplementor session, PreLoadEvent preLoadEvent, PostLoadEvent postLoadEvent) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Engine\TwoPhaseLoad.cs:line 54
at NHibernate.Loader.Loader.InitializeEntitiesAndCollections(IList hydratedObjects, Object resultSetId, ISessionImplementor session, Boolean readOnly) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 617
at NHibernate.Loader.Loader.DoQuery(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 466
at NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 187
at NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 1803
--- End of inner exception stack trace ---
at NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 1812
at NHibernate.Loader.Loader.ListIgnoreQueryCache(ISessionImplementor session, QueryParameters queryParameters) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 1718
at NHibernate.Loader.Loader.List(ISessionImplementor session, QueryParameters queryParameters, ISet`1 querySpaces, IType[] resultTypes) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Loader\Loader.cs:line 1712
at NHibernate.Hql.Classic.QueryTranslator.List(ISessionImplementor session, QueryParameters queryParameters) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Hql\Classic\QueryTranslator.cs:line 1286
at NHibernate.Engine.Query.HQLQueryPlan.PerformList(QueryParameters queryParameters, ISessionImplementor session, IList results) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Engine\Query\HQLQueryPlan.cs:line 226
at NHibernate.Impl.StatelessSessionImpl.List(String query, QueryParameters queryParameters, IList results) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Impl\StatelessSessionImpl.cs:line 100
at NHibernate.Impl.StatelessSessionImpl.List[T](String query, QueryParameters queryParameters) in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Impl\StatelessSessionImpl.cs:line 126
at NHibernate.Impl.QueryImpl.List[T]() in C:\NHibernate-2.0.1.GA-src\src\NHibernate\Impl\QueryImpl.cs:line 95
at SPIDR.Server.Sync.PaeTecPull.S3__Pointer_ProcessBlockEvent(Int32 wimisClientID, String pointerType, PointerDataTable slice) in C:\MWalsh_Work\SPIDR\SPIDR_v10\SPIDR.Server\Sync\PaeTecPull.cs:line 415
at SPIDR.Server.Sync.PaeTecPull.S2__Pointer_ProcessBlockEvent(String clientID, String pointerType, PointerDataTable slice) in C:\MWalsh_Work\SPIDR\SPIDR_v10\SPIDR.Server\Sync\PaeTecPull.cs:line 398
at Paetec.Server.PaetecWSWrapper.AllPointers(String clientID) in C:\MWalsh_Work\SPIDR\SPIDR_v10\Paetec.Server\PaetecWSWrapper.cs:line 80
at SPIDR.Server.Sync.PaeTecPull.S1__Pointers_ThreadPerClient(Object state) in C:\MWalsh_Work\SPIDR\SPIDR_v10\SPIDR.Server\Sync\PaeTecPull.cs:line 361
at AppCore.Server.Auto.ThreadPool.__CompletionTarget(Object state) in C:\MWalsh_Work\SPIDR\SPIDR_v10\AppCore.Server\Auto\ThreadPool.cs:line 42


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.