diff -r b6b00bb1e528 -r 5de859b95988 cubicweb/server/session.py --- a/cubicweb/server/session.py Wed Mar 09 14:11:47 2016 +0100 +++ b/cubicweb/server/session.py Thu Jun 12 15:54:44 2014 +0200 @@ -1017,7 +1017,15 @@ self.closed = False def close(self): + if self.closed: + self.warning('closing already closed session %s', self.sessionid) + return + with self.new_cnx() as cnx: + self.repo.hm.call_hooks('session_close', cnx) + cnx.commit() + del self.repo._sessions[self.sessionid] self.closed = True + self.info('closed session %s for user %s', self.sessionid, self.user.login) def __enter__(self): return self