go-gitea / gitea

Git with a cup of tea! Painless self-hosted all-in-one software development service, including Git hosting, code review, team collaboration, package registry and CI/CD
https://gitea.com
MIT License
44.38k stars 5.43k forks source link

Cherry picking to other branch hangs #29598

Open achikhv opened 7 months ago

achikhv commented 7 months ago

Description

In v1.21.7 cherry picking commit hangs forever. The logs are:

2024/03/05 10:51:57 ...eb/routing/logger.go:102:func1() [I] router: completed GET /LersUchet/LersUchet/_cherrypick/1dbf0485111513f185088e450402c992824e4952/release/3.55?ref=release%2F3.55&refType=branch&cherry-pick-type=cherry-pick for [192.168.1.112:57444]:0, 200 OK in 281.1ms @ repo/cherry_pick.go:27(repo.CherryPick)
2024/03/05 10:52:05 ...eb/routing/logger.go:68:func1() [W] router: slow      POST /LersUchet/LersUchet/_cherrypick/1dbf0485111513f185088e450402c992824e4952/release/3.55 for [192.168.1.112:57444]:0, elapsed 3848.5ms @ repo/cherry_pick.go:67(repo.CherryPickPost)

I think that in 1.21.5 cherry picking worked, so I tried to downgrade to 1.21.5 but cherry picking hangs there too. Recently I had upgraded git on this server, so bug may have appeared after that.

Gitea's windows service also fails to stop gracefully just like I described in #29409. My guess is that it is related to #29402

Gitea Version

1.21.7

Can you reproduce the bug on the Gitea demo site?

No

Log Gist

No response

Screenshots

No response

Git Version

2.43.0, Wire Protocol Version 2 Enabled

Operating System

Windows Server 2019

How are you running Gitea?

Windows service from binary

Database

MSSQL

wxiaoguang commented 7 months ago

I think that in 1.21.5 cherry picking worked, so I tried to downgrade to 1.21.5 but cherry picking hangs there too. Recently I had upgraded git on this server, so bug may have appeared after that.

If 1.21.5 doesn't work either, then it doesn't seem related to #29402 (29402 is only a regression in 1.21.6)

I guess there are some old bugs for Windows.

Recently I had upgraded git on this server, so bug may have appeared after that.

Maybe it is related. Could you downgrade the git version?

achikhv commented 7 months ago

Hello!

Downgrading git to 2.39.0 didn't help, cherry picking hangs. I actually doubt if if ever had worked in 1.21.5.

Just in case I have tried gogit version, and it hangs as well.

wxiaoguang commented 7 months ago

If I understand correctly:

If it is so ... then it needs some more time to investigate. Unfortunately at the moment I don't have a Windows environment .... hopefully some Windows developers could also help.

achikhv commented 7 months ago

Correct.

forsaken628 commented 6 months ago

cant't reproduce ...

Gitea version: 1.21.7 built with GNU Make 4.3, go1.21.7 : bindata, sqlite, sqlite_unlock_notify RunMode: prod gitea-1.21.7-windows-4.0-amd64.exe git version 2.37.3.windows.1 Microsoft Windows 11 10.0.22631

2024/03/08 15:33:52 ...eb/routing/logger.go:102:func1() [I] router: completed GET /michael/test/_cherrypick/fa2c68a45ea454dacd9dd6af41b948fe2a9b4222/main?ref=main&refType=branch&cherry-pick-type=cherry-pick for 127.0.0.1:5838, 200 OK in 174.0ms @ repo/cherry_pick.go:27(repo.CherryPick)
2024/03/08 15:34:41 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/internal/hook/pre-receive/michael/test for 127.0.0.1:0, 200 OK in 144.5ms @ private/hook_pre_receive.go:105(private.HookPreReceive)
2024/03/08 15:34:42 ...eb/routing/logger.go:102:func1() [I] router: completed POST /api/internal/hook/post-receive/michael/test for 127.0.0.1:0, 200 OK in 1.1ms @ private/hook_post_receive.go:25(private.HookPostReceive)
2024/03/08 15:34:42 ...y/files/temp_repo.go:49:Close() [E] Failed to remove temporary path C:\Users\forsa\Documents\gitea/data/tmp/local-repo\upload.git3421482999: remove C:\Users\forsa\Documents\gitea/data/tmp/local-repo\upload.git3421482999: The process cannot access the file because it is being used by another process.
2024/03/08 15:34:42 ...eb/routing/logger.go:102:func1() [I] router: completed POST /michael/test/_cherrypick/fa2c68a45ea454dacd9dd6af41b948fe2a9b4222/main for 127.0.0.1:5838, 303 See Other in 2887.9ms @ repo/cherry_pick.go:67(repo.CherryPickPost)