matrixorigin / matrixorigin/matrixone

[Question] restore account 后是否应恢复普通租户 admin 用户的锁定状态

Open
#24,631 1 comment 0 reactions 1 assignee Claimed by @Ariznawlll View on GitHub
kind/question severity/s0
Dominant language
Go
Stars
1.9k
Forks
311
Avg merge
1d 3h
Merged PRs (30d)
768

Description

关联 feature: #21685

在为 `ALTER USER ... LOCK/UNLOCK` 补充测试时,发现一个需要产品确认的 restore 行为。

当前实现中,`ALTER USER ... LOCK` 会修改租户内 `mo_catalog.mo_user.status` 为 `forbid`。普通租户执行 `restore account` 时,`mo_catalog.mo_user` 会随 snapshot 一起恢复。

因此会出现以下行为:

1. 创建普通租户 `acc`,admin 用户为 `admin`
2. 在普通租户内执行:
```sql
alter user admin lock;
```
3. 对该普通租户创建 snapshot
4. 再执行:
```sql
alter user admin unlock;
```
5. restore 该普通租户到前面的 snapshot
6. restore 后,普通租户 `admin` 用户状态恢复为 `forbid`

需要确认:

- 普通租户 restore 后,`admin` 用户的 lock 状态也恢复为 snapshot 时的 `forbid`,是否符合产品预期?
- 如果符合预期,测试会按当前行为固化。
- 如果不符合预期,是否需要在 restore 过程中对普通租户 admin 用户做特殊处理,避免恢复成锁定状态?

补充说明:

- `restore account` 只针对普通租户,系统租户 `sys` 不作为 restore 对象。
- 已有连接不受 `lock` 影响,主要影响新连接登录。

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.