Jump to content

[RESOLU] [PS 1.5.0.17] Navigation à facette provoque des crashes serveur


Recommended Posts

Bonjour,

 

Je souhaiterai dialoguer avec une personne de Prestashop et avec ceux qui auraient pu rencontrer ce problème.

 

Pour un de mes clients en PS 1.5.0.17, on rencontre des crashes serveurs à cause du module de navigation à facette. Le script blocklayered-ajax.php est appelé bien trop souvent et cumul les appels ajax non terminés et met en vrac le serveur.

 

Un client ou un script auto qui clic dans les choix des facettes appelle le blocklayered-ajax.php.

Si on clic sur plusieurs choix en même temps, le javascript fait un abort en jQuery mais bizarrement sur le serveur on voit toujours le processus tourné de l'appel ajax sur le serveur.

 

J'ai appliqué un patch directement sur le blocklayered-ajax.php, qui consiste à killer les processus non terminés avec un petit algo bien sympathique MAIS même avec ce patch nous rencontrons toujours des problèmes. Un peu moins de crashes quand même.

 

Pouvez-vous me faire un retour sur cette problématique des facettes, déjà qui est très lente à charger, mais si vous avez eu une expérience là-dessus qui pourrait éclairer notre équipe ?

 

N'hésitez pas à me joindre en MP si vous voulez !

Edited by BoutiqueDuBio.fr (see edit history)
Link to comment
Share on other sites

Bon merci prestashop d'avoir lu mon post !!! (ironie)

 

On a trouvé un bug dans le module de navigation à facette standard.

 

Le fichier JS blocklayered.js est HOOKÉ dans le Header. Et sur la fiche " produit " lorsque l'on fait "en savoir +" l'url se termine par un "#idTab1". Le JS du module lance le "blocklayered-ajax.php" en boucle jusqu'à crasher le serveur.

 

Ce qui n'est pas normal, c'est que ce module de navigation à facette au chargement de chaque page lance en ajax "blocklayered-ajax.php". C'est totalement inutile et alourdit le chargement des pages qui n'a pas besoin des facettes !

 

 

A tout le monde, il faut penser pour éviter cela de bloquer dans modules > position et dans chaque HOOK ou le module de navigation à facette est placé, de bloquer la page "product" (vous pouver le faire que dans le hook header)

 

Encore un module codé avec des pieds, pas optimiser, merci prestashop !

Edited by BoutiqueDuBio.fr (see edit history)
Link to comment
Share on other sites

  • 1 year later...

Waouh!!! Bonjour et merci. Je n'y croyais pas car je ne voyais pas la logique dans votre solution.

 

Mais ça marche!!!

 

Je suis en 1.6.0.6. Ma page de catégorie avec 978 produits contenant chacun 6 déclinaisons mettait une à deux minutes à charger !!! Du coup j'étais obligée de désactiver la navigation à facettes.

 

Tous les jours, je cherche quelques solutions et aujourd'hui je suis tombée sur votre post. J'ai simplement mis une exception "product" sur les hooks où est greffé le module (Header et Left Column)... c'est magique ! lol

 

Merci.

 

----

 

Ah ben non, après avoir vidé le cache, ça met encore trop de temps... Dsl, fausse joie.

Edited by AxooDesign (see edit history)
Link to comment
Share on other sites

  • 1 year later...

Bonjour,

Je me rends compte que j'ai me même problème sur les catégories quand je pagine.

 

En effet l'url se voit rajouter un # et cela me fait une erreur : ex : http://www.mylittleconfiserie.fr/fr/12-bonbons-confiseries#/page-2

 

Notice: Undefined index: _SERVER in/home/bonsplan/www2/cache/smarty/compile/2d/71/a5/2d71a535bb11db678e3382ccd80a4b9457248195.file.product-list.tpl.php on line 655

Notice: Trying to get property of non-object in/home/bonsplan/www2/cache/smarty/compile/2d/71/a5/2d71a535bb11db678e3382ccd80a4b9457248195.file.product-list.tpl.php on line 655

 

Si j'utilise votre méthode et désactive dans le hook header la page : "categories", je n'ai plus d'erreur, les facettes sont bien là, mais elles ne fonctionnent plus !

 

Avez-vous une autre moyen pour contourner le problème ?

 

Cordialement,

 

Emmanuel Dubois.


Pour info, en local sur mon PC le message d'erreur est plus détaillé :

 

Notice: Undefined index: _SERVER in D:\wamp\www\tools\smarty\sysplugins\smarty_internal_templatebase.php(157) : eval()'d code on line 655 Call Stack # Time Memory Function Location 1 0.0000 264864 {main}( ) ..\blocklayered-ajax.php:0 2 0.2480 23973296 BlockLayered->ajaxCall( ) ..\blocklayered-ajax.php:32 3 0.4620 31999208 SmartyCustomCore->fetch( ) ..\blocklayered.php:3166 4 0.4620 31999512 Smarty_Internal_TemplateBase->fetch( ) ..\SmartyCustom.php:110 5 2.3961 33388976 content_561a542e136734_38745728( ) ..\smarty_internal_templatebase.php:188

 

( ! ) Notice: Trying to get property of non-object in D:\wamp\www\tools\smarty\sysplugins\smarty_internal_templatebase.php(157) : eval()'d code on line 655 Call Stack # Time Memory Function Location 1 0.0000 264864 {main}( ) ..\blocklayered-ajax.php:0 2 0.2480 23973296 BlockLayered->ajaxCall( ) ..\blocklayered-ajax.php:32 3 0.4620 31999208 SmartyCustomCore->fetch( ) ..\blocklayered.php:3166 4 0.4620 31999512 Smarty_Internal_TemplateBase->fetch( ) ..\SmartyCustom.php:110 5 2.3961 33388976 content_561a542e136734_38745728( ) ..\smarty_internal_templatebase.php:188
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...