apache / apache/gravitino

[Improvement] Optimize the performance of tree lock in write scenario

Open
#9,875 0 comments 0 reactions 0 assignees View on GitHub
improvement
Dominant language
Java
Stars
3.2k
Forks
935
Avg merge
1d 16h
Merged PRs (30d)
298

Description

### What would you like to be improved?

According to the test in #9862 and #9863, the performance of tree lock in some write cases are rather low. The root cause is that on concurrent write scenario, many threads are racing to get out of the lock of a specific node, and only one of them will succeed, then most of them will be blocked and wait.

### How should we improve?

Try to optimize the performance ofthe tree lock

Contributor guide

Open the contributing guide

Research direction

Start with the tests described in #9862 and #9863, then locate the tree-lock implementation and trace concurrent write contention around a node. Compare the current write-path behavior with those tests; done means improved write performance while preserving lock correctness and passing the relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.