[hibernate-dev] Session opening

Steve Ebersole steve at hibernate.org
Fri Apr 1 12:11:07 EDT 2011


Shawn, you would use:
session.sessionWithOptions().connection().openSession()

That connection() call says "use the connection from the underlying session in 
the new session".  Although I think you are really more looking for:
session.sessionWithOptions().transactionContext().openSession()

saying to share transaction context between the 2 sessions

On Friday, April 01, 2011, at 11:05 am, Shawn Clowater wrote:
> Steve,
> 
> Saw this yesterday.  Looks like I'll be able to remove my patch that is
> currently allowing me to inject my session factory into session obtained
> from a getCurrentSession() call which makes me very happy.  I'll dig up
> the JIRA so you guys can kill it.
> 
> One question though, with the session.sessionWithOptions() will that
> steal the connection from the underlying session?
> 
> Background: We've got some places where we want to execute a query with
> an alternate set of filters and rather than muck with the ones on the
> existing session we'll use session.connection() and spin a new one and
> set the particular filters we want, do the query and then close the
> session().  That just leaves the original session isolated from having a
> bunch of additional data loaded into and also prevents data from being
> locked into it with the temporary filter view of the data.  I just
> wanted to ensure that this will still be possible.
> 
> 
> Shawn Clowater
> 
> -----Original Message-----
> From: hibernate-dev-bounces at lists.jboss.org
> [mailto:hibernate-dev-bounces at lists.jboss.org] On Behalf Of Steve
> Ebersole
> Sent: Friday, April 01, 2011 7:25 AM
> To: hibernate-dev at lists.jboss.org
> Subject: [hibernate-dev] Session opening
> 
> RE: http://opensource.atlassian.com/projects/hibernate/browse/HHH-2860
> 
> This dealt with cleaning up all the overloaded openSession methods from
> SessionFactory and SessionFactoryImplementor.
> 
> The new main method for obtaining a Session is
> SessionFactory.withOptions()
> which returns a org.hibernate.SessionBuilder instance which can be used
> to
> specify the options with which you want the Session built by eventually
> calling openSession() on it.  For example:
> 
> Session session = sessionFactory
>         .withOptions()
>         .connection( someConnection )
>         .openSession();
> 
> The only prior form I left is openSession()
> 
> There is also a means to create a Session using certain information from
> an
> existing session using Session.sessionWithOptions() which returns a
> org.hibernate.SharedSessionBuilder (extending from SessionBuilder).
> 
> As part of this I was also finally able to remove the long deprecated
> Session.connection() method since we now have doWork, doReturningWork
> and now
> session opening.
> 
> Any questions or concerns?
> 
> ---
> Steve Ebersole <steve at hibernate.org>
> http://hibernate.org
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev
> 
> _______________________________________________
> hibernate-dev mailing list
> hibernate-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/hibernate-dev

---
Steve Ebersole <steve at hibernate.org>
http://hibernate.org



More information about the hibernate-dev mailing list