Wiki
Armazenamento & GC
Painel de armazenamento por repositório (tamanho, deduplicação, crescimento) e garbage collection: limpeza de revisões antigas, chunks órfãos, phantom files.
Introdução
A aba Armazenamento mostra o uso de disco de um repositório e fornece uma ferramenta de garbage collection (GC) para recuperar espaço limpando revisões antigas e dados que se tornaram inúteis.
Acesso e papéis
Disponível para o super admin e para um project_admin nos repositórios que ele administra, incluindo a execução do GC. Já as estatísticas globais do servidor e a licença ficam reservadas ao super admin (em outro lugar do painel).
As métricas
- Tamanho total e tamanho comprimido.
- Taxa de deduplicação (%): a parcela de espaço economizada pelo compartilhamento de chunks e pela compressão.
- Arquivos / revisões / chunks.
- Crescimento (últimos 30 dias): histograma de revisões por dia.
- Maiores arquivos: o top 20 por tamanho, com sua contagem de revisões.
Esses números ajudam a identificar um repositório que está inchando: um arquivo binário volumoso committado repetidamente, ou um crescimento anômalo nos últimos 30 dias.
Garbage collection
O GC limpa o histórico antigo de acordo com dois parâmetros:
| Parâmetro | Padrão | Papel |
|---|---|---|
| Retention (days) | 90 | Idade abaixo da qual uma revisão é sempre mantida. |
| Min revisions to keep | 5 | Número de revisões recentes mantidas por arquivo, independentemente da idade. |
Dois botões:
- Preview: simula sem apagar nada. Faixa: «X revisões seriam apagadas em Y arquivos, Z entradas fantasma seriam removidas». Sempre pré-visualize primeiro.
- Run GC: executa de fato. Faixa: «X revisões apagadas, Y chunks órfãos limpos, Z entradas fantasma removidas». A execução é registrada na auditoria.
O que o GC apaga
- Revisões antigas: as mais antigas que Retention (days) E além das Min revisions to keep mais recentes por arquivo. Em seguida seus chunks, se não estiverem mais referenciados por nenhuma outra revisão.
- Chunks órfãos: os blocos de dados que nenhuma revisão usa mais após a limpeza.
- Phantom files: linhas de arquivo que nunca foram realmente committadas (caminho inválido ou uma entrada que ficou pendente), além de uma janela fixa de 7 dias (não configurável).
Os marcadores de exclusão (tombstones) dos arquivos apagados ou obliterados são preservados: eles servem para propagar a exclusão aos clientes durante a sync, e por isso não devem desaparecer.
Armadilhas comuns
O Preview anuncia muito pouco
Normal se o repositório for recente ou se o histórico couber dentro da retenção. O GC só mexe nas revisões que são ao mesmo tempo antigas o suficiente e estão além das últimas N por arquivo.
Preview e Run mostram contadores diferentes
O Preview não consegue prever o número exato de chunks e de vínculos revisão-chunk apagados: ele só reporta as revisões, os arquivos escaneados e as entradas fantasma. Os chunks órfãos só aparecem no Run.
Baixar a retenção para recuperar espaço
É possível, mas você perde histórico. Em um projeto onde é preciso poder voltar bem no tempo, mantenha uma retenção folgada e atue de preferência sobre os arquivos grandes (veja a lista dos maiores arquivos e o .uversionignore para evitar trackear artefatos regeneráveis).