Skip to content
Extraits de code Groupes Projets
  1. mai 09, 2015
  2. mai 08, 2015
  3. mai 07, 2015
  4. mai 03, 2015
  5. avr. 29, 2015
  6. avr. 26, 2015
  7. avr. 25, 2015
  8. avr. 22, 2015
  9. avr. 11, 2015
  10. avr. 10, 2015
  11. avr. 08, 2015
  12. mars 29, 2015
  13. mars 25, 2015
  14. fév. 23, 2015
    • cerdic's avatar
      addbf6e1
    • cerdic's avatar
      Bugfix : un unset sur une valeur de session ne doit pas generer un cache de... · d74c9825
      cerdic a rédigé
      Bugfix : un unset sur une valeur de session ne doit pas generer un cache de session pour un visiteur anonyme sans session (effet papillon d'un petit bug sur session_set qui provoque une generation du cache à l'infini). 
      Cas typique : 
      - le plugin panier verifie a chaque hit si le visiteur a un panier en session et sinon par precaution appelle session_set('id_panier') pour unset une evenuelle valeur
      - session_set peuple la valeur a null et appelle ajouter_session()
      - ajouter_session voit que le visiteur n'a pas de cookie session et genere un hash de session
      - il inspecte le tableau de session voit qu'il n'y a rien a enregistrer et rend la main ni vu ni connu (croyait-il).
      Mais comme on a renseigne $_COOKIE[spip_session] celui-ci est pris en compte dans la fonction spip_session() et genere un cache sessionné. Le plus drole c'est qu'on ne pose le cookie. Donc on recommence au hit suivant avec un nouvel identifiant de session, ce qui est une catastrophe en performance si le site utilise des balises #SESSION. Chaque hit sur le site génére un nouveau cache (donc calcul, donc ecriture sur le disque, donc gonflement du cache etc.)
      
      Pour mémoire quand on joue avec les sessions dans les plugins et les squelettes il faut toujours verifier que au final un curl anonyme sur le site est servi sans aucun "Calcul" ni "Ecriture du cache" dans spip.log.
      d74c9825
  15. fév. 16, 2015
  16. fév. 14, 2015
  17. fév. 10, 2015
  18. fév. 07, 2015
  19. jan. 21, 2015
    • cerdic's avatar
      Si une fonction wrap_embed_html est definie, on l'appelle en lui passant le... · 338161c9
      cerdic a rédigé
      Si une fonction wrap_embed_html est definie, on l'appelle en lui passant le contenu source et le html qu'on s'apprete a embed dans le contenu riche. 
      Cette fonction peut etre utilisee pour encapsuler ce contenu dans un markup qui l'indique comme non editable dans un editeur wysiwyg et qui porte la trace du raccourci source pour permettre la conversion html=>raccourcis SPIP
      
      338161c9
  20. déc. 20, 2014
  21. déc. 15, 2014
  22. déc. 10, 2014
  23. déc. 07, 2014
  24. déc. 02, 2014
    • cerdic's avatar
      L'ouverture/fermeture immédiate d'une socket pour lancer le cron en async peut... · ca7c8e49
      cerdic a rédigé
      L'ouverture/fermeture immédiate d'une socket pour lancer le cron en async peut bloquer un process apache sur le serveur, qui reste en attente betement. Il suffit alors d'avoir beaucoup de site sur un serveur pour arriver parfois à consommer le MaxClient Apache, ce qui est embêtant.
      On essaye donc autant que possible de lire la réponse du serveur pour fermer proprement et libererer la connexion, en se donnant un timeout de 200ms. De temps en temps il arrivera qu'on parte comme un sauvage sans le faire, mais tant que ça reste statistiquement occasionnel c'est pas grave.
      ca7c8e49
  25. déc. 01, 2014
Chargement en cours