[IMP] web: keep sessions at least 5 minutes
authorChristophe Simonis <chs@openerp.com>
Thu, 12 Jan 2012 12:52:07 +0000 (13:52 +0100)
committerChristophe Simonis <chs@openerp.com>
Thu, 12 Jan 2012 12:52:07 +0000 (13:52 +0100)
bzr revid: chs@openerp.com-20120112125207-03wb2qlpfu7y8wvx

addons/web/common/http.py
addons/web/common/session.py

index 0c239de..6e4cbaa 100644 (file)
@@ -10,6 +10,7 @@ import os
 import pprint
 import sys
 import threading
+import time
 import traceback
 import urllib
 import uuid
@@ -331,8 +332,9 @@ def session_context(request, storage_path, session_cookie='sessionid'):
             if (isinstance(value, session.OpenERPSession) 
                 and not value._uid
                 and not value.jsonp_requests
+                and value._creation_time + (60*5) < time.time()  # FIXME do not use a fixed value
             ):
-                _logger.info('remove session %s: %r', key, value.jsonp_requests)
+                _logger.info('remove session %s', key)
                 del request.session[key]
 
         with session_lock:
index ac0489b..ca23a08 100644 (file)
@@ -29,6 +29,7 @@ class OpenERPSession(object):
         round-tripped to the client browser.
     """
     def __init__(self):
+        self._creation_time = time.time()
         self.config = None
         self._db = False
         self._uid = False