Details
-
Type:
Bug
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: pipe_base
-
Labels:None
-
Story Points:6
-
Epic Link:
-
Team:Data Release Production
Description
processCcd.py seems to reliably hang when given long data ID lists (possibly only on Python 2, but on at least Ubuntu Linux and OSX). To reproduce:
- Run scons on ci_hsc to create the raw data repository (can kill it after it starts running ProcessCcdTask).
- Run
processCcd.py DATA -j2 --rerun mpbug --id visit=903334..903338:2 --id visit=903342..903346:2 --id visit=903986..903990:2 --id visit=904010^904014
Pim Schellart [X], would you please review this?
price@pap-laptop:~/LSST/afw (tickets/DM-10834=) $ git sub-patch
commit 8811f041ba81d4167d46e8bfc93b458038c63e06
Author: Paul Price <price@astro.princeton.edu>
Date: Mon Jun 12 17:23:39 2017 -0400
pybind: clear error if we're not going to use it
To fail to do so results in a deadlock when using python multiprocessing.
diff --git a/python/lsst/afw/table/schema/schema.cc b/python/lsst/afw/table/schema/schema.cc
index 4123f7f3f..a523b04fb 100644
--- a/python/lsst/afw/table/schema/schema.cc
+++ b/python/lsst/afw/table/schema/schema.cc
@@ -346,6 +346,7 @@ void declareSchema(py::module &mod) {
try {
self.attr("find")(key);
} catch (py::error_already_set &err) {
+ err.clear();
return false;
}
return true;