Development #48624
Optimiser les accès en DB sur la vue settings des agendas rdv
0%
Fichiers
Révisions associées
manager: reduce querysets on agenda settings page (#48624)
Historique
Mis à jour par Valentin Deniaud il y a plus de 3 ans
À traiter ici aussi, les exceptions jours fériés qui consomment également trop de requêtes (non couvert par les tests pour le moment), il faudrait un simple select_related('source') sur le qs des exceptions comme c'est déjà fait dans TimePeriodExceptionListView.
Mis à jour par Lauréline Guérin il y a plus de 3 ans
- Fichier 0002-manager-reduce-querysets-on-agenda-settings-page-486.patch 0002-manager-reduce-querysets-on-agenda-settings-page-486.patch ajouté
- Fichier 0001-manager-add-some-data-to-test-querysets-48624.patch 0001-manager-add-some-data-to-test-querysets-48624.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Lauréline Guérin il y a plus de 3 ans
Mis à jour par Emmanuel Cazenave il y a plus de 3 ans
Sur l'essentiel je suis jaloux de pas avoir trouvé ça tout seul.
Je me dis peut-être avoir une implémentation par défaut de prefetched_exceptions
, genre
@property def prefetched_exceptions(self): if getattr(self, prefetched_exceptions_data, None) is None: self.prefetched_exception_data = TimePeriodException.objects.filter(Q(desk=desk) | Q(unavailability_calendar__desks=desk)) return prefetched_exceptions_data
Avec du coup un desk.prefetched_exceptions_data = ...
dans la vue, pour s'éviter les contorsions dans le test et pour filet de sécurité ?
Mis à jour par Lauréline Guérin il y a plus de 3 ans
J'aime bien l'idée que ça pète si prefetched_exceptions
n'est pas défini, ça évite l'utilisation irréfléchie de la méthode (ie sans avoir anticipé le prefetch), et les pb de perf :)
Mis à jour par Emmanuel Cazenave il y a plus de 3 ans
- Statut changé de Solution proposée à Solution validée
Ok, on ne peut pas refuser ça à quelqu'un qui surveille Sentry.
Mis à jour par Lauréline Guérin il y a plus de 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 1302ef186fb7ac721cb1e46c2d892918a42e7332 Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Thu Nov 19 17:21:00 2020 +0100 manager: reduce querysets on agenda settings page (#48624) commit 9e9a6d24c1ff70766f53b3e95d39f1d3473391bb Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Thu Nov 19 15:26:00 2020 +0100 manager: add some data to test querysets (#48624)
Mis à jour par Frédéric Péters il y a plus de 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
manager: add some data to test querysets (#48624)