Details
-
Type:
Story
-
Status: Done
-
Resolution: Done
-
Fix Version/s: None
-
Component/s: meas_algorithms
-
Labels:None
-
Story Points:6
-
Epic Link:
-
Sprint:AP F19-1
-
Team:Data Release Production
Description
Working on the tickets to implement the new defects handling, Tim Jenness implemented a new class to hold lists of defects. This seems to not be playing well in some very specific circumstances.
Specifics:
I never see segmentation faults on Linux.
On mac OS I've seen a segmentation fault on High Sierra running v10.1 of command line tools.
I have also seen a segmentation fault on Mojave running v10.2.1 of command line tools, but not when running v10.1.
To repeat:
1) setup w_2019_24
2) setup master of:
- obs_test_data
- obs_decam_data
3) setup tickets/DM-18739 of:
- obs_base
- obs_test
- pipe_tasks
4) setup tickets/DM-19730 of:
- obs_decam
- testdata_decam
5) Navigate to a location where an output repository can be created.
6) Execute (on some systems, this will result in a segmentation fault in the measurement phase in the calibrate task):
processCcd.py $TESTDATA_DECAM_DIR/rawData --output tmp_out --id visit=229388 ccdnum=1 --calib $TESTDATA_DECAM_DIR/rawData/cpCalib --config calibrate.doPhotoCal=False calibrate.doAstrometry=False
|
7) Remove output repository and rerun with defect interpolation turned off. This does not result in a segmentation fault on my system.
processCcd.py $TESTDATA_DECAM_DIR/rawData --output tmp_out --id visit=229388 ccdnum=1 --calib $TESTDATA_DECAM_DIR/rawData/cpCalib --config calibrate.doPhotoCal=False calibrate.doAstrometry=False isr.doDefect=False
|
I isolated things a little by running calibrate.py on the persisted outputs of IsrTask and CharImageTask and did not observe a segmentation fault.
I did more looking and if I modify the defects sent to IsrTask, I can get rid of the segmentation fault:
- Send an empty Defects – No segmentation fault
- Drop the last three defects from the list – No segmentation fault
- Drop the first three defects from the list – Segmentation fault
- Delete the python object that holds the defects immediately after interpolating – Segmentation fault.
Here is the backtrace from my terminal is attached.
My laptop is able to reproduce the bug. I'll build afw on this branch in the morning and try the test to see if it will crash.