Se connecter
Se connecter

ou
Créer un compte

ou

Sujet Le club : ingénieurs systèmes et réseaux

  • 565 réponses
  • 23 participants
  • 21 506 vues
  • 17 followers
Sujet de la discussion Le club : ingénieurs systèmes et réseaux
Voilà, pour pas polluer les Noobs avec des acronymes à coucher dehors, welcome à tous les IT managers et autres ingés/techs, qui nagent dans les bits et les protocoles à longueur de journée.

:bravo:

One Breath III : Find out the end of the story, piece by piece : WBBTMR - One Breath III

I'm an alligator, I'm a mama-papa comin' for you

Afficher le sujet de la discussion
531
Tu as oublié de préciser que tu étais en version 10g.

Je ne tolère pas l'intolérance 

532
Voui c'est vrai Al1 :8O: mais comment t'as su :)

Sinon, il y a une nouveauté depuis t't à l'heure: maintenant ça merde à partir du 50° fichier.
Aucune idée pourquoi.
- du 1 au 49 : tous ok
- du 50 au dernier : tous ko, au motif "/home/xmd/batch/int_legales/work/581658.html, erreur #-29283-ORA-29283: invalid file operation
ORA-06512: at "SYS.UTL_FILE", line 536
ORA-29283: invalid file operation"

un simple vi /home/xmd/batch/int_legales/work/581658.html montre un fichier tout à fait correct.

[ Dernière édition du message le 04/07/2019 à 17:40:35 ]

533
daR > c'est le ulimit pour ton user, après selon le user sous lequel tourne ton/tes process oracle, le ulimit des descripteurs de fichier peut être différent. Il peut également y avoir une limite différente pour certains process en particulier. Et tout ça peut être géré par différents composants.

Mais vu que ça t'arrive systématiquement au seizième fichier et qu'a priori tu clos bien les fichiers ça me semble pas super probable que ça soit la limite de l'OS qui soit en cause là.

Edit > ha ben il semblerait que non en fait

[ Dernière édition du message le 04/07/2019 à 17:43:36 ]

534
T'es 100% certain que ta fermeture de fichier est bien dans ta boucle ? Et qu'elle fonctionne ?
535
Oui denf' certain que la fermeture est passée, je mets des traces pour cela dans le log.

En fait, la toute première opé dans la boucle du curseur est un test d'existence du fichier avec un UTL_FILE.FOPEN().
Si cette instruction passe, le fichier existe et peut être lu : la suite consiste à écrire divers trucs dans le XML, pi lire le fichier ouvert en début de boucle, écrire son contenu, fermer le fichier, et écrire la balise fermante dans le XML.
Fin de boucle, et passage à l'enregistrement suivant.

Les 49 premières fois (15 dans l'après midi), tout se passe à merveille.
Dès la 50° l'opération d'ouverture du fichier en début de boucle passe en EXCEPTION avec le message "invalid file operation"
536
extrait du log :
        ORDRE=162494 COMMANDE=237412
        . ok pour le texte : /home/xmd/batch/int_legales/work/162494.html
        . ouverture de la balise ANNONCE
        . lecture du texte
        . html lu et ?crit
        . lecture du client = 080628-EP MAIRIE PERPIGNAN, POLE HABITAT INDIGNE
        . lecture des criteres
        ORDRE=162495 COMMANDE=237413
        . ok pour le texte : /home/xmd/batch/int_legales/work/162495.html
        . ouverture de la balise ANNONCE
        . lecture du texte
        . html lu et ?crit
        . lecture du client = 080628-EP MAIRIE PERPIGNAN, POLE HABITAT INDIGNE
        . lecture des criteres
        ORDRE=162504 COMMANDE=237508
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162504.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation
        ORDRE=162506 COMMANDE=237510
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162506.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation
        ORDRE=162526 COMMANDE=237566
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162526.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation
        ORDRE=162527 COMMANDE=237567
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162527.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation
        ORDRE=162531 COMMANDE=237657
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162531.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation
        ORDRE=162570 COMMANDE=237806
        . ouverture impossible du fichier html : /home/xmd/batch/int_legales/work/162570.html, erreur #-29283-ORA-29283: invalid file operation
        ORA-06512: at "SYS.UTL_FILE", line 536
        ORA-29283: invalid file operation


Partout où y a "OK pour le texte" c'est que le fichier a bien été ouvert (ce que j'expliquais ci-dessus) et la mention "ouverture de la balise ANNONCE" précise qu'on a attaqué l'écriture dans le fichier de sortie.

Partout où y a "html lu et ?crit" (désolé pour l'encodage à la con d'un accent) c'est qu'on a passé (avec succès forcément) la ligne du UTL_FILE.FCLOSE().

[ Dernière édition du message le 04/07/2019 à 17:57:58 ]

537
Check et re-check les permissions, pas que des fichiers mais du dossier qui les contient. Vérifie qu'il n'y a pas d'ACL qui empêcheraient ton process oracle d'y accéder (avec getfacl).

[ Dernière édition du message le 04/07/2019 à 18:02:29 ]

538
qu'appelles-tu ACL ?

les permissions sont check et recheck, les fichiers à lire proviennent tous du même endroit, même fournisseur.
Ils sont tous en rw-rw-rw

j'ai ça sur l'erreur oracle 29283:
Citation :
ORA-29283: invalid file operation

Cause: An attempt was made to read from a file or directory that does not exist, or file or directory access was denied by the operating system.

Action: Verify file and directory access privileges on the file system, and if reading, verify that the file exists.

donc, je fais un vi du fichier censé merder, et il fonctionne...
539
Citation de getfacl :
getfacl: Removing leading '/' from absolute path names
# file: home/xmd/batch/int_legales/work/162504.html
# owner: xmd
# group: xmd
user::rw-
group::rw-
other::r--
540
Citation :
Ils sont tous en rw-rw-rw


Ben visiblement non :

Citation :
other::r--


Si ton process oracle tourne sous un autre user / group que xmd, il n'a pas accès en écriture à ce fichier.

[ Dernière édition du message le 04/07/2019 à 18:13:22 ]