git-upload-pack bị treo vô thời hạn


30

Tôi có cấu trúc cuộc gọi sau:

  1. Jenkins chạy fab -Huser@host set_repository_commit_hash:123abc.
  2. set_repository_commit_hashchạy git fetchvới pty = False.
  3. Quá trình con ssh git@github.com git-upload-pack 'user/repository.git'không bao giờ kết thúc.

Tôi đã thử chạy git fetchtrong một bản sao cục bộ và điều đó thành công, nhưng chạy ssh git@github.com git-upload-pack 'user/repository.git'chỉ trả về những điều sau và bị treo:

00ab84249d3bb20930c185c08848c60b71f7b28990d6 HEADmulti_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag multi_ack_detailed agent=git/1.8.4
0041cb34b1c8ca75d478df38c794fc15c5f01cc6377e refs/heads/branch_name
004012577068adf47015001bfa0cff9386d6cdf497ce refs/heads/[...]
003f84249d3bb20930c185c08848c60b71f7b28990d6 refs/heads/master
[a couple more lines like the ones above, then:]
0000

Đây có phải là sự cố SSH / Git / Fabric / Jenkins đã biết không?

Tôi đã làm stracenó, nhưng tôi đã không ghi lại phiên. Tôi tin rằng nó đã bị mắc kẹt trên a read.

Liên kết có thể có liên quan:

  1. Jenkins phát hành 14752: Bỏ phiếu SCM / Tối đa # bỏ phiếu đồng thời = 1 treo phiếu bầu github
  2. Tại sao git-upload-pack (trong git clone) bị treo?
  3. vấn đề tortoisegit 1880: tortoisegit fetch bị treo do chạy / không bao giờ thoát khỏi tortoisegitplink (đặc biệt là nhận xét # 7 )
  4. Quá trình 'git-upload-pack' ngẫu nhiên không bao giờ kết thúc này là gì?

1
Bạn đã thử bất kỳ đề xuất nào trong Hỏi & Đáp SO chưa? Ngoài ra những gì strace -p <pid of hung git daemon>nói rằng nó chặn trên?
slm

@slm Bạn có đề nghị cụ thể nào trong đầu không?
l0b0

1
Điều cố định với tôi là đảm bảo Jenkins đang chạy với tư cách là người dùng có thông tin xác thực phù hợp với repos GIT
MauricioOtta

1
Đó là những gì git-upload-packphải làm, AFAICT. Chúng tôi đang chờ bạn nói giao thức git fetch-pack và cho nó biết những thứ cần gửi (thử chạy nó trên một kho lưu trữ cục bộ, bạn sẽ nhận được cùng một đầu ra).
derobert

2
(Giả sử câu hỏi này không lỗi thời, vì đó là từ năm 2013) Liệu một bản mới git clone(từ github) có hoạt động trên máy chủ mà Jenkins đang cố gắng tìm nạp không? Tôi nghi ngờ điều đó sẽ không xảy ra và có lẽ bạn gặp sự cố phát hiện Path MTU do tường lửa bị hỏng (có thể là bất cứ nơi nào trên đường dẫn không chỉ là phía bạn.)
derobert

Câu trả lời:


0

Vấn đề này dường như đã tự biến mất, như có thể dự đoán bởi một phần mềm đang phát triển nhanh chóng. Vì tôi đã không quan sát vấn đề này trong một vài năm nay nên tôi muốn gửi lời cảm ơn đến bất cứ ai đã sửa nó và xem xét câu hỏi này đã lỗi thời.

Nếu bạn đang gặp vấn đề này với các phiên bản Git gần đây, vui lòng xem xét đặt câu hỏi riêng vì có thể đó không phải là vấn đề chính xác.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.