MerginMaps / MerginMaps/python-api-client
Vacuuming
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 23
- Forks
- 12
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 7
Description
https://github.com/MerginMaps/python-api-client/blob/master/mergin/utils.py#L99
Vacuuming could be useful even for gpkgs without the -wal sidecar
Vacuuming takes some time, so we should check that it is worth it.
Sources
https://gdal.org/en/stable/drivers/vector/gpkg.html
When dropping a table, or removing records from tables, the space they occupied is not immediately released and kept in the pool of file pages that SQLite may reuse later. If you need to shrink the file to its minimum size, you need to issue an explicit "VACUUM" SQL request.
https://sqlite.org/lang_vacuum.html
When content is deleted from an SQLite database, the content is not usually erased, but rather the space used to hold the content is marked as being available for reuse.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez à la ligne 99 de mergin/utils.py et lisez les guides liés sur GDAL GeoPackage et SQLite VACUUM. Vérifiez comment la logique actuelle détermine si un VACUUM est utile, y compris pour les GeoPackages sans fichier sidecar -wal. C’est terminé lorsque la décision couvre ce cas sans effectuer de VACUUM inutilement ; validez-la avec les tests existants du projet.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python, sqlite
- Domaine
- databases
- Type d'issue
- Fonctionnalité
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 68/100