From 4919c8c1fdcaf527642ea7540cf7d747d796c690 Mon Sep 17 00:00:00 2001 From: davidh-ssec <david.hoese@ssec.wisc.edu> Date: Sat, 12 May 2018 14:30:14 -0500 Subject: [PATCH] Fix handling of unwritten variables --- aosstower/level_b1/nc.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/aosstower/level_b1/nc.py b/aosstower/level_b1/nc.py index 099eea9..c85f9a7 100644 --- a/aosstower/level_b1/nc.py +++ b/aosstower/level_b1/nc.py @@ -16,7 +16,7 @@ from aosstower.level_00 import parser from metobscommon.util import calc from metobscommon.util.nc import (make_summary_dict, write_vars, calculate_wind_gust, summary_over_interval, - create_variables) + create_variables, write_qc_for_unwritten) LOG = logging.getLogger(__name__) SOFTWARE_VERSION = '00' @@ -125,7 +125,15 @@ def create_giant_netcdf(input_files, output_fn, zlib, chunk_size, nc_file.createDimension('time', None) nc_file.createDimension('max_len_station_name', 32) create_variables(nc_file, first_stamp, database, chunk_sizes, zlib) - write_vars(nc_file, frame, database, station_info) + written_vars = write_vars(nc_file, frame, database, station_info) + unwritten_vars = set(nc_file.variables.keys()) - set(written_vars) + written_vars.extend(write_qc_for_unwritten(nc_file.variables, + unwritten_vars)) + # remove any of the qc_ variables we just added + unwritten_vars = set(nc_file.variables.keys()) - set(written_vars) + for unwritten in unwritten_vars: + LOG.warning("Variable created but no data written: {}".format(unwritten)) + write_global_attributes(nc_file, [os.path.basename(x) for x in input_files], interval=interval_width, -- GitLab