Repository Broken (packfile not found) #14587

Open
opened 2025-11-02 11:16:56 -06:00 by GiteaMirror · 6 comments
Owner

Originally created by @MattSG on GitHub (Jun 11, 2025).

Description

2025/06/11 12:39:57 ...ices/context/repo.go:920:func91() [E] GetBranchCommit: packfile not found
2025/06/11 12:39:57 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal for [172.29.104.236:51010]:0, 500 Internal Server Error in 9.3ms @ context/repo.go:866(web.registerRoutes.RepoRef.RepoRefByType)
2025/06/11 12:39:57 ...eb/routing/logger.go:68:func1() [I] router: polling GET /user/events for [172.29.104.236:51010]:0, elapsed 3124.2ms @ events/events.go:18(events.Events)
2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /ISEM-Support/TradeManagementPortal.git/git-upload-pack for [172.29.104.236:51022]:0, 200 OK in 96.8ms @ repo/githttp.go:478(repo.ServiceUploadPack)
2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 9.6ms @ :1(http.Handler.ServeHTTP-fm)
2025/06/11 12:39:58 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found
2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 19.1ms @ :1(http.Handler.ServeHTTP-fm)
2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal.git/info/refs?service=git-upload-pack for [172.29.104.236:51027]:0, 401 Unauthorized in 1.7ms @ repo/githttp.go:518(repo.GetInfoRefs)
2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal.git/info/refs?service=git-upload-pack for [172.29.104.236:51027]:0, 200 OK in 100.4ms @ repo/githttp.go:518(repo.GetInfoRefs)
2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 9.5ms @ :1(http.Handler.ServeHTTP-fm)
2025/06/11 12:39:59 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found
2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 18.8ms @ :1(http.Handler.ServeHTTP-fm)
2025/06/11 12:39:59 ...eb/routing/logger.go:68:func1() [I] router: polling GET /user/events for [172.29.104.236:51010]:0, elapsed 3122.8ms @ events/events.go:18(events.Events)
2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /ISEM-Support/TradeManagementPortal.git/git-upload-pack for [172.29.104.236:51027]:0, 200 OK in 120.4ms @ repo/githttp.go:478(repo.ServiceUploadPack)
2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 14.4ms @ :1(http.Handler.ServeHTTP-fm)
2025/06/11 12:40:00 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found
2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 22.4ms @ :1(http.Handler.ServeHTTP-fm)

Page initially showed

500
GetBranchCommit, packfile not found

After restarting gitea, it now just shows

Gitea Version

1.23.6

Can you reproduce the bug on the Gitea demo site?

Yes

Log Gist

No response

Screenshots

Image

Git Version

git version 2.45.2.windows.1

Operating System

Windows 2016 Server

How are you running Gitea?

Windows Service with gogit version of gitea

Database

SQLite

Originally created by @MattSG on GitHub (Jun 11, 2025). ### Description 2025/06/11 12:39:57 ...ices/context/repo.go:920:func91() [E] GetBranchCommit: packfile not found 2025/06/11 12:39:57 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal for [172.29.104.236:51010]:0, 500 Internal Server Error in 9.3ms @ context/repo.go:866(web.registerRoutes.RepoRef.RepoRefByType) 2025/06/11 12:39:57 ...eb/routing/logger.go:68:func1() [I] router: polling GET /user/events for [172.29.104.236:51010]:0, elapsed 3124.2ms @ events/events.go:18(events.Events) 2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /ISEM-Support/TradeManagementPortal.git/git-upload-pack for [172.29.104.236:51022]:0, 200 OK in 96.8ms @ repo/githttp.go:478(repo.ServiceUploadPack) 2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 9.6ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) 2025/06/11 12:39:58 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found 2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 19.1ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) 2025/06/11 12:39:58 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal.git/info/refs?service=git-upload-pack for [172.29.104.236:51027]:0, 401 Unauthorized in 1.7ms @ repo/githttp.go:518(repo.GetInfoRefs) 2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed GET /ISEM-Support/TradeManagementPortal.git/info/refs?service=git-upload-pack for [172.29.104.236:51027]:0, 200 OK in 100.4ms @ repo/githttp.go:518(repo.GetInfoRefs) 2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 9.5ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) 2025/06/11 12:39:59 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found 2025/06/11 12:39:59 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 18.8ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) 2025/06/11 12:39:59 ...eb/routing/logger.go:68:func1() [I] router: polling GET /user/events for [172.29.104.236:51010]:0, elapsed 3122.8ms @ events/events.go:18(events.Events) 2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /ISEM-Support/TradeManagementPortal.git/git-upload-pack for [172.29.104.236:51027]:0, 200 OK in 120.4ms @ repo/githttp.go:478(repo.ServiceUploadPack) 2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateLog for 127.0.0.1:57560, 200 OK in 14.4ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) 2025/06/11 12:40:00 ...ons/commit_status.go:30:CreateCommitStatus() [E] Failed to create commit status for job 3567: GetCommit[6c2a9e0010ccf3b84c1ee367cdef41601a8d75cb]: packfile not found 2025/06/11 12:40:00 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/actions/runner.v1.RunnerService/UpdateTask for 127.0.0.1:57560, 200 OK in 22.4ms @ <autogenerated>:1(http.Handler.ServeHTTP-fm) Page initially showed 500 GetBranchCommit, packfile not found After restarting gitea, it now just shows ### Gitea Version 1.23.6 ### Can you reproduce the bug on the Gitea demo site? Yes ### Log Gist _No response_ ### Screenshots ![Image](https://github.com/user-attachments/assets/06fd1693-179f-4d3a-940a-db58bd3c3893) ### Git Version git version 2.45.2.windows.1 ### Operating System Windows 2016 Server ### How are you running Gitea? Windows Service with gogit version of gitea ### Database SQLite
GiteaMirror added the issue/not-a-bug label 2025-11-02 11:16:56 -06:00
Author
Owner

@MattSG commented on GitHub (Jun 11, 2025):

I can't rename the repository either

500 Internal Server Error
An error occurred:

ChangeRepositoryName, rename repository directory: rename E:\gitea\data\gitea-repositories\isem-support\trademanagementportal.git E:\gitea\data\gitea-repositories\isem-support\trademanagementportal_test.git: The process cannot access the file because it is being used by another process.

@MattSG commented on GitHub (Jun 11, 2025): I can't rename the repository either 500 Internal Server Error An error occurred: ChangeRepositoryName, rename repository directory: rename E:\gitea\data\gitea-repositories\isem-support\trademanagementportal.git E:\gitea\data\gitea-repositories\isem-support\trademanagementportal_test.git: The process cannot access the file because it is being used by another process.
Author
Owner

@wxiaoguang commented on GitHub (Jun 11, 2025):

The git repo on server side is corrupted, I think it's impossible to "fix" it unless you create a new repo and push your local repo again. And it doesn't seem to be a Gitea's bug.

TLDR: a git repo is a bunch of files on the file system. "packfile" is git repo's "core database". But the packfile on your server side is corrupted.

It's recommended to run git related services (say, Gitea) on a posix OS but not Windows, because Windows has different filesystem behaviors (eg: the message you see "The process cannot access the file because it is being used by another process"), then some edge cases would cause git repo corruption.

@wxiaoguang commented on GitHub (Jun 11, 2025): The git repo on server side is corrupted, I think it's impossible to "fix" it unless you create a new repo and push your local repo again. And it doesn't seem to be a Gitea's bug. TLDR: a git repo is a bunch of files on the file system. "packfile" is git repo's "core database". But the packfile on your server side is corrupted. It's recommended to run git related services (say, Gitea) on a posix OS but not Windows, because Windows has different filesystem behaviors (eg: the message you see "The process cannot access the file because it is being used by another process"), then some edge cases would cause git repo corruption.
Author
Owner

@wxiaoguang commented on GitHub (Jun 11, 2025):

ChangeRepositoryName, rename repository directory: rename E:\gitea\data\gitea-repositories\isem-support\trademanagementportal.git E:\gitea\data\gitea-repositories\isem-support\trademanagementportal_test.git: The process cannot access the file because it is being used by another process.

Maybe it's caused by zombie processes, or some Windows programs like anti-virus or backup software could cause such problem. There is no way to bypass unless you could figure out what process is using these files. Sometimes a reboot could help, but it's still not safe to run a git service in such environment.

@wxiaoguang commented on GitHub (Jun 11, 2025): > ChangeRepositoryName, rename repository directory: rename E:\gitea\data\gitea-repositories\isem-support\trademanagementportal.git E:\gitea\data\gitea-repositories\isem-support\trademanagementportal_test.git: The process cannot access the file because it is being used by another process. Maybe it's caused by zombie processes, or some Windows programs like anti-virus or backup software could cause such problem. There is no way to bypass unless you could figure out what process is using these files. Sometimes a reboot could help, but it's still not safe to run a git service in such environment.
Author
Owner

@MattSG commented on GitHub (Jun 11, 2025):

There are many many repositories unaffected. And I can still clone the repository from gitea without error from gitea, I plan to just recreate the repository at this point, just calling this out in case it's unrelated to above

@MattSG commented on GitHub (Jun 11, 2025): There are many many repositories unaffected. And I can still clone the repository from gitea without error from gitea, I plan to just recreate the repository at this point, just calling this out in case it's unrelated to above
Author
Owner

@wxiaoguang commented on GitHub (Jun 11, 2025):

There are many many repositories unaffected. And I can still clone the repository from gitea without error from gitea.

Yup, in most cases, git services on Windows could run flawlessly, and there are still many Windows users. But, "edge cases", one repo could be corrupted if something wrong happens.

I plan to just recreate the repository at this point, just calling this out in case it's unrelated to above

You can try to figure out which process is using the git files and make git/gitea stopped working. For example, the process tools from Microsoft : https://learn.microsoft.com/en-us/sysinternals/

And I think it's worth to try to reboot to get a clean run. And try to prevent other programs from affecting Gitea&git

@wxiaoguang commented on GitHub (Jun 11, 2025): > There are many many repositories unaffected. And I can still clone the repository from gitea without error from gitea. Yup, in most cases, git services on Windows could run flawlessly, and there are still many Windows users. But, "edge cases", one repo could be corrupted if something wrong happens. > I plan to just recreate the repository at this point, just calling this out in case it's unrelated to above You can try to figure out which process is using the git files and make git/gitea stopped working. For example, the process tools from Microsoft : https://learn.microsoft.com/en-us/sysinternals/ And I think it's worth to try to reboot to get a clean run. And try to prevent other programs from affecting Gitea&git
Author
Owner

@wxiaoguang commented on GitHub (Jun 12, 2025):

Related: Internal Server Error 500: GetBranchCommit: packfile not found #34471

@wxiaoguang commented on GitHub (Jun 12, 2025): Related: Internal Server Error 500: GetBranchCommit: packfile not found #34471
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/gitea#14587