From: Zac Medico Date: Thu, 1 Mar 2007 12:44:54 +0000 (-0000) Subject: For bug #168646, don't bail out immediately when rsync detects protocol incompatibili... X-Git-Tag: v2.2_pre1~1638 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=660883807beaf2dd316c19c062bc52e6de19a43b;p=portage.git For bug #168646, don't bail out immediately when rsync detects protocol incompatibility (code 2) during fetching of the timestamp file. Retry for a better server (up to PORTAGE_RSYNC_RETRIES). svn path=/main/trunk/; revision=6104 --- diff --git a/pym/emerge/__init__.py b/pym/emerge/__init__.py index 572baf883..e91f6b1a7 100644 --- a/pym/emerge/__init__.py +++ b/pym/emerge/__init__.py @@ -4037,8 +4037,14 @@ def action_sync(settings, trees, mtimedb, myopts, myaction): env=settings.environ()) if exitcode in [0,1,2,3,4,11,14,20,21]: break - elif exitcode in [0,1,2,3,4,11,14,20,21]: + elif exitcode in [1,3,4,11,14,20,21]: break + else: + # Code 2 indicates protocol incompatibility, which is expected + # for servers with protocol < 29 that don't support + # --prune-empty-directories. Retry for a server that supports + # at least rsync protocol version 29 (>=rsync-2.6.7). + pass retries=retries+1