Le 22/11/2019 à 12:09, Cerdic a écrit :
Ce réglage opcache est vraiment chiant et pénible :(

Je rencontrais plein de fois des situations où l'opcache foirait une mise à 
jour du core,
l'installation d'un plugin ou même simplement une modification d'un squelette.
Je force désormais le vidage des opcaches à chaque recalcul ainsi que les 
autres caches non spip
Il me semble que ça évite bien des prises de tête.

if (isset($_REQUEST['var_mode']) and ($_REQUEST['var_mode'] == 'recalcul')) {

    if (function_exists('spip_clear_varnish_cache'))
        spip_clear_varnish_cache();

    include_spip ('inc/invalideur');
    suivre_invalideur('recalcul');

    if (function_exists('opcache_reset'))
        opcache_reset();

    if (function_exists('apc_clear_cache')) {
        apc_clear_cache();
        apc_clear_cache('user');
    }

    if (function_exists('apcu_clear_cache')) {
        apcu_clear_cache();
    }

    spip_log("recalcul a vidé varnish, SPIP, opcache et apc_cache");
}

Faut il pas intégrer un vidage de cache plus radical que l'actuel
lors des installs, upgrades et recalculs ?
cf https://core.spip.net/issues/4261

Est-ce que tu peux executer le code suivant sur le serveur mutu en question et 
nous donner le résultat ?

Ce n'est pas moi qui ait le problème actuellement mais voici pour info :
OPCACHE Config
opcache_invalidate:true
opcache_get_configuration:true
opcache.enable:'1'
opcache.validate_timestamps:'1''30'
opcache.revalidate_freq:

JL


<?php
echo "OPCACHE Config<br />";
echo "<li>opcache_invalidate:" . 
var_export(function_exists('opcache_invalidate'), true);
echo "<li>opcache_get_configuration:" . 
var_export(function_exists('opcache_get_configuration'), true);
echo "<li>opcache.enable:" . var_export(ini_get('opcache.enable'), true);
echo 
"<li>opcache.validate_timestamps:".var_export(ini_get('opcache.validate_timestamps'),
 true);
echo 
"<li>opcache.revalidate_freq:".var_export(ini_get('opcache.revalidate_freq'));



--
Cédric
Le 21 nov. 2019 à 17:57 +0100, Jean Marie Grall 
<jeanmarie.lis...@cousumain.info>, a écrit :

Le 21/11/2019 à 15:27, Jean Marie Grall a écrit :

Le 21/11/2019 à 15:12, Bruno Bergot a écrit :
Hop,

Le 21/11/2019 à 15:06, Jean Marie Grall a écrit :
Salut,

sur un hébergement en particulier, lorsque j’installe Sélections
éditoriales par exemple, j'ai le message suivant sur la page
?exec=selections : https://pic.infini.fr/RsrpgjpV/IHRwgtc7.png
Et les tables ne sont effectivement pas créées. Même comportement
pour GIS.

Le problème apparait sur un seul hébergement (j'en ai testé 3 + wamp
en local) et je ne comprends pas d'où ça peut venir car ils ont les
mêmes caractéristiques :  OVH mutu avec PHP 7.2.19 (testé en 5.6.40
également) / MySQL 5.6.43

Je précise que je peux créer rubriques et articles, donc la base est
accessible en écriture.

Une idée du problème ?


Perso, sur les mutus OVH j'ai souvent des problèmes de mises à jour
des tables lors de l'upgrade des plugins (bug rencontré deux ou trois
fois le mois dernier). Pour contourner, je dois passer dans la table
spip_meta pour réduire le n° de version en base du plugin, puis
relancer l'upgrade des tables en passant par la page de gestion des
plugins.

Belle fourberie :) mais ça ne marche pas chez moi, en tout cas pour
l'installation du plugin.

Suite à un échange avec b_b, la solution qui fonctionne chez moi :
- installer le plugin
- attendre plus de 2s
- faire une réparation de la base (menu Maintenance > Maintenance technique)

L'idée (confirmer) est qu'à l'installation du plugin, le cache PHP
opcache (cache de 2s chez moi) empêche SPIP d'avoir les bons scripts
avec les instructions de création des tables. Donc, en réparant la base,
on relance les scripts d'installation mais, entre temps, le cache a été
vidé et on a la nouvelle version des scripts.

Indice qui va dans ce sens : à l'installation, avec
define('_LOG_FILTRE_GRAVITE', 8);, il n'y a pas d'erreurs mysql alors
que les tables ne sont pas créées.

V'là, merci pour la fourberie ;)

                jean marie


----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone



----
spip-zone@rezo.net - https://listes.rezo.net/mailman/listinfo/spip-zone

Répondre à