cate
cate copied to clipboard
Some error dialog does not have a Report Issue button
Expected behavior
Error dialog box has a Report Issue button
Actual behavior
Error dialog box does not have a Report Issue button
Steps to reproduce the problem
- Open esacci.AEROSOL.mon.L3.AAI.multi-sensor.multi-platform.ms_uvai.1-5-7.r1 dataset with a time range of 1978-11-01,1980-11-31
- Click Download & Open Local
- When download is almost complete, an error dialog box (without Report Issue button) popped up
Here is the stacktrace:
Traceback (most recent call last):
File "C:\Projects\cci-toolbox\cate\cate\ds\local.py", line 176, in open_dataset
excluded_variables], monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\ds.py", line 615, in open_xarray_dataset
**kwargs)
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\backends\api.py", line 642, in open_mfdataset
data_vars=data_vars, coords=coords)
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\core\combine.py", line 436, in auto_combine
for ds in grouped]
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\core\combine.py", line 436, in <listcomp>
for ds in grouped]
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\core\combine.py", line 365, in _auto_concat
return concat(datasets, dim=dim, data_vars=data_vars, coords=coords)
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\core\combine.py", line 120, in concat
return f(objs, dim, data_vars, coords, compat, positions)
File "C:\Miniconda3\envs\cate-env\lib\site-packages\xarray\core\combine.py", line 276, in _dataset_concat
'variable %s not equal across datasets' % k)
ValueError: variable absorbing_aerosol_index not equal across datasets
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Projects\cci-toolbox\cate\cate\util\web\jsonrpchandler.py", line 209, in send_service_method_result
result = future.result()
File "C:\Miniconda3\envs\cate-env\lib\concurrent\futures\_base.py", line 425, in result
return self.__get_result()
File "C:\Miniconda3\envs\cate-env\lib\concurrent\futures\_base.py", line 384, in __get_result
raise self._exception
File "C:\Miniconda3\envs\cate-env\lib\concurrent\futures\thread.py", line 56, in run
result = self.fn(*self.args, **self.kwargs)
File "C:\Projects\cci-toolbox\cate\cate\util\web\jsonrpchandler.py", line 306, in call_service_method
result = method(*method_params, monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\webapi\websocket.py", line 291, in set_workspace_resource
monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\wsmanag.py", line 317, in set_workspace_resource
workspace.execute_workflow(res_name=res_name, monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\workspace.py", line 612, in execute_workflow
self.workflow.invoke_steps(steps, context=self._new_context(), monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\workflow.py", line 627, in invoke_steps
steps[0].invoke(context=context, monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\workflow.py", line 318, in invoke
self._invoke_impl(_new_context(context, step=self), monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\workflow.py", line 980, in _invoke_impl
return_value = self._op(monitor=monitor, **input_values)
File "C:\Projects\cci-toolbox\cate\cate\core\op.py", line 216, in __call__
return_value = self._wrapped_op(**input_values)
File "C:\Projects\cci-toolbox\cate\cate\ops\io.py", line 83, in open_dataset
monitor=monitor)
File "C:\Projects\cci-toolbox\cate\cate\core\ds.py", line 540, in open_dataset
return data_source.open_dataset(time_range, region, var_names, monitor=monitor.child(20))
File "C:\Projects\cci-toolbox\cate\cate\ds\local.py", line 196, in open_dataset
raise ValidationError(msg) from e
cate.core.types.ValidationError: Cannot open local dataset for time range 1978-11-01, 1980-12-01T23:59:59:
variable absorbing_aerosol_index not equal across datasets
Specifications
cate-desktop 2.0.0-dev.13 cate-core 2.0.0-dev.12
Assigned to @papesci because ValidationError is the wrong error type here. ValidationError should be raised on invalid user input, but the user didn't do anything wrong,
Removed "gui" label, because this is just a representation detail but not cause.