Replicación de gerrit a github: problemas de jsch

Estoy tratando de configurar la replicación desde Gerrit a mi repository github. Obteniendo esta stacktrace:

[2011-09-20 00: 11: 58,470] ERROR com.google.gerrit.server.git.PushReplication: No se puede replicar a git@github.com: myuser / myrepo.git
org.eclipse.jgit.errors.TransportException: git@github.com: myuser / myrepo.git: Session.connect: java.net.SocketTimeoutException: time de espera de lectura agotado
en org.eclipse.jgit.transport.JschConfigSessionFactory.getSession (JschConfigSessionFactory.java:138)
en org.eclipse.jgit.transport.SshTransport.getSession (SshTransport.java:121)
en org.eclipse.jgit.transport.TransportGitSsh $ SshFetchConnection. (TransportGitSsh.java:248)
en org.eclipse.jgit.transport.TransportGitSsh.openFetch (TransportGitSsh.java:147)
en com.google.gerrit.server.git.PushOp.listRemote (PushOp.java:358)
en com.google.gerrit.server.git.PushOp.generateUpdates (PushOp.java:312)
en com.google.gerrit.server.git.PushOp.pushVia (PushOp.java:258)
en com.google.gerrit.server.git.PushOp.runImpl (PushOp.java:213)
en com.google.gerrit.server.git.PushOp.run (PushOp.java:166)
en java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java:441)
en java.util.concurrent.FutureTask $ Sync.innerRun (FutureTask.java:303)
en java.util.concurrent.FutureTask.run (FutureTask.java:138)
en java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 301 (ScheduledThreadPoolExecutor.java:98)
en java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.run (ScheduledThreadPoolExecutor.java:206)
en com.google.gerrit.server.git.WorkQueue $ Task.run (WorkQueue.java:324)
en java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (ThreadPoolExecutor.java:886)
en java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908)
en java.lang.Thread.run (Thread.java:662)

Causado por: com.jcraft.jsch.JSchException: Session.connect: java.net.SocketTimeoutException: time de espera de lectura agotado
en com.jcraft.jsch.Session.connect (Session.java:504)
en org.eclipse.jgit.transport.JschConfigSessionFactory.getSession (JschConfigSessionFactory.java:128)

Mis files de configuration son los siguientes:

replication.config:

[remote "github"] url = git@github.com:myuser/${name}.git push = +refs/heads/*:refs/heads/* push = +refs/tags/*:refs/tags/* timeout = 5 replicationDelay = 0 authGroup = Administrators 

secure.config:

 [database] password = secret [ssh] file = /home/gerrit2/.ssh/config 

.ssh / config:

 Host github.com: IdentityFile ~/.ssh/id_rsa PrefernetworkingAuthentications publickey 

Intenté correr

 ssh -i etc/ssh_host_dsa_key git@github.com ssh -i etc/ssh_host_rsa_key git@github.com ssh -i ~/.ssh/id_rsa git@github.com ssh -i ~/.ssh/id_dsa git@github.com 

y fue capaz de "golpear" a github para que las keys se importen bien, no estoy seguro de cuál es el problema, se agradecen las sugerencias.

Como dice el nombre de la exception SocketTimeoutException (y sus detalles de documentation ):

Señales de que se ha producido un time de espera en un socket leído o aceptado.

Mirando en la documentation de replication.config de Gerrit :

remote. <nombre> .timeout

Número de segundos que debe esperar para que se complete una lectura o escritura de la networking antes de abandonar y declarar que el lado remoto no responde. Si es 0, no hay time de espera y el cliente de inserción espera indefinidamente.

Un time de espera debe ser lo suficientemente grande como para transferir los objects al otro lado. 1 segundo puede ser demasiado pequeño para proyectos más grandes, especialmente a través de un enlace WAN, mientras que 10-30 segundos es un valor de time de espera mucho más razonable.

El valor pnetworkingeterminado es 0 segundos, espere indefinidamente.

Su valor es de 5 segundos, puede intentarlo con un valor mayor en su lugar.

(El problema solo está indirectamente relacionado con JSch – Session de JSch. Connect Session.connect(int) simplemente tomará el parámetro de time de espera y lo transferirá al socket que crea. Eso me restring que debo documentar qué unidad es este time de espera para JSch – segundos o milisegundos)