Repository navigation
Conversation
Return defensive reserved property lists so consumers cannot alter table metadata validation. Signed-off-by: Minh Vu <vuhoangminh97@gmail.com>
a64d4b3 to
0539be8
Compare
|
|
||
| - **Table purge is required on catalogs.** The `catalog.Catalog` interface now embeds `catalog.PurgeableCatalog`; every custom catalog implementation must provide `PurgeTable(ctx, identifier) error`. The narrow `catalog.PurgeableTable` interface is renamed to `catalog.PurgeableCatalog`. Built-in purge behavior is unchanged. | ||
| - **Unify statistics blob types with Puffin.** Replace `table.BlobType` with `puffin.BlobType` when constructing `table.BlobMetadata`. Replace `table.BlobTypeApacheDatasketchesThetaV1` with `puffin.BlobTypeDataSketchesTheta` and `table.BlobTypeDeletionVectorV1` with `puffin.BlobTypeDeletionVector`. Use `puffin.BlobType.IsKnown()` to identify the types defined by the Puffin specification; the redundant `table.BlobType.IsValid()` method is removed. Unknown non-empty blob type names still round-trip through table metadata. | ||
| - **Reserved table properties now use a read-only API.** Replace references to `table.ReservedProperties` with `table.ReservedProperties()`. The function returns a fresh slice, so callers cannot change metadata validation by modifying it. |
There was a problem hiding this comment.
Let's keep this release note.
…eam-20261024 Restore the compatibility note from 0539be8 dropped by the release-notes sync.
zeroshade
left a comment
There was a problem hiding this comment.
The exported [9]string let any caller rewrite the reserved list and silently change SetProperties/RemoveProperties validation process-wide, so hiding it behind ReservedProperties() returning a clone is a real fix. Iterating the unexported array internally avoids the copy, and TestReservedPropertiesCannotBeMutated pins it. I pushed a merge of main (dc116c0) that restores the compatibility note from 0539be8, which addresses @badalprasadsingh's request. go vet ./... (including -tags integration) and go test ./table/ pass. LGTM.
|
@badalprasadsingh I pushed a merge of main ( |
badalprasadsingh
left a comment
There was a problem hiding this comment.
lgtm :) the release note is back. Though the #2318 conflict needs to be resolved: keeping both the bullets in release notes.
cc: @zeroshade
…eam-20261024 Keep both releases.md notes.
zeroshade
left a comment
There was a problem hiding this comment.
Re-approving after merging main again (81d66a0), keeping both releases.md notes; @badalprasadsingh's approval covers the restored note. go vet ./... (including -tags integration) and go test ./table/ pass. LGTM.
Keep the pre-v1 rename notes alongside the notes from apache#2326 and apache#2331.
What
ReservedPropertiesreturn a fresh slice.Why
Implementation
Refs #2062.