Pregunta

Tengo un clon de gran tamaño para empujar a Google Code, y se tarda mucho tiempo para el diálogo autenticar a aparecer después de la presión es disparado, lo mismo ocurre con los datos de empuje TortoiseHg primera autentican segundo?

¿Fue útil?

Solución

Actualizar : El error ya está fija .

Editar por durin42 : No es completamente fija. Estamos cerca, pero todavía hay algunos trabajos para que lo haga antes de la reescritura es predeterminado en por. Estamos tratando de ser muy conservador con la conmutación. (Situación exacta a partir de enero de 2012, ver notas de la versión de Mercurial para más actualizaciones.)


TL; DR: httplib es esencialmente roto aquí, y que hace que este problema Hg. La gente está trabajando en arreglar esto.

Este es un efecto secundario desafortunado de la manera urllib y el trabajo httplib. httplib / urllib no enviará preventivamente la autorización, lo cual es lamentable.

La buena noticia es que no hay trabajo en curso para solucionar este problema, la mala noticia es que parece que va a tomar esencialmente una reescritura completa del httplib conseguirlo a un comportamiento razonable. En particular, httplib es half-duplex, y no tiene manera de mirar a los paquetes entrantes (para detectar una respuesta temprana), por lo que tiene que enviar una solicitud primero antes de que pueda obtener pronta un compendio de autenticación (uso asumiendo de digerir autenticación, el cual es la mejor opción). Algunas implementaciones de servidor ni siquiera cerca de la toma de corriente una vez que se envían una autorización obligatoria 401, que en realidad se rompe por completo httplib levantando un error de tubería rota. Presenté una solución para ese problema que está en hg 1.4, pero es sólo una solución fácil de molestia, no es una solución real de rendimiento.

Otros consejos

espero que se reunirán una lista de conjuntos de cambios desde el servidor de forma que sepa qué conjuntos de cambios locales no aparecen en el servidor, y por lo tanto necesitan ser transferidos. Básicamente el equivalente de hg outgoing. Sólo una vez que se ha determinado los conjuntos de cambios para empujar qué es necesario escribir nada (y potencialmente no, si no hay diferencias) para que no se autenticar hasta que realmente se necesita.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top