Hi all,

Flagging a PR <https://github.com/apache/polaris/pull/4659> that implements
handler-level idempotency, following up on
the earlier idempotency design discussion on this list. Here is the design
thread <https://lists.apache.org/thread/4c8xtj85hvj1w1mxtknj0gk6t09q7mqj>.

Summary:
- Implements the "optimistic commit" model (Model B): the operation runs
  first, and the outcome is recorded after it reaches a terminal status
  under an Idempotency-Key (UUIDv7) - no reservation/lease and no stored
  response body. Replays are rebuilt from authoritative catalog state.
- Scoped to createTableDirect as the first operation; the framework
  (store SPI, in-memory + relational-JDBC backends, CDI wiring, relational
  schema v5, 422-on-binding-mismatch) is general.
- Off by default: polaris.idempotency.enabled=false.

Planned follow-ups (kept out to stay focused):
- Background purge of expired records (the purgeExpired SPI primitive is
  already in place).
- Extending coverage to other write operations incrementally.

Reviews/feedback welcome.

Thanks,
Huaxin

Reply via email to