Quel est votre environnement ?
Debian 5.10.0-33-amd64
php 8.3.17
MySQL or MariaDB 10.5.28-MariaDB-0+deb11u2
auto hébergé 4 CPU 8 Go RAM sur ssd
200 utilisateurs
20k factures ventes
Quel est le comportement observé ?
arrivé sur la page de login les utilisateurs d’un groupe en particulier (« commerciaux » chez nous) ont la page qui charge infiniment puis timeout juste après avoir rentré login/pw puis cliqué sur login, en base j’ai une requête qui tourne en boucle. Ca semble corrélé car si je restart le maria le login fonctionne.
La base prend tout le CPU et ne répond plus.
J’ai chopé deux requêtes qui ont l’air de produire le bug :
une qui commence par SELECT date_format(f.date [......]
Debian 5 est bien la version que vous exécutez ? Ça paraît un peu surprenant avec php et mariadb dans ces versions, mais soit.
Concernant la requête, avez-vous essayé d’augmenter le max_execution_time de php pour voir si ça permettait de passer ?
Aussi, les logs de votre serveur web ou encore de Dolibarr pourraient donner de plus amples informations. Avez-vous regardé ce qu’il se passe dans ces fichiers au moment du plantage ?
Si vous entrez sur Dolibarr par une autre page, comme https://vortre.dolibarr.fr/projet/index.php?mainmenu=project&leftmenu= par exemple, avez-vous accès au reste des fonctionnalités ?
L’activation des slow-queries de mariadb pourrait aussi donner des pistes plus précises.
Bonjour après une rapide recherche/vérification dans le code, j’ai remarqué une requête foireuse dans la fonction getNbByMonth
cela n’arrive que lorsqu’un utilisateur est associé à un tiers
il y a une dizaine de requete impacté, je me lance de la correction