Skip to content

capabilities: update the definition of the protobuf so that the zero protobuf struct results in pre-23.1 serverless behavior #96736

@arulajmani

Description

@arulajmani

Describe the problem

Once #96390 lands, the tenant capabilities subsystem will be hooked up. As a result, all secondary tenant requests will be subject to capability checks. As of the time of writing, the only AdminRequest that has capabilities associated with it is AdminSplit. However, this will soon expand to other operations such as scatters, relocate range, relocate lease etc.

Internally, operations such as RESTORE/IMPORT etc. use these Admin requests. We will need to do something to prevent these operations from failing for existing (Serverless) tenants after upgrading to 23.1.

(An option that was discussed internally, is to add a migration that grants secondary tenants can_admin_split (and any other capability they need that is added after writing up this issue) in Serverless. )

We are considering instead flipping the boolean meaning of the capabilities for pre-23.1 operations so that their default value coincides with what CC Serverless needs.

Jira issue: CRDB-24300
Epic: CRDB-23344

Metadata

Metadata

Assignees

Labels

C-bugCode not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior.T-multitenantIssues owned by the multi-tenant virtual teambranch-release-23.1Used to mark GA and release blockers, technical advisories, and bugs for 23.1release-blockerIndicates a release-blocker. Use with branch-release-2x.x label to denote which branch is blocked.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions