From: Nicolas Pitre <hidden> Date: 2016-06-15 22:45:30
My bad. A small detail went through the crack: the real_type of
a delta object is the real_type of its base object.
Without this, the created index will be wrong as the actual object SHA1
won't match the object.
Signed-off-by: Nicolas Pitre <redacted>
---
If you got a corrupted .idx file because of this ('git verify-pack'
should tell) then just toss it and recreate with a fixed 'git
index-pack'.
Could anyone having problems fetching from kernel.org with git from the
next branch confirm that this also fixes that? Thanks.
From: Harvey Harrison <hidden> Date: 2016-06-15 22:45:30
On Mon, Oct 20, 2008 at 11:37 AM, Harvey Harrison
[off-list ref] wrote:
On Mon, Oct 20, 2008 at 11:12 AM, Nicolas Pitre [off-list ref] wrote:
quoted
My bad. A small detail went through the crack: the real_type of
a delta object is the real_type of its base object.
Without this, the created index will be wrong as the actual object SHA1
won't match the object.
Signed-off-by: Nicolas Pitre <redacted>
This fixes it for me, thanks for the quick fix.
Tested-by: Harvey Harrison <redacted>
Scratch that, it's back to failing again on my next update.
Harvey
From: Harvey Harrison <hidden> Date: 2016-06-15 22:45:30
On Mon, Oct 20, 2008 at 11:12 AM, Nicolas Pitre [off-list ref] wrote:
My bad. A small detail went through the crack: the real_type of
a delta object is the real_type of its base object.
Without this, the created index will be wrong as the actual object SHA1
won't match the object.
Signed-off-by: Nicolas Pitre <redacted>
This fixes it for me, thanks for the quick fix.
Tested-by: Harvey Harrison <redacted>
From: Marco Roeland <hidden> Date: 2016-06-15 22:45:30
On Monday Oktober 20th 2008 at 15:27 Nicolas Pitre wrote:
quoted
This is on a quadcore. I recently experimented with "git config
pack.threads 0" but as it didn't seem to speedup anything I removed
it again. Just mention it on the infinitesimal chance it might be
important.
It is not. And the speedup should be noticeable when you repack, not
when you fetch.
No offense meant! I tried a few "git gc" and "git repack" and only
watched the Gnome CPU applet; perhaps everything was already nicely
packed. I'm certainly going to retry now. Thanks for all your good work.
--
Marco Roeland
From: Nicolas Pitre <hidden> Date: 2016-06-15 22:45:30
On Mon, 20 Oct 2008, Marco Roeland wrote:
On Monday Oktober 20th 2008 at 15:27 Nicolas Pitre wrote:
quoted
quoted
This is on a quadcore. I recently experimented with "git config
pack.threads 0" but as it didn't seem to speedup anything I removed
it again. Just mention it on the infinitesimal chance it might be
important.
It is not. And the speedup should be noticeable when you repack, not
when you fetch.
No offense meant!
Oh certainly not.
I tried a few "git gc" and "git repack" and only
watched the Gnome CPU applet; perhaps everything was already nicely
packed. I'm certainly going to retry now. Thanks for all your good work.
If you want to make the difference really visible, try with
'git repack -a -f --window=100'.
Nicolas
From: Marco Roeland <hidden> Date: 2016-06-15 22:45:30
On Monday October 2008 at 14:12 Nicolas Pitre wrote:
My bad. A small detail went through the crack: the real_type of
a delta object is the real_type of its base object.
Without this, the created index will be wrong as the actual object SHA1
won't match the object.
Signed-off-by: Nicolas Pitre <redacted>
---
If you got a corrupted .idx file because of this ('git verify-pack'
should tell) then just toss it and recreate with a fixed 'git
index-pack'.
Could anyone having problems fetching from kernel.org with git from the
next branch confirm that this also fixes that? Thanks.
I still seem to have the same problem after patching:
$ git pull
remote: Counting objects: 279, done.
remote: Compressing objects: 100% (78/78), done.
remote: Total 177 (delta 136), reused 135 (delta 99)
Receiving objects: 100% (177/177), 66.59 KiB, done.
fatal: pack has bad object at offset 53487: failed to apply delta
fatal: index-pack failed
'git verify-pack' does _not_ report an error for either pack or index.
This is with git from branch next at 8f0e41f379d486dd27766d84d994eb1da5b8319d
trying to pull from git://git.kernel.org/pub/scm/git/git.git
This is on Debian 'sid' with an AMD64 architecture.
I've put the whole ".git" directory (warning: almost 35MB) for
investigation at:
http://www.xs4all.nl/~fiberbit/http://www.xs4all.nl/~fiberbit/git-next-8f0e41f3-bad-index.tgz
I hope I've patched correctly. After applying (cleanly) and rebuilding
simply executing "./git" from the workdirectory still uses the old
version. Only after using "make install" I get the patched version,
which as shown above still gives an error, from the die() at line 528 in
index-pack.c: bad_object(delta_obj->idx.offset, "failed to apply
delta");
Not much more time tonight here, but perhaps it's easier to reproduce
now with the copy of an affected .git directory.
--
Marco Roeland
Don't worry -- I figured it out and was able to reproduce the problem
already. Thanks a lot!
This is on a quadcore. I recently experimented with "git config
pack.threads 0" but as it didn't seem to speedup anything I removed
it again. Just mention it on the infinitesimal chance it might be
important.
It is not. And the speedup should be noticeable when you repack, not
when you fetch.
Nicolas
Gah, I can't even copy-and-paste:
http://www.xs4all.nl/~fiberbit/git-next-8f0e41f3-bad-index.tgz
This is on a quadcore. I recently experimented with "git config
pack.threads 0" but as it didn't seem to speedup anything I removed
it again. Just mention it on the infinitesimal chance it might be
important.
--
Marco Roeland