'Kilit yok' ne anlama geliyor?


9

Bir SVN sunucusuna bağlanmaya çalışıyorum. Sunucuda subversion deposu NFS'ye monte edilmiştir. Taahhüt yaparken şu hata iletisini alıyorum:

svn: Can't get exclusive lock on file '/svn/repo/db/transactions/7802-2.txn/rev-lock': No locks available

Bu eskiden çalışırdı ve hiçbir şeyde yazılım yükseltmesi / değişikliği yapılmadı. Ancak NFS sunucusu daha önce çöktü, bu yüzden 'bozulmuş' olabilir (burada bile geçerliyse)

Yanıtlar:


12

Burada birkaç olasılık var:

  1. SVN güncelleştirmesini yapan kullanıcı hesabının havuz dizininde güncelleme izni olmayabilir
  2. Deponun depolandığı NFS dosya sistemi dolu olabilir
  3. Kilit arka plan programı (lockd) NFS sunucusunda çalışmıyor olabilir.

GÜNCELLEME: soru güncellemesinin ardından # 3 olduğundan şüphelenirim. NFS sunucusu yeniden başlatıldığında lockd'nin başlatılacak şekilde ayarlandığından emin olun.


1
Sunucuda "ps aux | grep lockd" çıktı var, bu yüzden çalıştığını düşünüyorum
Rory

NFS sunucusuyla ilgiliydi.
Francisco

Benim durumum # 3 idi. /sbin/service nfslock startCentOS 6.8 ile düzeltildi ( başvuru: 18.1.1. Gerekli Hizmetler
joao cenoura

3

NFS sunucunuzun kilitleri desteklediğinden emin olun; bunu gerçekleştirmek için NFS sunucusunda ek işlemleri etkinleştirmeniz gerekebilir; bkz. rpc.lockd (8) ve rpc.statd (8) .

Ayrıca, NFS sunucunuz yakın zamanda yeniden başlatıldıysa, eski veya hatta kısmen eski bir NFS bağlantınız olabilir. NFS yuvasını sökmeyi ve yeniden takmayı deneyin.

EDIT: diğer sorunuza göre , NFS sunucunuz çöktükten sonra kurtardıktan sonra lockd başlamadı gibi görünüyor.


Nfs sunucusu çökünceye kadar çalışırdı. son zamanlarda yazılım güncellemesi yapılmadı. Soruyu genişlettim
Rory

NFS bağlantınız (kısmen) eski olabilir; burada FreeBSD tabanlı NFS sunucusu ve Solaris istemcileriyle olur. NFS paylaşımının kapatılması / yeniden takılması sorunu bizim için çözer.
Tel Janin

1
NFS bağlanmış olan istemciyi yeniden başlatmak sorunu çözmedi. (Yeniden başlatma / yeniden takmadığım NFS sunucusundan bağlanan başka makineler olsa da)
Rory

1

Yukarıda belirttiğiniz terimler için bu google aramada bahsedilen bir dizi alternatif vardır .

Bahsedilen seçeneklerden bazıları şunlardır: tam diskler, izin sorunları, "asılı" veya "takılıp kalmış" svnserve süreçleri ve asılı işlemler ... Sorunun tam olarak ne olduğunu görmek için bu farklı sorunları denemeniz gerekebilir. durum.

Görünüşe göre bsddb SVN arka ucunu mu kullanıyorsunuz? Deponuzu fsfs arka ucuna taşımayı deneyebilirsiniz (birkaç yıldır varsayılan). Benim deneyimlerime göre ve tanıdığım diğer birçoğundan bsddb'den daha güvenilir olduğunu kanıtladı. NFS ile nasıl etkileşime girdiğini araştırmak isteseniz de - NFS'de kullanmadım.

Dikkate almak isteyebileceğiniz diğer bir seçenek, NFS üzerinden SVN kullanmaktan uzaklaşmak ve bunun yerine yerel olarak depolanan SVN deposu olan bir sunucuda SSH üzerinden çalıştırmaktır. Tüm SVN çalışmalarımızı fsfs arka ucuyla bu şekilde yapıyoruz ve en son SVN veri havuzu sorunlarımız olduğunu hatırlayamıyorum.

Sean


FSFS arka ucunu kullanıyoruz
Rory

Tam diskler için +1! NFS montajı dolu olmasa da, kök sürücü ...
hwjp

0

debian'da NFS ile SVN kullanıyorsanız

bunu çalıştır:

/etc/init.d/portmap restart

1
Bunu neden cevabınız olarak önerdiğinizi açıklamak faydalı olabilir.
Drew Khoury

0

Burada benzer sorunlar yaşadım, vagrant'ın NFS bağlarından dolayı benimki. Tel Janin'in yukarıda söylediklerinden yola çıkarak, sudo service rpcbind restartana bilgisayarımda rpcbind'i yeniden başlattım . Bu benim vm astı. Bunu yeniden başlattım, bu da bana şifreli bir NFS hatası verdi failed to start with result 'dependency'. Ama işe yaradı ve ben şimdi mutlu bir kampçıyım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.