Chez 1&1, la configuration PHP contient une directive memory_limit -1
, c’est à dire pas de limite. Je dois dire que c’est la première fois que je vois ça — d’ailleurs je me demande comment ça se comporte dans le cas où il y a un réel dépassement de la mémoire disponible — sur un hébergement mutualisé !
Bref, ça a permis de débusquer un petit bug dans Clearbricks, qu’on va déployer dans la toute prochaine 2.14.3, dans la journée si j’ai assez de temps…
Au passage je pense que je vais aussi gérer le cas ou la valeur est nulle, ce qui n’a pas vraiment de sens. Du coup ce test suivant devrait faire le job (ligne 3) :
foreach ([null, '-1', '256M', '- 1', '0', ''] as $mem_limit) {
echo '<p>' . var_export($mem_limit, true) . ' → ';
if ($mem_limit && trim($mem_limit) === '-1' || !files::str2bytes($mem_limit)) {
echo 'no limit';
} else {
echo 'limited to ' . files::str2bytes($mem_limit);
}
echo '</p>';
}
Qui retourne :
NULL → no limit '-1' → no limit '256M' → limited to 268435456 '- 1' → no limit '0' → no limit '' → no limit
1 De mirovinben -
Ça me fait penser qu’il y a un moment que je voulais te demander où peut-on consulter “en clair” les changeset de Clearbricks ?
Parce que ces changeset listés dans la timeline sont… heu… comment dire… un peu hermétiques pour des vieux croutons comme moi.
2 De Franck -
Bonne question !
Les dépôts sont ici :
3 De Tomek -
J’ai 2-3 clients chez 1&1 et j’ai eu des surprises ces derniers temps, sans doute liées à un changement de config, et pas qu’avec Dotclear… Bizarre cet hébergeur.
4 De mirovinben -
Merci Franck pour les deux liens. Surtout le deuxième. Même si le premier est bien aussi. ;-)