Skip to content

[format][python] Reject duplicate MAP BLOB keys - #9107

Open
QuakeWang wants to merge 3 commits into
apache:masterfrom
QuakeWang:map-dup-keys
Open

[format][python] Reject duplicate MAP BLOB keys#9107
QuakeWang wants to merge 3 commits into
apache:masterfrom
QuakeWang:map-dup-keys

Conversation

@QuakeWang

Copy link
Copy Markdown
Member

Purpose

MAP<K, BLOB> writers accepted duplicate keys from Python key-value pairs and Java binary-key maps, while readers silently kept the last value. This violated map uniqueness and could persist discarded BLOB payloads.

Validate serialized keys before writing and reject duplicate-key payloads when reading in Java and Python.

Tests

  • Java MAP BLOB format tests
  • Python writer, reader, and table tests
  • Checkstyle, Spotless, Enforcer, Flake8, and license checks

MAP<K, BLOB> writers accepted duplicate keys from Python key-value pairs and Java binary-key maps, while readers silently kept the last entry. This violates map uniqueness and can persist discarded BLOB payloads.

Validate serialized keys before writing and reject duplicate keys while reading in Java and Python. Cover writer rejection, malformed payloads, and table round trips.

Signed-off-by: QuakeWang <wangfuzheng0814@foxmail.com>
Signed-off-by: QuakeWang <wangfuzheng0814@foxmail.com>
Signed-off-by: QuakeWang <wangfuzheng0814@foxmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant