Possible race condition between importing a repo from GitHub and its deletion results in a permanently occupied project name for an inexistent project #1307
Labels
No Label
bug
Codeberg
contribution welcome
docs
duplicate
enhancement
infrastructure
legal
licence / ToS
public relations
question
s/Gitea/Forgejo
s/Pages
s/Weblate
s/Woodpecker
security
service
spam
upstream
wontfix
No Milestone
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Codeberg/Community#1307
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
Comment
Sometimes, when a repo is imported from GitHub, importing stalls ethernally. My hypothesis is that Codeberg backend IP address runs out of GitHub API requests quota (60 per hour for an IP, 1000 per hour for an API token) and doesn't process the error properly. Then the solution is to go to settings link and delete the partly-imported repo (it is unusable on that point). And then try again later. Mostly this works, but in a large enough (the minority, but even 1 such case is enough to create problems) fraction of such failed tries the following happens.
a.
https://codeberg.org/<namespace>/<repo name>
results in 404b.
https://codeberg.org/<namespace>/<repo name>/settings
results in 404a. trying to import to such name results in a message "The repository name is already used."
b. trying to create it from scratch results in "Files already exist for this repository. Contact the system administrator."
The hypothesis is that a race condition happens and migration process does something after the repo is deleted by user explicitly.
It'd be nice to
The temporary workarounds are:
I freed your repos, but the problem still stands.
Thank you!