Wiki
Depolama & GC
Depo bazında depolama panosu (boyut, tekilleştirme, büyüme) ve garbage collection: eski revizyonların, öksüz chunks'ların, phantom files'ların temizlenmesi.
Giriş
Depolama sekmesi bir deponun disk kullanımını gösterir ve eski revizyonları ve işe yaramaz hale gelen verileri temizleyerek yer geri kazanmak için bir garbage collection (GC) aracı sunar.
Erişim ve roller
Süper yönetici ve yönettiği depolar üzerindeki bir project_admin için erişilebilir, GC çalıştırmak dahil. Sunucu genel istatistikleri ve lisans ise süper yöneticiye ayrılmıştır (panelin başka bir yerinde).
Metrikler
- Toplam boyut ve sıkıştırılmış boyut.
- Tekilleştirme oranı (%): chunks paylaşımı ve sıkıştırma sayesinde tasarruf edilen alan payı.
- Dosyalar / revizyonlar / chunks.
- Büyüme (son 30 gün): günlük revizyon histogramı.
- En büyük dosyalar: boyuta göre ilk 20 ve revizyon sayıları.
Bu rakamlar şişen bir depoyu tespit etmeye yardımcı olur: sık sık yeniden commit edilen büyük bir ikili dosya veya son 30 gündeki anormal bir büyüme.
Garbage collection
GC, eski geçmişi iki parametreye göre temizler:
| Parametre | Varsayılan | Rol |
|---|---|---|
| Retention (days) | 90 | Bir revizyonun her zaman korunduğu yaş eşiği. |
| Min revisions to keep | 5 | Yaşları ne olursa olsun her dosya için korunan son revizyon sayısı. |
İki düğme:
- Preview: hiçbir şey silmeden benzetim yapar. Bant: «Y dosya genelinde X revizyon silinecek, Z hayalet giriş kaldırılacak». Her zaman önce önizleyin.
- Run GC: gerçekten çalıştırır. Bant: «X revizyon silindi, Y öksüz chunks temizlendi, Z hayalet giriş kaldırıldı». Çalıştırma denetim günlüğüne kaydedilir.
GC neyi siler
- Eski revizyonlar: Retention (days) değerinden daha eski VE dosya başına en yeni Min revisions to keep sayısının ötesindekiler. Ardından, başka hiçbir revizyon tarafından artık referans verilmiyorsa onların chunks'ları.
- Öksüz chunks: temizlemeden sonra hiçbir revizyonun artık kullanmadığı veri blokları.
- Phantom files: aslında hiç commit edilmemiş dosya satırları (geçersiz yol veya askıda kalmış bir giriş), sabit 7 günlük pencerenin ötesinde (yapılandırılamaz).
Silinen veya obliterate edilen dosyaların silme işaretçileri (tombstones) korunur: bunlar sync sırasında silmeyi istemcilere yaymak için kullanılır ve bu yüzden kaybolmamalıdır.
Sık karşılaşılan tuzaklar
Preview çok az şey bildiriyor
Depo yeniyse veya geçmiş saklama penceresine sığıyorsa normaldir. GC yalnızca hem yeterince eski hem de dosya başına son N'nin ötesindeki revizyonlara dokunur.
Preview ve Run aynı sayaçları göstermiyor
Preview, silinecek chunks ve revizyon-chunk bağlantılarının tam sayısını öngöremez: yalnızca revizyonları, taranan dosyaları ve hayalet girişleri bildirir. Öksüz chunks yalnızca Run sırasında görünür.
Yer geri kazanmak için saklamayı düşürmek
Mümkün, ancak geçmişi kaybedersiniz. Çok geriye gidebilmenin gerektiği bir projede rahat bir saklama süresi tutun ve bunun yerine büyük dosyalar üzerinde çalışın (en büyük dosyalar listesine ve yeniden üretilebilir ürünleri izlemekten kaçınmak için .uversionignore dosyasına bakın).