mirror of
https://github.com/camptocamp/odoo-cloud-platform.git
synced 2026-06-23 18:04:34 +00:00
In several places, odoo sets a datetime object directly in the session. It works with the default session handler of odoo which uses pickle. But datetime and date are not json serializable by default. Add custom encoder / decoder to handle them (from https://github.com/OCA/queue/blob/dc12a6a20ecfd15c5b90f9b089c9a64cf9d8bbe4/queue_job/fields.py#L57-L99) See the discussion raised by @PCatinean on https://github.com/camptocamp/odoo-cloud-platform/pull/176
Sessions in Redis ================= This addon allows to store the web sessions in Redis. Configuration ------------- The storage of sessions in Redis is activated using environment variables. * ``ODOO_SESSION_REDIS`` has to be ``1`` or ``true`` * ``ODOO_SESSION_REDIS_HOST`` is the redis hostname (default is ``localhost``) * ``ODOO_SESSION_REDIS_PORT`` is the redis port (default is ``6379``) * ``ODOO_SESSION_REDIS_PASSWORD`` is the password for the AUTH command (optional) * ``ODOO_SESSION_REDIS_PREFIX`` is the prefix for the session keys (optional) * ``ODOO_SESSION_REDIS_EXPIRATION`` is the time in seconds before expiration of the sessions (default is 7 days) * ``ODOO_SESSION_REDIS_EXPIRATION_ANONYMOUS`` is the time in seconds before expiration of the anonymous sessions (default is 3 hours) The keys are set to ``session:<session id>``. When a prefix is defined, the keys are ``session:<prefix>:<session id>`` This addon must be added in the server wide addons with (``--load`` option): ``--load=web,session_redis`` Limitations ----------- * The server has to be restarted in order for the sessions to be stored in Redis. * All the users will have to login again as their previous session will be dropped. * The addon monkey-patch ``odoo.http.Root.session_store`` with a custom method when the Redis mode is active, so incompatibilities with other addons is possible if they do the same.