Executing a recipe with variables from CMIP6 Omon table (e.g., chl) generates an error in fix_metadata of model dataset ..
2019-03-18 17:14:48,358 UTC [17891] ERROR Failed to run fix_metadata([<iris 'Cube' of mass_concentration_of_phytoplankton_expressed_as_chlorophyll_in_sea_water / (kg m-3) (time: 180; Vertical T levels: 75; -- : 294; -- : 362)>], {'project': 'CMIP6', 'dataset': 'CNRM-ESM2-1', 'short_name': 'chl', 'cmor_table': 'CMIP6', 'mip': 'Omon', 'frequency': ''})
2019-03-18 17:14:48,991 UTC [17891] ERROR Program terminated abnormally, see stack trace below for more information
Traceback (most recent call last):
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_main.py", line 228, in run
conf = main(args)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_main.py", line 156, in main
process_recipe(recipe_file=recipe, config_user=cfg)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_main.py", line 206, in process_recipe
recipe.run()
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_recipe.py", line 1050, in run
self.tasks, max_parallel_tasks=self._cfg['max_parallel_tasks'])
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_task.py", line 581, in run_tasks
_run_tasks_sequential(tasks)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_task.py", line 592, in _run_tasks_sequential
task.run()
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_task.py", line 223, in run
input_files.extend(task.run())
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/_task.py", line 226, in run
self.output_files = self._run(input_files)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/preprocessor/__init__.py", line 392, in _run
product.apply(step, self.debug)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/preprocessor/__init__.py", line 259, in apply
self.cubes = preprocess(self.cubes, step, **self.settings[step])
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/preprocessor/__init__.py", line 201, in preprocess
result.append(_run_preproc_function(function, items, settings))
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/preprocessor/__init__.py", line 187, in _run_preproc_function
return function(items, **kwargs)
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/cmor/fix.py", line 116, in fix_metadata
checker(cube).check_metadata()
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/cmor/check.py", line 104, in check_metadata
self.report_errors()
File "/users/home/ans033/GIT/ESMValTool/esmvaltool/cmor/check.py", line 121, in report_errors
raise CMORCheckError(msg)
esmvaltool.cmor.check.CMORCheckError: There were errors in variable chl:
time: Frequency not supported by checker
in cube:
Executing a recipe with variables from CMIP6 Omon table (e.g., chl) generates an error in fix_metadata of model dataset ..
Here below the error message
Note that in
fix_metadatathe frequency field is empty.For some reason, the code is not picking up the
frequencyfield from the variable of the CMIP6 table, but if I hack the CMIP6_Omon.json table by adding the frequency in the file header (as it was before the last CMIP6 tables update) the code goes through the step.As a first guess, something maybe wrong in getting frequency from variables for CMIP6 table here around
https://github.com/ESMValGroup/ESMValTool/blob/f5eb5a3657325cc5d7c153a13856114c1ff29be0/esmvaltool/cmor/table.py#L104-L116