Adjustments to remove dangling repository locks #32485
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR allows Gitea to detect if a repo has any dangling locks (older than a threshold) and remove them if needed. It also detects if a git process has crashed (in that case, it will also remove any locks that remain).
By default, the threshold for a lock to be eligible for removal is
1 hour
. This can be changed via theDANGLING_LOCK_THRESHOLD
configuration parameter (the PR for the docs is still in the works).There are still some points that might need clarification.
refs
level so we must search for them by walking the repo's directory structure;Resolves #22578
P.S. It seems that the unit tests are breaking due to some timing issue (evidence attached)
P.S, Below is the description of the PR when it was a draft