Jump to content
natachaC

[résolu] P 1.6.1.5 -> ps_product_reductions doesn't exist

Recommended Posts

Bonjour

en passant _PS_DEBUG_PROFILING_ sur true j'ai un beau message

 

[PrestaShopDatabaseException]

Table 'monsite.ps_product_reductions' doesn't exist

 

j'ai regardé sur d'autres presta installé et je ne trouve nul part cette table

 

quelqu'un saurait il  d’où elle sort ??

merci pour votre aide

Cordialement - Natacha

 

Edited by natachaC (see edit history)

Share this post


Link to post
Share on other sites

Elle doit dépendre d'un module qui s'est mal installé^^

 

Mais le message d'erreur doit être un peu plus long...

Share this post


Link to post
Share on other sites

bonjour et merci

c'est ce que j'ai cru moi aussi

cette table apparait dans le change log et c'est le seul endroit qui y fait référence

 

####################################
#   v1.6.1.2 - (2015-10-29)
####################################
    [-] FO : Fix #PSCSX-6699, Table 'ps_product_reductions' already exists

 

le message complet

explain SELECT SQL_NO_CACHE product_shop.id_product, IFNULL(product_attribute_shop.id_product_attribute,0) id_product_attribute
					FROM
					`ps_product_reductions` pr,
					`ps_product` p
					 INNER JOIN ps_product_shop product_shop
		ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1)
					LEFT JOIN `ps_product_attribute_shop` product_attribute_shop
				   		ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=1)
					WHERE p.id_product=pr.id_product AND (pr.id_product_attribute = 0 OR product_attribute_shop.id_product_attribute = pr.id_product_attribute) AND product_shop.`active` = 1
						 AND EXISTS(SELECT 1 FROM `ps_category_product` cp
				JOIN `ps_category_group` cg ON (cp.id_category = cg.id_category AND cg.`id_group` IN (3))
				WHERE cp.`id_product` = p.`id_product`)
					 AND product_shop.`visibility` IN ("both", "catalog")
					ORDER BY RAND() LIMIT 1

 

Edited by natachaC (see edit history)

Share this post


Link to post
Share on other sites

Oui mais non

Je me souviens de ce bug^^

C'est la requete qui a une coquille ca devrait être ps_group_reduction

 

Par contre le message ne donne pas le fichier en cause ?

Share this post


Link to post
Share on other sites

non aucune autre trace pour identifier d’où vient la requête

mais j'ai trouvé

 

Product.php -> getRandomSpecial

Db::getInstance()->execute('CREATE TEMPORARY TABLE `'._DB_PREFIX_.'product_reductions`

reste à comprendre pourquoi ça beug la table ne doit pas être créée

 

je vais vérifier sur une version qui n'a pas de promos et tester avec et sans

 

merci

Natacha

Share this post


Link to post
Share on other sites

Arf oui cette ligne à la con...

 

Vous êtes chez OVH ?

 

Votre client sql a perdu les droits admin et ne peut plus créer/supprimer de tables^^

 

Allez dans le panel ovh et ré-activez-les

Share this post


Link to post
Share on other sites

grand merci !!

c' est mon serveur de dév qui doit être mal paramétré
je vérifierai en prod au cas ou 

 

Cordialement

Natacha

Share this post


Link to post
Share on other sites

Bonjour,

 

j'ai le même problème sur 1.6.1.8 - et aucune idée comment résoudre le problème. Selon Bugtracker, c'est pas dans le code core, mais un module additionnel. Or j'en ai quasiment pas, et n'arrive pas à trouver lequel pourrait être coupable.

 

Merci pour toute aide, ca fait des semaines que je désespère sur ce problème!

 

Daniel

Share this post


Link to post
Share on other sites

Bonjour,

 

j'ai le même problème sur 1.6.1.8 - et aucune idée comment résoudre le problème. Selon Bugtracker, c'est pas dans le code core, mais un module additionnel. Or j'en ai quasiment pas, et n'arrive pas à trouver lequel pourrait être coupable.

 

Merci pour toute aide, ca fait des semaines que je désespère sur ce problème!

 

Daniel

Vous avez lu les messages plus haut ?

Votre utilisateur sql à les droits en écriture ?

Share this post


Link to post
Share on other sites

Vous avez lu les messages plus haut ?

Votre utilisateur sql à les droits en écriture ?

 

Merci d'avoir répondu si vite. Oui, et selon mon hébergeur (A2) tout est en ordre au niveau des privilèges. Y a-t-il d'autres détais que je pourrais éventuellement leur fournir, pour être sû qu'ils ont bien regardé comme il faut? Oui y a-t-il un moyen de confirmer que les privileges sont comme il faut? Un fichier test ou autre moyens?

 

J'ai aussi regardé sur Github, le bout de code qui devait corriger ce bug, il est bien présent dans mon installation.

Share this post


Link to post
Share on other sites

Pouvez-vous nous donner l'erreur complète qui s'affiche et dans quel cas ?

Share this post


Link to post
Share on other sites

Ca me fait uniquement ca quand je passe mon site en template default. Actuellement j'ai Warehouse theme activé, qui bizarrement ne fait pas cette erreur. Ou du moins, debug ne l'affiche pas.

 

J'ai seulement remarqué en fait parce que je suis temporairement repassé en default template à la recherche de la source de lenteur de mon initContent / display, c'est là que j'ai vu.

 

Je vais essayer de basculer le site en dafeult template à nouveau plus tard, et je vais poster l'intégralité du message d'erreur ici. Mon host parcontre est formel, pas de soucis de privileges au niveau de lútilisateur DB.

 

Merci encore pour l'aide, très appréciée.

Share this post


Link to post
Share on other sites

Bonjour,
 

avez vous trouvé une solution a ce problème ? car concernant mysql de mon coté je n'ai aucun problème de droit vu que je suis connecté en root sous wamp et j'ai aussi ce message d'erreur.

product_reductions' doesn't exist

explain SELECT SQL_NO_CACHE product_shop.id_product, IFNULL(product_attribute_shop.id_product_attribute,0) id_product_attribute
					FROM
					`ps_product_reductions` pr,
					`ps_product` p
					 INNER JOIN ps_product_shop product_shop
		ON (product_shop.id_product = p.id_product AND product_shop.id_shop = 1)
					LEFT JOIN `ps_product_attribute_shop` product_attribute_shop
				   		ON (p.`id_product` = product_attribute_shop.`id_product` AND product_attribute_shop.`default_on` = 1 AND product_attribute_shop.id_shop=1)
					WHERE p.id_product=pr.id_product AND (pr.id_product_attribute = 0 OR product_attribute_shop.id_product_attribute = pr.id_product_attribute) AND product_shop.`active` = 1
						 AND EXISTS(SELECT 1 FROM `ps_category_product` cp
				JOIN `ps_category_group` cg ON (cp.id_category = cg.id_category AND cg.`id_group` IN (1,2,5))
				WHERE cp.`id_product` = p.`id_product`)
					 AND product_shop.`visibility` IN ("both", "catalog")
					ORDER BY RAND() LIMIT 1

J'ai installé une version propre en parallèle et la table n'est pas présente même lorsque je crée des réductions sur des articles.

 

Seriez vous m'indiquer dans quel fichier je peux trouver les requêtes de création de table lors de l'installation de prestashop ou de mise à jour si nécessaire?

 

En vous remerciant.

 

Cordialement .

Share this post


Link to post
Share on other sites

Salut,

Même problème de mon côté Prestashop 1.6.1.17, PHP 7, MySQL 5.7.11.

Après quelques recherche, j'ai plutôt l'impression que c'est le create temporary table qui fonctionne différemment sur phpmyadmin. Les tables sont détruites plus vite que sur un serveur, et donc l'affichage ne se fait pas.

https://stackoverflow.com/questions/14426401/temporary-tables-not-working-in-phpmyadmin

Pour le fichier, il est bien pointé par l'OP sur ce post. Product.php fonction getRandomSpecial.

Pour contrer le problème (à ne faire qu'en local hein...), mettre en commentaire la ligne 2436

Db::getInstance()->execute('DROP TEMPORARY TABLE `'._DB_PREFIX_.'product_reductions`', false);

De cette manière au moins tu peux afficher tes logs et gérer les load time...

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More