DBAtlas · Veritabanı operasyon atlası

translog_corrupted_exception: translog_corrupted_exception

Elasticsearch

Ne demek?

Bir shard'ın translog'u, bozulmuş olduğu için okunamadı. Elasticsearch, kurtarma (recovery) sırasında translog'un bütünlük denetiminden geçemediğini tespit etti ve shard başlatılamadı.

Neden olur?

Genellikle ani güç kesintisi, disk dolması, dosya sistemi hatası, donanım/disk arızası ya da veri dizinine dışarıdan (kopyalama, elle müdahale) yapılan işlemler sonucu translog dosyaları bozulur. Zorla kapatma (kill -9) sırasında yarım kalan yazmalar da neden olabilir.

Nasıl çözülür?

Öncelikle veriyi bir replikadan ya da snapshot'tan kurtarmayı deneyin; sağlıklı bir kopya varsa bozuk shard'ı ondan yeniden oluşturmak en güvenli yoldur. Başka kopya yoksa ve veri kaybını göze alıyorsanız düğümü durdurup bin/elasticsearch-shard remove-corrupted-data --index <indeks> --shard-id <n> aracıyla bozuk translog'u/verileri temizleyin (bu işlem henüz commit edilmemiş veriyi kalıcı olarak kaybettirir; eski elasticsearch-translog aracı 7.0'da kaldırıldı). Araç, düğüm yeniden başladıktan sonra shard'ı atamak için gereken POST _cluster/reroute (allocate_stale_primary, accept_data_loss: true) komutunu çıktısında verir. İşlemden önce veri dizininin yedeğini alın. Disk sağlığını ve alanını kontrol edin.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar