JingsongLi opened a new pull request, #17:
URL: https://github.com/apache/terraform-provider-paimon/pull/17

   Imported primary-key tables could fail option-only updates when omitted keys 
or nullability were treated as empty/default values. Java-normalized policy 
JSON could also be mistaken for a failed mutation or a content change requiring 
drop-and-create. This change preserves inherited schema state, configures 
primary keys through Paimon's Java option, and reconciles equivalent policies 
without detaching them.
   
   ## API and lifecycle changes
   
   - Configure primary keys with `options["primary-key"]`; expose normalized 
`primary_keys` as a computed output. Preserve equivalent option spelling, 
permit same-value adoption after import, and require explicit 
`allow_replacement` for immutable/key changes.
   - Preserve omitted field nullability and keys across updates, including 
deferred field/key configuration. Rename `catalog_id` to `server_id` and 
`allow_destructive_changes` to `allow_replacement`, with version-0 resource 
state migration.
   - Compare known Java policy AST normalization across create, read, plan and 
update, including name-based field references, single-child predicates and 
atomic cast aliases. Keep non-atomic content replacement disabled by default, 
and avoid reading uncreated destinations during identity replacement.
   - Treat field defaults as constant strings, reject mixed bearer/DLF 
configuration, and retain management of options whose removal has not been 
confirmed.
   - Bound requests and mutation reconciliation; require and refresh ECS IMDS 
session tokens; preserve HTTP status against body overrides and suppress 
credential echoes in diagnostics. Definitively rejected policy creates do not 
adopt existing policies.
   
   ## Compatibility and validation
   
   The HCL changes above require configuration updates; resource state metadata 
is upgraded automatically. `docs/api-compatibility.md` documents the migration 
and exact Paimon/Iceberg source references. Permission and policy resources 
remain experimental.
   
   Passed locally:
   
   - `make check` (vet, race tests, build, formatting and six example 
validations)
   - `make test-acceptance` (Terraform 1.13.5 fixture lifecycles, imports, 
replacement guards, deferred schemas and policy normalization)
   - `golangci-lint run`, `make check-license`, documentation link checks and 
`git diff --check`
   - Two rounds of independent focused review and regression verification
   
   This also adds OpenTofu protocol CI, an opt-in real Catalog workflow, and a 
public Registry installation verifier. Real REST/DLF integration was not run 
without an isolated endpoint; signed Registry installation was not run without 
a published release. Local OpenTofu execution was terminated by macOS, so 
OpenTofu compatibility remains unverified locally.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to