Development #94071
Performances: ajouter un index sur les ItemField avec un data source
0%
Description
Marie a observé lundi que l'import d'une application à la réunion était particulièrement lent.
Message sur le salon général, ce vendredi:[16:29:54] <mkuntz> j'ai une mise à jour d'app qui semble bloquée (ça fait bien 30 min qu'elle est sur 50%), quelqu'un pourrait regarder s'il y a un problème ?
Un job wcs tournait, j'ai capturé un strace quelques secondes pour pouvoir l'analyser a posteriori.
Le gros du temps passé (2,6s sur les 3,6s du strace) a été sur de l'attente de la base de données.
L'immense majorité des requêtes (en temps passé) ayant provoqué cette attente était de la forme:SELECT id FROM object WHERE anonymised IS NULL AND ( f..... = 'ABCDE' )
Or systématiquement les champs en question étaient des ItemField avec en data source un carddef que l'application mettait à jour.
Même en dehors de ce cas d'usage, je pense qu'il est préférable d'indexer les ItemField pointant vers un carddef.
History
Updated by Robot Gitea about 2 months ago
- Status changed from Nouveau to En cours
- Assignee set to Pierre Ducroquet
Pierre Ducroquet (pducroquet) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/1722
- Titre : WIP: sql: index ItemField pointing to carddefs (#94071)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/1722/files
Updated by Robot Gitea about 2 months ago
- Status changed from Solution proposée to En cours
Frédéric Péters (fpeters) a relu et demandé des modifications sur une pull request sur Gitea concernant cette demande :
Updated by Frédéric Péters about 1 month ago
À noter que sur le cas particulier de l'installation d'application qui était cité ici, via #94224#note-3 cette étape qui a pris du temps (update_related dans ma lecture) serait décalées lors des déploiements d'application.