Se connecter
Se connecter

ou
Créer un compte

ou
FR
EN

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

  • 607 réponses
  • 28 participants
  • 24 256 vues
  • 21 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:

In the midnight hour, she cried more, more, more, with a rebell yell she cried more more more...

Vos meilleures BO

Afficher le sujet de la discussion
526
Citation de tobby :
J'ai une question intime au admin d'AF mais pas que.
J'ai remarqué rapidement que le certificat ssl était estampillé amazon. AF a été migré sur AWS?


https://blog.audiofanzine.com/2018/04/audiofanzine-change-dhebergeur/

:-D

« What is full of redundancy or formula is predictably boring. What is free of all structure or discipline is randomly boring. In between lies art. » (Wendy Carlos)

527
Ok effectivement c'est pas d'aujourd'hui mais c'est pas si vieux. Merci pour la réponse.
l'avantage de ce type de plateforme, c'est l'agilité (ce terme me fait toujours rire), vous avez des soucis au départ du à l'architecture sous dimensionné, et il a fallu quelques semaines pour retrouver une situation normale ? C'est pas une critique du tout. Personne n'aime quand ça chie et surtout pas ceux qui bossent dessus. Mais ça a manqué d'agilité ? Je dis ça parce que sur le papier c'est toujours beau. Et aussi parce que j'aimerais bien bosser sur une migration de ce niveau, moi avec mes hyperV et vmware....

y'a pas à tortiller du cul pour chier droit

528
Des ingénieurs SGBD Oracle dans la salle ?

J'ai un curseur sur une table de la base, qui retourne 210 enregistrements.
Je dois écrire un fichier XML à partir de ces enregistrements : pour chacun d'eux, les valeurs à écrire dans le XML sont tirées de la base, et une dernière doit être lue dans un fichier texte, par ailleurs parfaitement accessible au SGBD (directory déclaré avec les droits kivonbien).
A chaque passe du curseur, ce fichier texte est ouvert, lu, et refermé.
Le seul qui reste constamment ouvert est donc le fichier XML en cours d'écriture.

Ce qu'il se passe : systématiquement à partir du seizième élément et au-delà, le SGBDR refuse obstinément d'ouvrir les fichiers textes...
Obstinément signifie : le 16° fichier existe, comme les 15 précédents (qui ont tous été lus sans aucun problème) et absolument tous les suivants, il est non vide, il est situé au même endroit, dispose des même droits rw-rw-rw et appartient au même propriétaire.
J'ai rusé pour limiter les enregistrements renvoyés par le curseur au 15 et 16° de la liste initiale: ouverture sans aucun souci du fichier 16 qui avait été refusé à la passe précédente, donc, il n'y a pas de problème inhérent au fichier lui-même.
J'ai re-rusé pour renvoyer une autre liste que la liste initiale: "ouverture impossible" à partir systématiquement du 16° fichier ouvert. Quels que soient les enregistrements renvoyés par le curseur, le SGBD refuse toute ouverture à partir du 16° fichier, et tous les autres.
J'ai tenté un FFLUSH du fichier XML en écriture à chaque passe. Aucun effet.

Vous connaîtriez une limite par défaut au nombre de fichier ouverts ?
Je rappelle que ce ne sont pas des ouvertures concurrentes puisque chaque fichier est supposé être ouvert, lu, et refermé avant de passer au suivant.

Merci pour votre aide.
529
Citation :
Vous connaîtriez une limite par défaut au nombre de fichier ouverts ?


Si t'es sur un unix like tu peux voir ta limite de descripteurs de fichiers de l'OS (pour ton utilisateur) avec ulimit -n, mais elle est en général assez élevée pour que ça ne cause pas de soucis dans la majorité des cas.

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

530
ulimit -n = 1024
visiblement c'est pas ça... pi là c'est des fichiers ouverts et refermés, et non pas ouvert en concurrence...

m'ci quand même mon denfouchérinet

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

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 ]

541
Citation :
qu'appelles-tu ACL ?


Access Control List, c'est une liste de permission plus complexes et plus granulaire que les permissions POSIX.1

Ca peut être traitre parce que ls -l ne t'indique les fichiers / répertoires qui ont des ACL que par un + à la fin des permissions et ne détaille pas ces ACL.

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

542
J'ai par acquis de conscience tenté un chmod 666 *html tous les fichiers sont au même masque.
J'ai relancé : même erreur au même endroit.
Le user oracle est en effet un autre user que celui que j'utilise pour ouvrir ma session, mais il appartient au même groupe.

J'ai décalé l'ensemble des résultats, pour sauter le premier élément du curseur et commencer au second.
Ben au lieu de merder sur le fichier indiqué dans mon log, il merde au suivant.
En bref, c'est toujours le 50° qui fout le dawa. Quant à celui qui n'avait pas pu être ouvert (le 50° de la fois précédente) il l'a été ce coup-ci.

On dirait donc que c'est pas lié aux droits, mais au nombre de fichiers ouverts.
543
écoute là je me casse, je laisse tomber jusqu'à demain. :(
Merci bien pour ta sollicitude ;)
544
Si tu peux redémarrer ton process Oracle, fais le et teste de nouveau : si ça bloque encore à un nombre de fichier précis et différent d'avant ça ressemble déjà plus à un soucis genre ulimit.

Sinon installe XP, Excel et fuck that shit.

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

545
Citation :
Sinon installe XP, Excel et fuck that shit.

Your message was forwarded to admin@la_boite_a_darinze.com


Non mais si je peux pas me dépêtrer de ça, je vais être obligé de recoder toute ma proc SQL en Cobol. Putain de misère :|
J'hallucine quand même d'être bloqué depuis lundi par ça et de ne pouvoir fournir les fichiers que je dois fournir.
546
Citation de daRinze :
extrait du log :
  . lecture du client = 080628-EP MAIRIE PERPIGNAN, [b]POLE HABITAT INDIGNE[/b]
        . 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


Vous avez été hackés par Droit au Logement ? [img alt=":noidea:"]https://static.audiofanzine.com/images/audiofanzine/interface/smileys/noidea.gif[/img]

« What is full of redundancy or formula is predictably boring. What is free of all structure or discipline is randomly boring. In between lies art. » (Wendy Carlos)

547
pas du tout, ce sont des annonces légales qui paraissent dans le canard :)
EP signifie que c'est une enquête publique ;)
548
J'ai honte. :|








J'ai honte. :oops:







Citation de Infierno :
T'es 100% certain que ta fermeture de fichier est bien dans ta boucle ? Et qu'elle fonctionne ?




Oui j'ai très honte. :facepalm:

[ Dernière édition du message le 05/07/2019 à 10:53:48 ]

549
L'erreur con qu'on pense avoir vérifié 100 fois alors qu'en fait non. Merde classique. lolragev2.gif
550
C'est à ça que devrait servir la "revue de code entre pairs" : voir l'erreur qu'on a laissé passer...:-D

Je ne tolère pas l'intolérance