web/views/sessions.py
branchstable
changeset 7817 cb6174065c39
parent 7815 2a164a9cf81c
child 7854 d95a76df33a9
equal deleted inserted replaced
7815:2a164a9cf81c 7817:cb6174065c39
    19 object :/
    19 object :/
    20 """
    20 """
    21 
    21 
    22 __docformat__ = "restructuredtext en"
    22 __docformat__ = "restructuredtext en"
    23 
    23 
    24 from cubicweb import RepositoryError, Unauthorized, AuthenticationError
    24 from cubicweb import (RepositoryError, Unauthorized, AuthenticationError,
       
    25                       BadConnectionId)
    25 from cubicweb.web import InvalidSession, Redirect
    26 from cubicweb.web import InvalidSession, Redirect
    26 from cubicweb.web.application import AbstractSessionManager
    27 from cubicweb.web.application import AbstractSessionManager
    27 from cubicweb.dbapi import DBAPISession
    28 from cubicweb.dbapi import DBAPISession
    28 
    29 
    29 
    30 
   128         corrupted...)
   129         corrupted...)
   129         """
   130         """
   130         self.info('closing http session %s' % session.sessionid)
   131         self.info('closing http session %s' % session.sessionid)
   131         del self._sessions[session.sessionid]
   132         del self._sessions[session.sessionid]
   132         if session.cnx:
   133         if session.cnx:
   133             session.cnx.close()
   134             try:
       
   135                 session.cnx.close()
       
   136             except BadConnectionId: # expired on the repository side
       
   137                 pass
   134             session.cnx = None
   138             session.cnx = None