Pinned fields
Click on the next to a field label to start pinning.
Details
Details
Assignee
Unassigned
UnassignedReporter
Lee Kelvin
Lee KelvinStory Points
1
RubinTeam
Data Release Production
Components
Priority
Checklist
Checklist
Created September 14, 2023 at 4:13 PM
Updated October 20, 2023 at 6:28 PM
A recent Jenkins run by @Trys McCann for DM-40669 highlighted a failing unit test in the
source_injection
repo. Insidetest_inject_engine.py
, thetest_inject_galsim_objects_into_exposure
unit test fails with:Interestingly, this test does not fail on Linux.
This test injects a number of synthetic sources into a test exposure, and then checks that the sum of the known injected flux matches the sum of the
injected_calexp - calexp
difference image flux to within some threshold. The threshold that triggers the failure here is 0.01%. A certain threshold is expected rather than exact equality as some small fraction of injected source flux will fall outside of the draw size (bounding box) region for each stamp.For
w_2023_36
, Linux returns a flux diff of 956 counts (0.0095%), MacOS returns a flux diff of 1274 counts (0.013%).The difference here may be in differing math libraries used for computation. The random seed that defines the source placement of the injected sources is fixed inside the test utility script, so that should not be a concern here. This ticket should aim to investigate the difference between Linux and MacOS.
NB: Our solution for DM-40669 in the short term will be to increase the delta threshold parameter by a small amount, thereby allowing this unit test to pass on both Linux and MacOS. As the threshold is already very small, a slight increase should not be detrimental to the veracity of the test.