apache / apache/arrow-go

Schema.Equal does not compare schema metadata, but does compare field metadata

Open
#454 1 comment 0 reactions 0 assignees View on GitHub
good-first-issue Type: enhancement
Dominant language
Assembly
Stars
404
Forks
145
Avg merge
2d 4h
Merged PRs (30d)
87

Description

### Describe the enhancement requested

> Equal does not compare the metadata.

https://github.com/apache/arrow-go/blob/2900ed6f8ae27398d825b2fde2f67d77dcf780b4/arrow/schema.go#L225-L245

But `Field.Equal` does compare the metadata:

https://github.com/apache/arrow-go/blob/2900ed6f8ae27398d825b2fde2f67d77dcf780b4/arrow/datatype_nested.go#L956-L968

This is a little inconsistent. Ideally we would be able to choose how to compare. We could do the comparison ourselves but it's rather tedious, as we have to recurse into every type to find child fields. (Incidentally, if the DataType interface had a method to get the child fields (possibly empty) regardless of type, this would become much easier.)

### Component(s)

Other

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.