astrodbtoolkit / astrodbtoolkit/AstrodbKit
Nulls and load_table
- Langage dominant
- Python
- Étoiles
- 12
- Forks
- 5
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Feedback from https://github.com/wvining/MIRION_Database_v4/blob/main/workflow.md. I don't really understand this and am not sure if it needs fixing but FYI:
> Discovered and worked around an astrodbkit quirk: load_table calls .insert().values(data) unconditionally — for data == [] (an empty-array reference JSON file), SQLAlchemy's insert().values([]) inserts one all-default row rather than zero rows, which fails NOT NULL constraints. Fix: don't leave empty-array placeholder files for Publications/AssociationList/ParameterList/SourceTypeList — load_table only loads a lookup table if its JSON file exists at all, so deleting the file (rather than emptying it to []) skips the load cleanly. These will be (re)created for real once Phases 6-7 populate them.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par lire workflow.md et localiser le point d’entrée load_table ; comparez le comportement lorsque les fichiers JSON référencés sont absents et lorsqu’ils contiennent des tableaux vides. Confirmez si les fichiers de lookup contenant des tableaux vides doivent être ignorés sans insérer de lignes, et identifiez la mise à jour attendue des tests ou de la documentation. Le payload ne nomme aucun fichier d’implémentation ni aucun test.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python, sqlalchemy
- Domaine
- databases
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100