Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gestion correcte des doublons #8

Merged
merged 4 commits into from
Feb 28, 2017
Merged

Gestion correcte des doublons #8

merged 4 commits into from
Feb 28, 2017

Conversation

Changaco
Copy link
Member

La solution de legi.py au problème des fichiers doublons dans les archives LEGI a toujours été de prendre les données dans le fichier le plus récent (en se basant sur le mtime), et jusqu'à présent les fichiers plus anciens n'étaient pas conservés. Ce dernier point pose problème, car quand le fichier le plus récent est supprimé dans une version ultérieure de la base, sans que le(s) fichier(s) plus ancien(s) soi(en)t également supprimé(s), alors la BDD produite par legi.py n'est plus complète.

Les changements apportés par cette Pull Request corrige ce problème de la façon suivante :

  • les données des fichiers doublons sont enregistrées
  • quand le fichier le plus récent est supprimé ses données sont remplacées par celles du deuxième fichier le plus récent, si celui-ci existe évidemment

La mise en pratique de ce nouveau fonctionnement nécessite de recréer la BDD depuis le début, c'est pourquoi la migration automatique fait le vide.

@Changaco
Copy link
Member Author

J'ai fini de faire tourner cette branche pendant la nuit. La taille du fichier final est presque la même qu'avant : 3,4Go contre 3,3Go. Le nombre de lignes dans la table duplicate_files est descendu à 21975, contre 33158 avant. Le nombre d'anomalies détectées a lui fortement augmenté, à 3314 (pour la version 20170227-213627) contre environ 1900 avant. Les anomalies supplémentaires sont des articles/sections orphelins et semblent valides.

Bref, tout me semble OK.

@Changaco Changaco merged commit 92ff9ec into master Feb 28, 2017
@Changaco Changaco deleted the duplicates branch February 28, 2017 10:31
@Changaco
Copy link
Member Author

Oups, la "migration" automatique ne fonctionne pas (sqlite3.OperationalError: Cannot add a NOT NULL column with default value NULL, alors que la table en question est vide et donc qu'ajouter une colonne non-nulle n'est pas un problème).

Changaco added a commit that referenced this pull request Feb 28, 2017
@Changaco
Copy link
Member Author

Corrigé dans 40dbccc.

Seb35 pushed a commit to Seb35/legi.py that referenced this pull request Jan 8, 2020
…DME-replace-Legilibre-by-SocialGouv

docs(README): replace Legilibre by SocialGouv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant