becrew33 Posted March 6, 2013 Share Posted March 6, 2013 Lors de la copie des données d'une multi-boutique à une autre (une nouvelle) ... Voici un bug qui ce produit lorsque 15 multi-boutiques de 150 000 produits sont présentes : Il semble qu'il y a une erreur sur cette requête : les UPDATE sont ajoutés lors de chaque nouvelle requête ... UPDATE ps_product a INNER JOIN ps_product_shop product_shop ON ( product_shop.id_product = a.id_product AND product_shop.id_shop IN ( 14, 5, 27, 1, 11, 12, 13, 46, 26, 15, 47, 50, 48, 49, 51 ) ) SET a.indexed = '1', product_shop.indexed = '1' WHERE a.id_product IN ( 5521, 5525, 5546, 5564, 5693, 5694, 5695, 5699, 5700, 5701, 5702, 5703, 5704, 5706, 6392, 6393, 6394, 6395, 6396, 6397, 6398, 6399, 6400, 6402, 6403, 6411, 6412, 6413, 6414, 6415, 6417, 6418) UPDATE ps_product a INNER JOIN ps_product_shop product_shop ON ( product_shop.id_product = a.id_product AND product_shop.id_shop IN ( 14, 5, 27, 1, 11, 12, 13, 46, 26, 15, 47, 50, 48, 49, 51 ) ) SET a.indexed = '1', product_shop.indexed = '1' WHERE a.id_product IN ( 5521, 5525, 5546, 5564, 5693, 5694, 5695, 5699, 5700, 5701, 5702, 5703, 5704, 5706, 6392, 6393, 6394, 6395, 6396, 6397, 6398, 6399, 6400, 6402, 6403, 6411, 6412, 6413, 6414, 6415, 6417, 6418, 6419, 6420, 6431, 6434, 6438, 6439, 6441, 6443, 6447, 6448, 6449, 6450, 6453, 6454, 6505, 6507, 6509, 6510, 6511, 6512, 6513, 6514, 6516, 6517, 6518, 6520, 6521, 6522, 6523, 6524, 6525, 6527, 6532, 6725, 6727, 6731, 6736, 6737, 6741, 6743, 6748, 6754, 6780, 6782, 6785, 6786, 6787, 6788, 6790, 6791, 6799, 6800, 6801, 6803, 6804, 6805, 6806, 6807, 6813, 6815, 6828, 6894, 7007, 7012, 7227, 7282, 7633, 7637, 7639, 7661, 7663, 7675, 7685, 7687, 7689, 7697, 7715, 7723, 7725, 7727, 7733, 7757, 7778, 9180, 9182, 9184, 10699, 10741, 10800, 10801, 10802, 10803, 10804, 10805, 10806, 10807, 10808, 10809, 16894, 16896, 16910, 16913, 16954, 16955, 16973, 16974, 16975, 16983, 16984, 16991, 16992, 17146, 17147, 17148, 17151, 17155, 17164, 17192, 17197, 17202, 17217, 17221, 17224, 17245, 17252, 17255, 17399, 17413, 17466, 17507, 17535, 17540, 17593, 17599, 17669, 17688, 17690, 17692, 17703, 17711, 17712, 17718, 17970, 17998, 18009, 18014, 18015, 18017, 18035, 18082, 18093, 18096, 18100, 18140, 18148, 18182, 18229, 18234, 18238, 18242, 18264, 18265, 18269, 18270, 18321, 18327, 18385, 18393, 18397, 18400, 18411, 18417, 18419, 18439, 18440, 18443, 18444, 18450, 18452, 18463, 18492, 18493, 18502, 18520, 18531, 18534, 18536, 18551, 18559, 18564, 18579, 18583, 18595, 18600, 18644, 18645, 18658, 18661, 18667, 18710, 18713, 18719, 18722, 18725, 18731, 18734, 18735, 18737, 18738, 18744, 18745, 18746, 18749, 18752, 18753, 18760, 18762, 18764, 18768, 18769, 18777, 18794, 18828 ) après recherche, impossible de trouver le code qui génère cette requête SQL ... merci Link to comment Share on other sites More sharing options...
becrew33 Posted March 8, 2013 Author Share Posted March 8, 2013 bonjour, Personne n'a de réponses à m'apporter ? Link to comment Share on other sites More sharing options...
becrew33 Posted March 11, 2013 Author Share Posted March 11, 2013 (edited) le bug : lors de la copie d'une multiboutique à l'autre ... s'il y a de nombreux produits (plus de 100 000) ... un UPDATE fait planter les serveurs MySQL car il cumule les updates ... /classes/Search.php protected static function setProductsAsIndexed(&$products) { if (count($products)) { ObjectModel::updateMultishopTable('Product', array('indexed' => 1), 'a.id_product IN ('.implode(',', $products).')'); } $products = array(); } OU/ET /controllers/admin/AdminShopController.php public function processAdd() { ... // annule l'indexation au moment de la copie ............ // Search::indexation(true); return $object; } PS : vous devez indexer par la suite ............ PS : il reste un bug sur l'indexation , qui tourne en boucle infini ... Edited March 11, 2013 by becrew33 (see edit history) Link to comment Share on other sites More sharing options...
bidjoubob Posted April 3, 2013 Share Posted April 3, 2013 Avez-vous trouvé une solution ? je suis face au même problème, j'ai plus de 100 multi-boutiques avec 1000 produits, l'indexation étant longue à la création d'une nouvelle boutique, je la stoppe moi même pour la reprendre plus tard. Le soucis je n'arrive pas à avoir de résultat dans le moteur de recherche et pourtant la BDD est pleine ?? Les seules boutiques ayant des résultats sont celles par défaut. Je suis en prestashop 1.5.2 sur serveur dédié OVH, j'ai bien essayé de mettre à jour avec des fichiers de la 1.5.4 mais sans résultats. 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