Projet

Général

Profil

Development #38902

index sur la colonne user_id

Ajouté par Frédéric Péters il y a plus de 4 ans. Mis à jour il y a plus de 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
11 janvier 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Dans l'idée de travailler les performances de la récupération des demandes d'un usager.


Fichiers

0001-sql-add-index-on-user_id-38902.patch (1,82 ko) 0001-sql-add-index-on-user_id-38902.patch Frédéric Péters, 11 janvier 2020 22:38

Révisions associées

Révision f07937df (diff)
Ajouté par Frédéric Péters il y a plus de 4 ans

sql: add index on user_id (#38902)

Historique

#1

Mis à jour par Frédéric Péters il y a plus de 4 ans

(c'est en regardant de ce côté que je suis tombé sur #38901).

#2

Mis à jour par Frédéric Péters il y a plus de 4 ans

résultat d'un EXPLAIN sur la requête de /api/users/<nameid>/forms

 Limit  (cost=3187.35..3187.60 rows=100 width=281)
   ->  Sort  (cost=3187.35..3188.74 rows=553 width=281)
         Sort Key: wcs_all_forms.receipt_time
         ->  Subquery Scan on wcs_all_forms  (cost=0.01..3166.22 rows=553 width=281)
               ->  Append  (cost=0.01..3160.69 rows=553 width=410)
                     ->  Result  (cost=0.01..422.64 rows=85 width=410)
...
                     ->  Subquery Scan on "*SELECT* 296"  (cost=0.15..10.62 rows=1 width=410)
                           ->  Index Scan using formdata_141_date_min_1_user_id_idx on formdata_141_date_min_1  (cost=0.15..10.61 rows=1 width=4
                                 Index Cond: ((user_id)::text = '1'::text)
                                 InitPlan 887 (returns $886)
                                   ->  Result  (cost=0.00..0.01 rows=1 width=32)
                                 SubPlan 886
                                   ->  Result  (cost=0.00..0.01 rows=1 width=1)
                                 SubPlan 888
                                   ->  Seq Scan on users users_295  (cost=0.00..2.42 rows=1 width=16)
                                         Filter: (id = (formdata_141_date_min_1.user_id)::integer)

(l'index est bien utilisé pour les requêtes sur la vue wcs_all_forms) (mais en local vu le nombre de démarches que j'ai ça continue à faire une requête pas super rapide)

#3

Mis à jour par Emmanuel Cazenave il y a plus de 4 ans

  • Statut changé de Solution proposée à Solution validée
#4

Mis à jour par Frédéric Péters il y a plus de 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit f07937dfc3b58ed9ad3f1419bf3a986faa3fcbc2
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat Jan 11 22:38:18 2020 +0100

    sql: add index on user_id (#38902)
#5

Mis à jour par Frédéric Péters il y a plus de 4 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF