Well scopedsession.remove throws away the session, so yeah either don't
call that , or set up the connection immediately on the next session.

On Wednesday, April 13, 2016, Kent Bower <k...@bowermail.net> wrote:

> About a year ago you helped me ensure my scoped session gets the same
> connection to the database, which might be important.
>
> I found out using "bind=connection" doesn't guarantee the session_maker
> uses that connection if something went wrong with the session and
> ScopedSession.remove() was called. Is there a way to guarantee this?
>
> See attached script that fails on version 1.0.12
>
> Is this the intended behavior when sessionmaker has a specific connection
> as bind?
>
>
>
> On Mon, Mar 23, 2015 at 12:40 PM, Michael Bayer <mike...@zzzcomputing.com
> <javascript:_e(%7B%7D,'cvml','mike...@zzzcomputing.com');>> wrote:
>
>>
>>
>> Kent <jkentbo...@gmail.com
>> <javascript:_e(%7B%7D,'cvml','jkentbo...@gmail.com');>> wrote:
>>
>> > In cases where we interact with the database session (a particular
>> Connection) to, for example, obtain an application lock which is checked
>> out from database for the lifetime of the database session (not just the
>> duration of a transaction), it is important that I guarantee future scoped
>> session instances get the same connection (and, for example, the
>> pool_recycle or something else has thrown out that connection and grabbed a
>> new one).
>> >
>> > Please advise me where I can best implement this guarantee.  A Session
>> subclass's connection() method seems it might be the appropriate place, but
>> let me know if there is a better recipe.
>>
>> you’d want to create that Session associated with the Connection directly:
>>
>> my_session = scoped_session(bind=some_connection)
>>
>> then of course make sure you .close() it and .close() the connection at
>> the end of the use of that session.
>>
>>
>>
>> >
>> > The Session.connection() method's docs say:
>> > "If this Session is configured with autocommit=False, either the
>> Connection corresponding to the current transaction is returned, or if no
>> transaction is in progress, a new one is begun and the Connection returned
>> (note that no transactional state is established with the DBAPI until the
>> first SQL statement is emitted)."
>> >
>> > If the session is one registered in my scoped registry, I'd like to
>> always return the same connection to guarantee I am using the one with the
>> database-side checked-out application lock.
>> >
>> > What's my best option?
>> >
>> > Thanks much!
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> Groups "sqlalchemy" group.
>> > To unsubscribe from this group and stop receiving emails from it, send
>> an email to sqlalchemy+unsubscr...@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sqlalchemy%2bunsubscr...@googlegroups.com');>
>> .
>> > To post to this group, send email to sqlalchemy@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sqlalchemy@googlegroups.com');>.
>> > Visit this group at http://groups.google.com/group/sqlalchemy.
>> > For more options, visit https://groups.google.com/d/optout.
>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "sqlalchemy" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/sqlalchemy/WcdRsvBTozk/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> sqlalchemy+unsubscr...@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sqlalchemy%2bunsubscr...@googlegroups.com');>
>> .
>> To post to this group, send email to sqlalchemy@googlegroups.com
>> <javascript:_e(%7B%7D,'cvml','sqlalchemy@googlegroups.com');>.
>> Visit this group at http://groups.google.com/group/sqlalchemy.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sqlalchemy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sqlalchemy+unsubscr...@googlegroups.com
> <javascript:_e(%7B%7D,'cvml','sqlalchemy%2bunsubscr...@googlegroups.com');>
> .
> To post to this group, send email to sqlalchemy@googlegroups.com
> <javascript:_e(%7B%7D,'cvml','sqlalchemy@googlegroups.com');>.
> Visit this group at https://groups.google.com/group/sqlalchemy.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sqlalchemy+unsubscr...@googlegroups.com.
To post to this group, send email to sqlalchemy@googlegroups.com.
Visit this group at https://groups.google.com/group/sqlalchemy.
For more options, visit https://groups.google.com/d/optout.

Reply via email to