MerginMaps / MerginMaps/python-api-client

Vacuuming

Aberta Para iniciantes
#320 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
Python
Estrelas
23
Forks
12
Merge médio
2d 13h
PRs com merge (30d)
7

Descrição

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.

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece em mergin/utils.py, na linha 99, e leia as orientações vinculadas sobre GDAL GeoPackage e SQLite VACUUM. Verifique como a lógica atual decide se vale a pena executar VACUUM, incluindo GeoPackages sem um arquivo sidecar -wal. Considera-se concluído quando a decisão cobre esse caso sem executar VACUUM desnecessariamente; valide com os testes existentes do projeto.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
python, sqlite
Domínio
databases
Tipo de issue
Funcionalidade
Dificuldade
2/5
Tempo estimado
1-3 horas
Status de atividade
Ativa
Clareza
Razoavelmente clara
Facilidade para iniciantes
68/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.