| Index: scripts/slave/build_scan.py
|
| diff --git a/scripts/slave/build_scan.py b/scripts/slave/build_scan.py
|
| index b73c995e079b699407edbf18129903363a6438c4..e33b3bd0b3cc6cc48d4146ae91c1aa725899cda2 100755
|
| --- a/scripts/slave/build_scan.py
|
| +++ b/scripts/slave/build_scan.py
|
| @@ -236,10 +236,19 @@ def get_options():
|
|
|
|
|
| def get_updated_builds(masters, build_db, parallelism):
|
| - new_builds, master_jsons = find_new_builds_per_master(masters, build_db)
|
| - build_jsons = get_build_jsons(new_builds, parallelism)
|
| - propagate_build_json_to_db(build_db, build_jsons)
|
| - return master_jsons, build_jsons
|
| + try:
|
| + new_builds, master_jsons = find_new_builds_per_master(masters, build_db)
|
| + build_jsons = get_build_jsons(new_builds, parallelism)
|
| + propagate_build_json_to_db(build_db, build_jsons)
|
| + return master_jsons, build_jsons
|
| +
|
| + # Catch this and raise a ValueError because this can be called from
|
| + # mulitprocessing, which can't pickle SSLContext objects, which apparently are
|
| + # properties of urllib2.URLError (it seems).
|
| + except (urllib2.URLError, IOError) as f:
|
| + msg = "Error encountered during URL Fetch: %s" % f
|
| + logging.error(msg)
|
| + raise ValueError(msg)
|
|
|
|
|
| def main():
|
|
|