-
Type:
Story
-
Status: Done (View Workflow)
-
Priority:
Normal
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
$ fitFluxCal.py /work/drp --calib=/work/drp/CALIB --rerun=test01 --no-versions --clobber-config --id visit=82905 'spectrograph=1^3' [...] fitFluxCal FATAL: Failed on dataId={'visit': 82905, 'spectrograph': 3, 'dateObs': '2022-11-18'}: KeyError: 'NO_DATA' Traceback (most recent call last): File "/work/stack_INFRA-312/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/pipe_base/g590c34a36e+5da9528084/python/lsst/pipe/base/cmdLineTask.py", line 436, in __call__ result = self.runTask(task, dataRef, kwargs) File "/work/stack_INFRA-312/stack/miniconda3-py38_4.9.2-3.0.0/Linux64/pipe_base/g590c34a36e+5da9528084/python/lsst/pipe/base/cmdLineTask.py", line 504, in runTask return task.runDataRef(dataRef, **kwargs) File "/work/takuji/pipeline/drp_stella/python/pfs/drp/stella/fitFluxCal.py", line 206, in runDataRef outputs = self.run(pfsMerged, pfsMergedLsf, references, pfsConfig, pfsArmList, sky1dList) File "/work/takuji/pipeline/drp_stella/python/pfs/drp/stella/fitFluxCal.py", line 130, in run extracted.fluxTable = self.fluxTable.run( File "/work/takuji/pipeline/drp_stella/python/pfs/drp/stella/FluxTableTask.py", line 37, in run return makeFluxTable(identities, spectra, self.config.ignoreFlags, File "/work/takuji/pipeline/drp_stella/python/pfs/drp/stella/makeFluxTable.py", line 161, in makeFluxTable maskVal = flags.get("NO_DATA", *ignoreFlags) File "/work/takuji/pipeline/datamodel/python/pfs/datamodel/masks.py", line 47, in get return sum(self[name] for name in args) File "/work/takuji/pipeline/datamodel/python/pfs/datamodel/masks.py", line 47, in <genexpr> return sum(self[name] for name in args) File "/work/takuji/pipeline/datamodel/python/pfs/datamodel/masks.py", line 35, in __getitem__ return 2**self.flags[name] KeyError: 'NO_DATA'
This looks like a bug from a corner case: it's iterating over a fiber that doesn't have any data associated with it.