Skip to content

fix(writer): include spec ID in partition identity - #3584

Open
lyne7-sc wants to merge 2 commits into
apache:mainfrom
lyne7-sc:fix/partition-writer-spec-identity
Open

lyne7-sc wants to merge 2 commits into
apache:mainfrom
lyne7-sc:fix/partition-writer-spec-identity

Conversation

@lyne7-sc

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

What changes are included in this PR?

Equal partition values under different specs can cause partitioning writers to mix rows into a file carrying the wrong spec ID. Clustered writers can also reject a distinct partition because another spec's partition with the same values was already closed.

Identify partitions by both spec ID and values so writer reuse, partition switching, and closed-partition checks respect spec boundaries.

Are these changes tested?

  • fanout_separates_specs_with_equal_partition_values verifies that alternating writes across specs produce files with the correct spec IDs, partition values, and rows.
  • clustered_separates_specs_with_equal_partition_values verifies separation across specs, including after closing a partition with equal values, and rejection of writes back to the same closed partition.

AI Disclosure

Used Codex to help write this.

This branch has not been deployed

No deployments
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.

Partitioning writers conflate equal partition values across specs

1 participant