On Tue, Oct 13, 2020 at 07:13:12PM +0200, Tim Düsterhus wrote: > Willy, > > Am 13.10.20 um 19:05 schrieb Willy Tarreau: > > Strange. I can get it from here as a whole (not tested with ranges > > though). The pack file is recent, it dates a few days ago only. I'll > > try to investigate further. > > > > I've attached 'strace' to 'git fetch'. It appears that I actually have > the full packfile on disk, because git attempts to the bytes starting at > the last byte of the pack file (21680737). Apparently the nginx does not > like that: > > > [pid 11946] sendto(9, "GET > > /git/haproxy.git/objects/pack/pack-4c6bfad2590afe3d5591d203ad9b3cf2da4aef97.pack > > HTTP/1.1\r\nHost: git.haproxy.org\r\nRange: bytes=21680737-\r\nUser-Agent: > > git/2.28.0\r\nAccept: */*\r\n\r\n", 181, MSG_NOSIGNAL, NULL, 0) = 181 > > [...] > > [pid 11946] recvfrom(9, "HTTP/1.1 416 Requested Range Not > > Satisfiable\r\nserver: nginx\r\ndate: Tue, 13 Oct 2020 17:08:56 > > GMT\r\ncontent-type: text/html\r\ncontent-length: 206\r\ncontent-range: > > bytes */21680737\r\n\r\n<html>\r\n<head><title>416 Requested Range Not > > Satisfiable</title></head>\r\n<body bgcolor=\"white\">\r\n<center><h1>416 > > Requested Range Not > > Satisfiable</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n", > > 16384, 0, NULL, NULL) = 385
Now I understand why, it's exactly the file's size: $ ls -l objects/pack/pack-4c6bfad2590afe3d5591d203ad9b3cf2da4aef97.pack -r--r--r-- 1 christopher haproxy-stable 21680737 Oct 9 17:49 objects/pack/pack-4c6bfad2590afe3d5591d203ad9b3cf2da4aef97.pack However I don't know why it's trying to fetch more of it, which is a good reason for this to fail! I've just run git fsck and am seeing this: $ git fsck Checking object directories: 100% (256/256), done. Checking objects: 100% (84716/84716), done. dangling commit 309200e7332312e4cd7bfe2d9b21d37a6da9a698 Christopher faced some permission issues the first time he tried to publish his version, so I suspect that the issue is that one file failed to be updated and that a pack is probably bad there. I've run a git gc and now git fsck is happy. Please try again! Thanks! Willy