yuqi1129 opened a new issue, #13731:
URL: https://github.com/apache/gravitino/issues/13731
### Describe the subtask
Remove TreeLock from the 52 call sites whose operations only write the
Gravitino entity store, or never write it. The database already enforces their
invariants. This lands in several PRs:
- `PartitionOperationDispatcher` (6), `TagManager` (13), `PolicyManager`
(7), `OwnerManager` (4).
- Partition operations never write the store. The `CatalogWrapper` lease
(#12403) keeps the connector alive.
- Tag and policy: strict insert, version CAS, metalake row `FOR SHARE` on
create. Assignments lock the tag/policy rows and the live endpoint in one
transaction (#13004, #12206).
- Owner: one live owner per object, with object and principal rows fenced
(#13002). The plugin call already runs outside the lock.
- `StatisticManager` (6), after #13177.
- `ModelOperationDispatcher` (16). First verify that version-number
allocation and alias uniqueness in `linkModelVersion` are decided in one
transaction.
Each PR adds race tests, for example: concurrent create leaves one winner,
delete racing with association leaves no association, concurrent `setOwner`
leaves one owner.
### Parent issue
https://github.com/apache/gravitino/issues/13730
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]