From ddcc518807058eb3f11da69c97f71dbc7b9de27a Mon Sep 17 00:00:00 2001 From: Emmanuel Viennet Date: Tue, 2 Nov 2021 23:42:46 +0100 Subject: [PATCH] Memoize (cache) user_info --- README.md | 2 +- app/scodoc/sco_users.py | 3 ++- sco_version.py | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e28a92aacf..b80ecd5b58 100644 --- a/README.md +++ b/README.md @@ -157,7 +157,7 @@ Sur une machine de DEV, lancer flask profile --host 0.0.0.0 --length 32 --profile-dir /opt/scodoc-data -le fichier `.prof` sera alors écrit dans `/opt/scoidoc-data` (on peut aussi utiliser `/tmp`). +le fichier `.prof` sera alors écrit dans `/opt/scodoc-data` (on peut aussi utiliser `/tmp`). Pour la visualisation, [snakeviz](https://jiffyclub.github.io/snakeviz/) est bien: diff --git a/app/scodoc/sco_users.py b/app/scodoc/sco_users.py index eaf4349434..de15485714 100644 --- a/app/scodoc/sco_users.py +++ b/app/scodoc/sco_users.py @@ -46,7 +46,7 @@ from app.scodoc import sco_etud from app.scodoc import sco_excel from app.scodoc import sco_preferences from app.scodoc.gen_tables import GenTable -from app import log +from app import log, cache from app.scodoc.scolog import logdb import app.scodoc.sco_utils as scu @@ -226,6 +226,7 @@ def _user_list(user_name): return None +@cache.memoize(timeout=50) # seconds def user_info(user_name_or_id=None, user=None): """Dict avec infos sur l'utilisateur (qui peut ne pas etre dans notre base). Si user_name est specifie (string ou id), interroge la BD. Sinon, user doit etre une instance diff --git a/sco_version.py b/sco_version.py index 86a35aa75b..79b8a736b6 100644 --- a/sco_version.py +++ b/sco_version.py @@ -1,7 +1,7 @@ # -*- mode: python -*- # -*- coding: utf-8 -*- -SCOVERSION = "9.0.58" +SCOVERSION = "9.0.59" SCONAME = "ScoDoc"