Description
If a file exists in the local cache, the file is not verifid on a call to getreferences
. Using the example in this issue below, when run the first time (assuming no corresponding file exists) the file will be downloaded and verified as seen here
Lines 673 to 680 in aa0d8f3
If run a second time (when the file exists) the file will be opened and not verified. This can be confirmed by replacing the file with a blank file of the same name.
import logging
import crds
logging.basicConfig(level=logging.DEBUG)
logging.root.setLevel(logging.DEBUG)
dd = {
'roman.meta.instrument.name': 'WFI',
'roman.meta.instrument.detector': 'WFI02',
'roman.meta.exposure.start_time': '2021-01-01T00:00:00.000',
}
crds.getreferences(dd, reftypes=('mask',), observatory='roman')
@stscieisenhamer came up with the initial test (replacing the file with a blank file) and mentioned that this issue can result in an incorrect local crds cache if multiple processes attempt to fetch the same file (crds attempts to protect against this but may not be perfect). @zacharyburnett may have fixed the jwst regression tests to improve the reliability of crds syncing and these improvements might be port-able to roman to improve the reliability of regression tests.
Activity