You are not logged in.
Bonsoir,
Dans mes mains, le script "ldap_mass_sync.php" échoue avec l'erreur suivante:
PHP Warning: Module 'mysql' already loaded in Unknown on line 0
Processing LDAP Server: Dauphine, ID: 4
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 71 bytes) in /usr/share/glpi/inc/common.function.php on line 814
/var/log/glpi/php-errors.log est vide.
La ligne 814 de common.function.php est un code anti-XSS.
Je n'arrive pas à trouver la cause de ce problème. J'espère que vous pourrez m'aider ...
Martial.
Offline
bonjour,
quelle est votre plate-forme ? quel os ? quelle version de php ?
Offline
Bonsoir,
Linux (VM VMWare)
CentOS release 5.5 (Final)
php-5.3.4 (paquets remi)
Nous avons installé notre plateforme en utilisant le dépôt "remi". Les paquets PHP sont listés ci dessous. J'ai remarqué qu'ils viennent tous de "remi" sauf un : php-pear-DB-1.7.13-1.el5.centos.
php-common-5.3.4-0.1.201010230430.el5.remi
php-mbstring-5.3.4-0.1.201010230430.el5.remi
php-ldap-5.3.4-0.1.201010230430.el5.remi
php-xmlrpc-5.3.4-0.1.201010230430.el5.remi
php-imap-5.3.4-0.1.201010230430.el5.remi
php-domxml-php4-php5-1.21.2-1.el5.remi
php-devel-5.3.4-0.1.201010230430.el5.remi
php-pear-Cache-Lite-1.7.8-1.el5.remi
php-ezc-Base-1.8-1.el5.remi
php-pear-DB-1.7.13-1.el5.centos
php-gd-5.3.4-0.1.201010230430.el5.remi
php-soap-5.3.4-0.1.201010230430.el5.remi
php-pdo-5.3.4-0.1.201010230430.el5.remi
php-mysql-5.3.4-0.1.201010230430.el5.remi
php-cli-5.3.4-0.1.201010230430.el5.remi
php-xml-5.3.4-0.1.201010230430.el5.remi
php-PHPMailer-5.0.2-3.el5.remi
php-5.3.4-0.1.201010230430.el5.remi
php-pear-1.9.1-5.el5.remi
php-channel-ezc-1-1.el5.remi
php-ezc-Graph-1.5-1.el5.remi
php-pear-CAS-1.1.3-1.el5.remi
Et ci dessous les paquets "remi" hors PHP:
mysql-libs-5.5.6-1.el5.remi
mysql-5.5.6-1.el5.remi
ocsinventory-server-1.3.3-1.el5.remi
ocsinventory-1.3.3-1.el5.remi
glpi-mass-ocs-import-1.4.1-1.el5.remi
remi-release-5-7.el5.remi
mysqlclient15-5.0.67-1.el5.remi
mysql-server-5.5.6-1.el5.remi
glpi-0.78.1-1.el5.remi
ocsinventory-reports-1.3.3-1.el5.remi
glpi-reports-1.4.0-1.el5.remi
Merci pour votre aide.
Martial.
Offline
Dans le cas du RPM, la valeur memory_limit est fixée à 64M uniquement pour GLPI (dans /etc/httpd/conf.d/glpi.conf).
La valeur de 128M est celle par défaut du php.ini.
Si le script est exécuté en ligne de commande, voir le fichier /etc/php-cli.ini pour la passer à -1, ou lancer
php -d memory_limit=-1 /usr/share/glpi/scripts/ldap_mass_sync.php xxxxx
128M c'est carrément énorme,
Soit il y a énormément d'utilisateurs à synchroniser...
Soit il y a une fuite mémoire dans le script de synchro qu'il faudrait analyser plus en détail (wawa, une idée ? avec le script "alternatif", je synchronize 10000 users sans soucis...)
++
P.S. conseil : passer à glpi 0.78.2 (dans remi-test) et surtout à php 5.3.5 (dans remi) plutôt qu'à cette version dév.
Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/
Offline
Bonjour Martial,
tout d'abord comme le dit Remi, il serait vraiment bien de passer à glpi 0.78.2. J'ai fait un bon paquet de correctifs sur la partie LDAP, et le script d'import ne marchait... pas vraiment en 0.78.1
vous importez ou synchronisez tous les users de votre annauire ? ça fait combien de milliers ? vous avez passé quelle action au script ?
Walid.
Offline
Remi, Wawa,
J'ai procédé à la mise à jour en 0.78.2-1 via le dépôt remi-test. Ceci n'a pas corrigé mon problème.
Mais bonne (ou mauvaise) nouvelle, le memory_limit=-1 permet au script de se terminer avec succès.
L'annuaire contient quelques 20000 entrées, mais j'ai moins de 2000 utilisateurs sélectionnés par le filtre LDAP.
Ci dessous la sortie "ok" du script:
Processing LDAP Server: Dauphine, ID: 4
PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in /usr/share/glpi/inc/common.function.php on line 814
[root@glpi scripts]# sudo -u apache /usr/bin/php -d memory_limit=-1 ldap_mass_sync.php action=1 server_id=4
PHP Warning: Module 'mysql' already loaded in Unknown on line 0
Processing LDAP Server: Dauphine, ID: 4
...........................................................................................................................................................................................................
Imported : 0
Synchronized : 199
Deleted from LDAP : 4
Comment puis-je confirmer l'hypothèse de Remi quant à une "fuite mémoire" ?
Last edited by lebec (2011-01-30 15:02:38)
Martial.
Offline