Legilibre / salon

Un salon pour les discussions générales autour du projet Légilibre
https://github.com/Legilibre/salon/issues
2 stars 0 forks source link

Anomalie dans "Anomalies" #23

Open sdlng opened 2 years ago

sdlng commented 2 years ago

Bonjour je prends une ligne dans le fichier http://anomalies.legilibre.fr/logs/anomalies-20211231-230202.txt legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/00/70/43/JORFTEXT000000704342/texte/struct/LEGITEXT000006065644.xml: l'article LEGIARTI000006369553 référencé en position 1 est introuvable

J'ai constitué un stock en téléchargeant toutes les archives en les détarant, et en appliquant le fichier de suppression (liste_suppression_legi.dat). Sans utiliser les outils legilibre donc.

Or je constate que le fichier LEGIARTI000006369553 est bien présent dans mon stock, dans : \legi\global\code_et_TNC_en_vigueur\TNC_en_vigueur\JORF\TEXT\00\00\00\70\43\JORFTEXT000000704342\article\LEGI\ARTI\00\00\06\36\95 Il existe dans l'archive initiale fremium_legi_global_20191011-102231.tar.gz ainsi que dans l'archive 20210429-232036 /legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/00/70/43/JORFTEXT000000704342/article/LEGI/ARTI/00/00/06/36/95/LEGIARTI000006369553.xml

Autre exemple : legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/21/86/56/JORFTEXT000021865642/texte/struct/LEGITEXT000043634676.xml: l'article LEGIARTI000021866218 référencé en position 1 est introuvable

L'article est présent dans l'archive freemium également. legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/21/86/56/JORFTEXT000021865642/article/LEGI/ARTI/00/00/21/86/62/LEGIARTI000021866218.xml ainsi que dans l'archive 20210610-233256 /legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/21/86/56/JORFTEXT000021865642/article/LEGI/ARTI/00/00/21/86/62/LEGIARTI000021866218.xml

Pour une section legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/00/36/87/JORFTEXT000000368749/section_ta/LEGI/SCTA/00/00/06/10/36/LEGISCTA000006103629.xml: la section LEGISCTA000025022447 référencée en position 8 est introuvable La section se trouve pourtant dans l'archive freemium ainsi que dans LEGI_20200325-222005.tar.gz LEGI_20211203-230148.tar.gz

Sur 897 "introuvable"s : 747 sont présents dans les archives 150 sont effectivement introuvables dans les archives.

Il pourrait bien y avoir une anomalie, soit dans la constitution de votre stock soit dans la vérification de l'existence de la référence.

Merci pour votre travail.

Changaco commented 2 years ago

legi.py applique la liste de suppression après avoir lu une archive, donc :

sdlng commented 2 years ago

Un LEGIARTI000006369553 se trouve dans l'archive du 20210429-232036. Il serait supprimé juste après avoir été déployé, si je comprends correctement. Ne faudrait-il pas appliquer les suppressions avant d'intégrer l'archive ?

Changaco commented 2 years ago

Supprimer un fichier avant de le recréer n'aurait pas plus de sens que de le modifier avant de le supprimer. Il va falloir arrêter d'appliquer strictement les listes de suppression, et signaler comme anomalie le fait qu'une archive partielle contienne à la fois une mise à jour et une instruction de suppression pour un même fichier.

Changaco commented 2 years ago

Les changements de dossier ne sont pas un problème, legi.py les gère correctement. Le problème est quand une archive contient à la fois une mise à jour et une instruction de suppression pour exactement le même fichier.

Pour reprendre un des exemples précédents, l'archive 20210429-232036 contient à la fois une mise à jour du fichier LEGIARTI000006369553.xml dans le dossier TNC_en_vigueur et une instruction de suppression de ce même fichier dans liste_suppression_legi.dat. Illustration :

+legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/00/70/43/JORFTEXT000000704342/article/LEGI/ARTI/00/00/06/36/95/LEGIARTI000006369553.xml
-legi/global/code_et_TNC_en_vigueur/TNC_en_vigueur/JORF/TEXT/00/00/00/70/43/JORFTEXT000000704342/article/LEGI/ARTI/00/00/06/36/95/LEGIARTI000006369553