docs: clarify Instance identity and deletion semantics
E2E Tests / Run on Ubuntu (pull_request) Failing after 38s
Tests / Run on Ubuntu (pull_request) Successful in 6m52s
Lint / Run on Ubuntu (pull_request) Successful in 8m23s

This commit is contained in:
2026-09-13 15:20:26 +00:00
parent a0afbf992c
commit bb87316773
4 changed files with 48 additions and 15 deletions
+8 -2
View File
@@ -50,6 +50,9 @@ namespace,名称须合法,两个字段须存在且非空。管理员维护 E
Instance endpoint、管理凭据引用和 allowlist 可以修改。修改后 controller 重新验证;
删除 allowlist 项目不会自动从已有 Tenant database 删除 extension。
endpoint 由管理员负责,不校验变更前后是否同一物理服务器/registry,只重验新配置
的连接与管理能力。新 UID 按新 Instance 处理,不授权接管旧 UID 的 Tenant 资源。
### Status
| JSON path | 类型 | 含义 |
@@ -147,8 +150,11 @@ phase 用于进度展示、恢复和排障。
- `Retain` 不需要等待外部依赖;删除 CR 后外部记录保留原 UID 并标记 unmanaged。
- `Delete` 添加 finalizer,严格按规格的所有权验证和清理顺序执行;失败保持 finalizer。
- controller 不为 `PostgreSQLInstance` 级联删除 Tenant 或外部资源;存在引用时 Instance
删除应被 finalizer 阻止,直到 Tenant 被删除或管理员使用运维逃生流程。
- Instance 开始受管时即添加并保存 finalizer;删除时停止新供应,存在 Tenant 引用
(包括正在删除的 Tenant)就保留 finalizer,无引用才移除。引用查询失败时继续等待。
不级联删除 Tenant 或外部资源;管理员可使用运维逃生流程。
- finalizer 不禁止创建 Tenant CR;并发创建者遇到删除中或不存在的 Instance 不得
开始供应。首版不增加跨对象锁或准入控制,不承诺跨对象原子删除。
## 示例