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. 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. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.