summaryrefslogtreecommitdiffstats
path: root/subcmds/sync.py
diff options
context:
space:
mode:
authorRaman Tenneti <rtenneti@google.com>2021-04-15 09:20:51 -0700
committerRaman Tenneti <rtenneti@google.com>2021-04-15 22:43:07 +0000
commitad8aa6977248c46669575282302f5de90043fdf0 (patch)
tree457cb89fe92c75d001b73f206f4fc42b9b8c4d7c /subcmds/sync.py
parentb5d075d04f1e555f85aad27e74f16073a50b2ae6 (diff)
downloadgit-repo-ad8aa6977248c46669575282302f5de90043fdf0.tar.gz
sync: only print error.GitError, don't raise that exception.
In _FetchOne & _CheckOne, only print error.GitError exception, but other exceptions are still thrown Fixes the GitError exceptions from /usr/lib/python3.8/multiprocessing/pool.py exiting the repo sync. Tested the code with the following commands and verified repo sync continues after fetch error because of an invalid SHA1. $ ./run_tests -v $ python3 ~/work/repo/git-repo/repo sync -m manifest_P21623846.xml -j32 ... error.GitError: Cannot fetch platform/vendor/google_devices/redbull/proprietary update-ref: fatal: d5a99e518f09d6abb0c0dfa899594e1ea6232459^0: not a valid SHA1 .... An error like the following when jobs=1 error.GitError: Cannot checkout platform/vendor/qcom/sdm845/proprietary/qcrilOemHook: Cannot initialize work tree for platform/vendor/qcom/sdm845/proprietary/qcrilOemHook Bug: https://crbug.com/gerrit/14392 Change-Id: I8922ad6c07c733125419f5698b0f7e32d70c7905 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/303544 Reviewed-by: Mike Frysinger <vapier@google.com> Tested-by: Raman Tenneti <rtenneti@google.com>
Diffstat (limited to 'subcmds/sync.py')
-rw-r--r--subcmds/sync.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/subcmds/sync.py b/subcmds/sync.py
index 4763fadc..21bc5e7d 100644
--- a/subcmds/sync.py
+++ b/subcmds/sync.py
@@ -354,6 +354,8 @@ later is required to fix a server side protocol bug.
354 print('error: Cannot fetch %s from %s' 354 print('error: Cannot fetch %s from %s'
355 % (project.name, project.remote.url), 355 % (project.name, project.remote.url),
356 file=sys.stderr) 356 file=sys.stderr)
357 except GitError as e:
358 print('error.GitError: Cannot fetch %s' % str(e), file=sys.stderr)
357 except Exception as e: 359 except Exception as e:
358 print('error: Cannot fetch %s (%s: %s)' 360 print('error: Cannot fetch %s (%s: %s)'
359 % (project.name, type(e).__name__, str(e)), file=sys.stderr) 361 % (project.name, type(e).__name__, str(e)), file=sys.stderr)
@@ -446,6 +448,9 @@ later is required to fix a server side protocol bug.
446 try: 448 try:
447 project.Sync_LocalHalf(syncbuf, force_sync=force_sync) 449 project.Sync_LocalHalf(syncbuf, force_sync=force_sync)
448 success = syncbuf.Finish() 450 success = syncbuf.Finish()
451 except GitError as e:
452 print('error.GitError: Cannot checkout %s: %s' %
453 (project.name, str(e)), file=sys.stderr)
449 except Exception as e: 454 except Exception as e:
450 print('error: Cannot checkout %s: %s: %s' % 455 print('error: Cannot checkout %s: %s: %s' %
451 (project.name, type(e).__name__, str(e)), 456 (project.name, type(e).__name__, str(e)),