apache / apache/parquet-java

Variant getFieldByKey() on large objects silently fails if variant metadata is unsorted

Offen
#3,529 4 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @nssalian Auf GitHub ansehen
Type: bug
Vorherrschende Sprache
Java
Sterne
3.1k
Forks
1.6k
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
33

Beschreibung

### 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

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.