RealET
Novembre 8, 2018, 9:47
1
Bonjour,
J'ai migré dernièrement un site de SPIP 3.1 à SPIP 3.2.1 (SVN).
Et un modèle n'est plus interprété :
http://internet22.catholique.fr/Couverture-web-des-paroisses-du-diocese.html
Il s'agit de https://contrib.spip.net/Plugin-Image-Cliquable
J'ai fait des tests en supprimant des items des paramètres.
En gros, à 2646 ça passe.
Mais à 2749, ça casse.
Ça marchait en SPIP 3.1
Autre différence : avant, le serveur était en PHP 5.6 (Debian 8)
Maintenant, PHP 7.0 (Debian 9)
Bug de SPIP ?
--
RealET
RealET
Novembre 10, 2018, 3:55
2
RealET a écrit le 08/11/2018 à 10:47 :
Bonjour,
J'ai migré dernièrement un site de SPIP 3.1 à SPIP 3.2.1 (SVN).
Et un modèle n'est plus interprété :
http://internet22.catholique.fr/Couverture-web-des-paroisses-du-diocese.html
Il s'agit de Plugin Image Cliquable - SPIP-Contrib
J'ai fait des tests en supprimant des items des paramètres.
En gros, à 2646 ça passe.
Mais à 2749, ça casse.
Ça marchait en SPIP 3.1
Autre différence : avant, le serveur était en PHP 5.6 (Debian 8)
Maintenant, PHP 7.0 (Debian 9)
Bug de SPIP ?
Je complète le rapport de bug.
Testé en local avec le plugin https://contrib.spip.net/Modele-exergue , ceci est traité sans problème :
<exergue|texte=123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 12345|position=left>
Alors que si je rajoute 1 caractère, il n'y a plus rien de visible de produit.
Le code contient :
<p><tt></tt></p>
Alors que normalement, ça produit :
<div class="exergue float-left">
<p>123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 12345</p>
</div>
Je ne m'explique même pas les <tt></tt> produits !!!!!!
--
RealET
b_b
Novembre 13, 2018, 8:46
3
Hop,
Le 10/11/2018 à 16:55, RealET a écrit :
Je complète le rapport de bug.
Testé en local avec le plugin https://contrib.spip.net/Modele-exergue ,
Alors que si je rajoute 1 caractère, il n'y a plus rien de visible de produit.
Le code contient :
<p><tt></tt></p>
Je ne m'explique même pas les <tt></tt> produits !!!!!!
Ça semble être le rendu du modèle suivant dans textwheel :
https://zone.spip.net/trac/spip-zone/browser/spip-zone/_core_/plugins/textwheel/modeles/dist.html
++
b_b
RealET
Novembre 13, 2018, 11:06
4
Bruno Bergot a écrit le 13/11/2018 à 09:46 :
Hop,
Le 10/11/2018 à 16:55, RealET a écrit :
Je complète le rapport de bug.
Testé en local avec le plugin https://contrib.spip.net/Modele-exergue ,
Alors que si je rajoute 1 caractère, il n'y a plus rien de visible de produit.
Le code contient :
<p><tt></tt></p>
Je ne m'explique même pas les <tt></tt> produits !!!!!!
Ça semble être le rendu du modèle suivant dans textwheel :
https://zone.spip.net/trac/spip-zone/browser/spip-zone/_core_/plugins/textwheel/modeles/dist.html
Merci.
Ça explique ce qui pourrait générer ce <tt>
Mais pas cette limite en nombre de caractères dans un modèle.
--
RealET
JLuc
(JLuc)
Novembre 13, 2018, 4:34
5
Le 13/11/2018 à 12:06, RealET a écrit :
https://zone.spip.net/trac/spip-zone/browser/spip-zone/_core_/plugins/textwheel/modeles/dist.html
Merci.
Ça explique ce qui pourrait générer ce <tt>
Mais pas cette limite en nombre de caractères dans un modèle.
Si "dist" est (comme ailleurs) ce qui s'applique par défaut
c'est que le parseur de reconnaît plus le modèle
quand il y a trop loin entre le début et la fin......
JL
RealET
Novembre 14, 2018, 10:48
6
RealET a écrit le 08/11/2018 à 10:47 :
Bonjour,
J'ai migré dernièrement un site de SPIP 3.1 à SPIP 3.2.1 (SVN).
Et un modèle n'est plus interprété :
http://internet22.catholique.fr/Couverture-web-des-paroisses-du-diocese.html
Il s'agit de Plugin Image Cliquable - SPIP-Contrib
J'ai fait des tests en supprimant des items des paramètres.
En gros, à 2646 ça passe.
Mais à 2749, ça casse.
Ça marchait en SPIP 3.1
Autre différence : avant, le serveur était en PHP 5.6 (Debian 8)
Maintenant, PHP 7.0 (Debian 9)
Bug de SPIP ?
Non, problème introduit avec PHP 7 (PHP 5 ne l'avait pas).
Trouvé via php - RegEx not working for long pattern PCRE's JIT compiler stack limit - PHP7 - Stack Overflow
En local, je n'ai plus le problème en ayant mis dans mes_options.php :
ini_set('pcre.jit', 0);
Mais (pour l'instant), ça ne change rien en ligne
montre que ça plante de php 7.0.30 à 7.3.0alpha2
Et que ça remarche à partir de l'alpha3
Et que ça marchait en 5.6
--
RealET
RealET
Novembre 14, 2018, 4:09
7
RealET a écrit le 14/11/2018 à 11:48 :
RealET a écrit le 08/11/2018 à 10:47 :
Bonjour,
J'ai migré dernièrement un site de SPIP 3.1 à SPIP 3.2.1 (SVN).
Et un modèle n'est plus interprété :
http://internet22.catholique.fr/Couverture-web-des-paroisses-du-diocese.html
Il s'agit de Plugin Image Cliquable - SPIP-Contrib
J'ai fait des tests en supprimant des items des paramètres.
En gros, à 2646 ça passe.
Mais à 2749, ça casse.
Ça marchait en SPIP 3.1
Autre différence : avant, le serveur était en PHP 5.6 (Debian 8)
Maintenant, PHP 7.0 (Debian 9)
Bug de SPIP ?
Non, problème introduit avec PHP 7 (PHP 5 ne l'avait pas).
Trouvé via php - RegEx not working for long pattern PCRE's JIT compiler stack limit - PHP7 - Stack Overflow
En local, je n'ai plus le problème en ayant mis dans mes_options.php :
ini_set('pcre.jit', 0);
Mais (pour l'instant), ça ne change rien en ligne
Online PHP editor | output for X5N5l
montre que ça plante de php 7.0.30 à 7.3.0alpha2
Et que ça remarche à partir de l'alpha3
Et que ça marchait en 5.6
regex101: build, test, and debug regex permet de voir que la regex fait énormément de backtrack et donc d'étapes : 19105 étapes.
J'ai idée que l'usage de conditions serait plus efficace, mais j'ai pas trouvé comment.
--
RealET
RealET
Novembre 17, 2018, 3:14
8
Après avoir testé que ça plantait aussi sur SPIP Contrib, j'ai créé un ticket : https://core.spip.net/issues/4230
--
RealET