Commit 391d581c7281ce471f250a4cbd710e5a79837e89
1 parent
32a46001
Exists in
master
and in
2 other branches
Make the CDF download more resilient to NaNs in the data.
Showing
1 changed file
with
11 additions
and
2 deletions
Show diff stats
web/run.py
... | ... | @@ -1039,6 +1039,8 @@ def download_targets_cdf(targets, inp, started_at, stopped_at): |
1039 | 1039 | environ['CDF_LIB'] = CDF_LIB |
1040 | 1040 | from spacepy import pycdf |
1041 | 1041 | try: |
1042 | + # todo: maybe move this to the daily cache warmup ? | |
1043 | + log.info("Updating spacepy's table of leap seconds…") | |
1042 | 1044 | import spacepy.toolbox |
1043 | 1045 | spacepy.toolbox.update() |
1044 | 1046 | except Exception as e: |
... | ... | @@ -1091,8 +1093,15 @@ def download_targets_cdf(targets, inp, started_at, stopped_at): |
1091 | 1093 | index_x = available_params.index('xhee') |
1092 | 1094 | index_y = available_params.index('yhee') |
1093 | 1095 | for dkey in dkeys: |
1094 | - values_xhee.append(data[dkey][index_x]) | |
1095 | - values_yhee.append(data[dkey][index_y]) | |
1096 | + value_xhee = data[dkey][index_x] | |
1097 | + value_yhee = data[dkey][index_y] | |
1098 | + # We've got some `None`s cropping up in the data sometimes. | |
1099 | + # While they solve this upstream, let's make an ugly fix! | |
1100 | + if (value_xhee is not None) and (value_yhee is not None): | |
1101 | + values_xhee.append(value_xhee) | |
1102 | + values_yhee.append(value_yhee) | |
1103 | + else: | |
1104 | + log.warn("Orbit data for %s has NaNs." % target_slug) | |
1096 | 1105 | cdf_handle[kx] = values_xhee |
1097 | 1106 | cdf_handle[ky] = values_yhee |
1098 | 1107 | cdf_handle[kx].attrs['UNITS'] = 'Au' | ... | ... |