spip-zone-commit@rezo.net a écrit le 20/09/2018 à 13:09 :
Author: cedric@yterium.com
Date: 2018-09-20 11:09:57 +0000 (Thu, 20 Sep 2018)
New Revision: 111634
Details: Connexion · GitLab
Cette révision empêche d'installer SPIP dans le cas suivant :
plugin memoization placé dans plugins-dist
Testé hors et dans un mutualisation de SPIP 3.2.1
À ce moment là, on a cette call stack (en mettant ligne 202 de ecrire/base/connec_sql.php
+ debug_print_backtrace();
include_spip('inc/minipres');
echo minipres(_T('info_travaux_titre'), _T('titre_probleme_technique'), array('status' => 503));
exit;
)
#0 spip_connect_sql(1, select, , ) called at [/var/www/_mutualisation_32/www/ecrire/base/abstract_sql.php:107]
#1 sql_serveur(select, , ) called at [/var/www/_mutualisation_32/www/ecrire/base/abstract_sql.php:242]
#2 sql_select(valeur, spip_meta, nom='secret_du_site', Array (), Array (), , Array (), , 1) called at [/var/www/_mutualisation_32/www/ecrire/base/abstract_sql.php:1603]
#3 sql_fetsel(valeur, spip_meta, nom='secret_du_site', Array (), Array (), , Array (), , 1) called at [/var/www/_mutualisation_32/www/ecrire/base/abstract_sql.php:1750]
#4 sql_getfetsel(valeur, spip_meta, nom='secret_du_site') called at [/var/www/_mutualisation_32/www/ecrire/inc/securiser_action.php:256]
#5 secret_du_site() called at [/var/www/_mutualisation_32/www/ecrire/inc/securiser_action.php:279]
#6 calculer_cle_action(memoization) called at [/var/www/_mutualisation_32/www/plugins-dist/_soyezcreateurs_/memoization/memoization_options.php:127]
#7 include_once(/var/www/_mutualisation_32/www/plugins-dist/_soyezcreateurs_/memoization/memoization_options.php) called at [/var/www/_mutualisation_32/www/ecrire/inc/utils.php:118]
#8 include_once_check(/var/www/_mutualisation_32/www/plugins-dist/_soyezcreateurs_/memoization/memoization_options.php) called at [/var/www/_mutualisation_32/www/sites/bird/tmp/cache/charger_plugins_options.php:5]
#9 include_once(/var/www/_mutualisation_32/www/sites/bird/tmp/cache/charger_plugins_options.php) called at [/var/www/_mutualisation_32/www/ecrire/inc_version.php:444]
#10 include(/var/www/_mutualisation_32/www/ecrire/inc_version.php) called at [/var/www/_mutualisation_32/www/ecrire/index.php:22]
Et c'est le drame, ligne 127 de memoization_options.php
$key = pack("H*", calculer_cle_action('memoization'));
fini par provoquer un appel à MySQL
qui plante l'installation ![]()
comme je ne sais pas comment gérer ça, je ne touche à rien.
Cerdic, tu vois comment gérer ça ?
PS : pour tester, il faut supprimer dans le cache charger_plugins_options.php et sans doute plugin_xml_cache.gz
--
RealET