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
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 involvedComponent(s)
Core