ablink81 Posted September 19, 2019 Share Posted September 19, 2019 Bonjour, Je suis un peu novice dans l'utilisation de ce forum et j'espère que mon sujet est dans le bon chapitre ... Ma boutique comporte environ 5000 catégories ... et lorsque j'en créé une nouvelle, il me faut attendre entre 2 et 5 minutes !! En activant le debug et le debug_profiling, je m’aperçois qu'il y a environ 5000 requêtes du genre : UPDATE `ps_category` SET `nleft` = 'XX',`nright` = 'XX' WHERE `id_category` = XX LIMIT XX Chacune de ces requêtes prend entre 30 et 100 ms d’où le temps d'attente infernal ... J'ai a peu près compris que nleft et nright servent à construire arborescence des catégories mais : peux-t-on s'en passer ? existe-t-il un moyen pour ne pas les redéfinir pour chaque catégorie lorsque l'on en créé une nouvelle ? Merci d'avance. Pascal Link to comment Share on other sites More sharing options...
doekia Posted September 19, 2019 Share Posted September 19, 2019 Non tu ne peut pas t'en passer. 100ms c'est énorme - anormal - tu as bien un UNIQUE INDEX sur la colonne id_category? Link to comment Share on other sites More sharing options...
ablink81 Posted September 23, 2019 Author Share Posted September 23, 2019 (edited) Oui, j'ai bien un UNIQUE INDEX sur la colonne id_category ... Après avoir fouillé un bon moment, il se trouve que la version 1.7.6 a corrigé cette manière de faire. Au lieu de faire X requetes (X étant en gros le nombre de catégories existantes), il n'en fait plus qu'une du genre INSERT INTO `ps_category` (id_category, nleft, nright) VALUES (15,6,7),(20,8,9),(34,10,11),(36,12,13),(39,14,15),(40,16,17),(43,18,19),(46,20,21) ....etc ON DUPLICATE KEY UPDATE nleft=VALUES(nleft), nright=VALUES(nright) Ce qui est beaucoup plus rapide ... Merci doekia pour tya réponse, comme je vois que tu as l'aire de pratiquer depuis un moment, sais-tu ou je pourrais trouver de la docs pour configurer Mysql aux petits oignons car je ne suis pas sur de l'avoir bien optimiser. Ma boutique est sur un serveur dédié et pour autant je trouve que les requetes MySQL sont assez longues, et comme elles sont nombreuses dans Prestashop, c'est pas hyper rapide. Ceci dit ma boutique comporte environ 5000 catégories et 30 000 produits Merci d'avance. Edited September 23, 2019 by ablink81 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now