desihub/desispec#825 added the FIBERMAP as an additional HDU to the preproc files so that downstream extractions could just use that without having to look back into the raw data directory to get the fibermap.
This broke specex, e.g.
srun -n 20 -c 2 desi_compute_psf_mpi --input-image /global/project/projectdirs/desi/spectro/redux/sjbailey/preproc/20191024/00020662/preproc-b3-00020662.fits --input-psf /global/project/projectdirs/desi/spectro/desi_spectro_calib/trunk/spec/sp3/psf-sm4-b-science-slit-20191015.fits --output-psf /global/project/projectdirs/desi/spectro/redux/sjbailey/exposures/20191024/00020662/psf-b3-00020662.fits
...
INFO Reading DESI preprocessed image in /global/project/projectdirs/desi/spectro/redux/sjbailey/preproc/20191024/00020662/preproc-b3-00020662.fits
FATAL ERROR (harp) Exception at line 783 of file harp_fits.cpp: FITS HDU 5 is not an image
...
Traceback (most recent call last):
File "/global/common/software/desi/cori/desiconda/20190804-1.3.0-spec/code/desispec/master/bin/desi_compute_psf_mpi", line 29, in <module>
specex.main(args, comm=comm)
File "/global/common/software/desi/cori/desiconda/20190804-1.3.0-spec/code/desispec/master/py/desispec/scripts/specex.py", line 220, in main
raise RuntimeError("some bundles failed desi_psf_fit")
RuntimeError: some bundles failed desi_psf_fit
...
Indeed, HDU 5 (if counting from 1) is a BinTableHDU FIBERMAP, not an image...
desihub/desispec#825 added the FIBERMAP as an additional HDU to the preproc files so that downstream extractions could just use that without having to look back into the raw data directory to get the fibermap.
This broke specex, e.g.
Indeed, HDU 5 (if counting from 1) is a BinTableHDU FIBERMAP, not an image...