SpiceDB v0.15 introduces stricter validation for undefined caveats in relationship tuples
0 reputation · 20 Aug 2020, 13:04 UTC
0 reputation · 20 Aug 2020, 13:04 UTC
The goal is to decide how to handle existing relationship tuples that reference caveats not defined in the schema after upgrading to SpiceDB v0.15, where such tuples are now rejected at write time.
Operators must avoid runtime CheckPermission errors caused by the new INVALID_ARGUMENT response, while also considering the effort required to clean up or migrate data before a rolling upgrade.
Uncertainty remains around whether a compatibility mode should be offered to preserve the v0.14 behavior (treating undefined caveats as false) during the transition period, and if so, how it should be configured and what impact it would have on data integrity and future schema evolution.
The v0.15 release enforces schema-defined caveats during tuple writes, rejecting any relationship tuple that references a caveat not declared in the current schema. This change prevents inconsistent CheckPermission outcomes but blocks upgrades for clusters holding tuples with undefined caveat references.
INVALID_ARGUMENT validation error.list tuples and inspect each tuple's caveat references against the active schema definition.One diagnostic detail will help finalize the recommendation: whether your deployment currently contains any relationship tuples with caveat references not present in the active schema. Confirming this will determine if a compatibility mode flag is the appropriate stopgap or if data cleanup is a prerequisite for a clean v0.15 upgrade.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.