2014-04-15 36 views
6

Vagrant kullanarak bir Centos sanal makinesi çalıştırıyorum. Makine düzgün çalışması gibi görünüyor, ama ben Perforce senkronize çalıştığımda şu hatayı görebilirsiniz: Bu http://www.ducea.com/2006/09/11/error-servname-not-supported-for-ai_socktype/ okuyup /etc/services yılında portları belirtmeye çalıştığımızSunucu adı, ai_socktype için desteklenmiyor

[[email protected]_64 ~]$ /perforce/p4 sync -f ... 
Perforce client error: 
Connect to server failed; check $P4PORT. 
failed.TCP connect to perforce.xxx.com:1666 
Servname not supported for ai_socktype 

, ama işe yaramadı. Sorunun Perforce veya OS ile ilgili olup olmadığından emin değilim.

Herhangi bir ipucu?

+1

P4PORT'u doğru şekilde ayarladınız mı? – pitseeker

+0

Evet, ilk tahminim buydu. Başlangıçtan doğru şekilde ayarlandı. Ayrıca P4CHARSET'i 'utf8' ve 'none' olarak değiştirdim. Şu ana kadar sonuç yok ... – Tavo

+0

"telnet perforce.xxx.com 1666" çalışıyor mu? (yani bir bağlantı kurun) – pitseeker

cevap

7

Bu sorunu bir Tornado/Python uygulaması ile yaşadım. Görünüşe göre, this can be caused port tarafından bir tamsayı yerine bir dize olarak yorumlanıyor. Benim durumumda, başlangıç ​​betiğimi, tamsayı olarak yorumlanmaya zorlamak için değiştirmem gerekiyordu.

application = tornado.web.Application(...) 
application.listen(int(port)) 
2

İstemcinizi girebiliyor musunuz?

p4 client 

Belki konudur host:port değil, ama kesme bağlantı dizesindeki diğer bayraklar: dosyaları senkronize denemeden önce, bir perforce müşteri oluşturmayı deneyin.

Kişisel olarak aynı hatayı aldım, ancak bir Performans sorunu oldu.

Bunun nedeni, Performance'nin P4USER/P4PORT/... yapılandırmasını ararken kendi önceliği vardır.

  1. ENV değişkenleri (export çalıştırın)
  2. bir P4CONFIG değişken bir yere belirtildi eğer, Sorun oldu

(üst/geçerli dizinde gibi .perforce) bir dosyada arama yapabilirsiniz hatta olsa Bir ENV değişkeni için ilk arama - P4CONFIG dosyası geçersiz kılabilir.

Yani benim $P4PORT ENV değişken bir bağlantı dizesi X vardı, ama .perforce dosya benim yerel .perforce dosyadan P4PORT Çıkarma bir bağlantı dizesi Y.

vardı - bu sorunu çözdü. Örnekte : Ayrıca

$~] echo $P4PORT; 
rsh:ssh -2 -q -a -x -l p4ssh perforce.mydomain.com 

$~] cat .perforce 
# P4PORT="rsh:ssh -q -a -x -l perforce.mydomain.com /bin/true" 
P4USER="my_user" 

yukarı bütün dizin hiyerarşisinde (Birini yapılandırılmışsa) Eğer geçerli dizinde dosyayı zorunda kalmamak bile mecburen, $P4CONFIG dosyayı aramak unutmayın - bu olabilir Bir üst dizinde bulunabilir ve orada - beklemediğiniz bir $P4PORT yapılandırmanız olabilir ..

İlgili konular