Skip to content

Concatenate: wrong error message about scalar coords #4096

@rcomer

Description

@rcomer

🐛 Bug Report

How To Reproduce

Attempt to concatenate cubes that are identical apart from the coordinate points.

import iris

print(iris.__version__)

cube1 = iris.cube.Cube(
    range(3),
    dim_coords_and_dims=[(iris.coords.DimCoord(range(3), long_name='foo'), 0)],
    aux_coords_and_dims=[(iris.coords.AuxCoord(1, long_name='bar'), None)])

cube2 = iris.cube.Cube(
    range(3),
    dim_coords_and_dims=[(iris.coords.DimCoord(range(3, 6), long_name='foo'), 0)],
    aux_coords_and_dims=[(iris.coords.AuxCoord(2, long_name='bar'), None)])

print(iris.cube.CubeList([cube1, cube2]).concatenate_cube())

Get an error about mismatched metadata:

3.0.1
Traceback (most recent call last):
  File "concatenate_error.py", line 15, in <module>
    print(iris.cube.CubeList([cube1, cube2]).concatenate_cube())
  File "[site-packages-path]/iris/cube.py", line 551, in concatenate_cube
    check_ancils=check_ancils,
  File "[site-packages-path]/iris/_concatenate.py", line 324, in concatenate
    check_ancils,
  File "[site-packages-path]/iris/_concatenate.py", line 839, in register
    match = self._cube_signature.match(cube_signature, error_on_mismatch)
  File "[site-packages-path]/iris/_concatenate.py", line 567, in match
    raise iris.exceptions.ConcatenateError(msgs)
iris.exceptions.ConcatenateError: failed to concatenate into a single cube.
  Scalar coordinates metadata differ: bar != bar

Expected behaviour

The error should be about the points, not the metadata.

Environment

  • OS & Version: RHEL7.9
  • Iris Version: 3.0.1

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions