Variant getFieldByKey() on large objects silently fails if variant metadata is unsorted
未关闭
Type: bug
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.6k
- 平均合并
- 3 天 12 小时
- 30 天内合并 PR
- 33
描述
### Describe the bug, including details regarding any error messages, version, and platform.
Variant method getFieldByKey(String key) looks up a key by simple walk if key count < 32, binary search if above that. But the binary search assumes the metadata is sorted. This is optional according to the format spec; there's a bit in the variant to indicate whether or not a variant's metadata is unsorted
the test `testUnsortedMetadataObject()` does test unsorted support -but it only checks on a small enough object that binary search isn't involved
### Component(s)
Core
贡献指南
这个仓库没有索引到贡献指南
评估
这个 Issue 还没有评估数据。