[PERL] bizarre retour de system

sbouli Messages postés 208 Statut Membre -  
sbouli Messages postés 208 Statut Membre -
Bonjour,

J'ai un script PERL qui tourne sur plusieurs machines, plusieurs fois par jour. Parfois, pour une ou 2 machines données, j'ai une erreur sur l'appel d'un fichier php, le code du script est le suivant :

@args=("/usr/bin/php", "/root/chemin/vers/le/PHP/fichier.php", "$param1", "$param2");
system (@args) == 0
	or die "failed bulk insert php system @args\nerreur failed: $?";


et lors de l'erreur, j'obtiens le log suivant :
failed bulk insert php system 
/usr/bin/php /root/chemin/vers/le/PHP/fichier.php valeur_param1 valeur_param2

erreur failed: 0

at /root/schedule/envoi_des_mails/convert_log2bdd.pl line 260.


on voit bien que le $? vaut 0 et pourtant je suis rentré dans le die alors que je test avec ==0

je comprend pas ....

au secours ...

Stéphane

4 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    Mets aussi $! dans ton die, pour voir l'erreur système
    0
  2. sbouli Messages postés 208 Statut Membre 2
     
    j'ai eu un retour :
    Ne peut allouer de la mémoire

    je ne comprend pas ... j'ai de la RAM libre :

    # free
                 total       used       free     shared    buffers     cached
    Mem:       4078396    1054620    3023776          0      63328     768040
    -/+ buffers/cache:     223252    3855144
    Swap:      1044208          0    1044208
    


    et les partitions ont de la place aussi :

    # df -h
    Sys. de fich.            Tail. Occ. Disp. %Occ. Monté sur
    rootfs                5,0G  2,8G  1,9G  60% /
    /dev/root             5,0G  2,8G  1,9G  60% /
    tmpfs                 2,0G  108K  2,0G   1% /var/run
    tmpfs                 2,0G     0  2,0G   0% /var/lock
    /dev/root             5,0G  2,8G  1,9G  60% /dev/.static/dev
    udev                  2,0G   36K  2,0G   1% /dev
    tmpfs                 2,0G     0  2,0G   0% /dev/shm
    tmpfs                 2,0G  108K  2,0G   1% /var/run
    tmpfs                 2,0G     0  2,0G   0% /var/lock
    /dev/md2              683G  2,3G  646G   1% /home
    


    une idée ?

    Stéphane
    0
  3. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    et quelle erreur s'affiche avec
    die "failed bulk insert php system @args\nerreur failed: ", $?>>8 ;
    0
  4. sbouli Messages postés 208 Statut Membre 2
     
    en fais, j'ai compris, c'est un tableau que je crée en partant d'un fichier mais le fichier avait tendance à grossir sans jamais se purger donc au final mon tableau explosait la RAM et c'était déclenché par l'appel system à php qui doit prendre son petit morceau de RAM pour se lancer ... je corrige donc mon code pour ajouter une date et purger les "vieille" ligne ...

    Merci !

    Stéphane
    0