threads / bug / 103

First git-pasky bug report? :) error: bad signature/verify header failed

Subject: First git-pasky bug report? :) error: bad signature/verify header failed

## tl;dr

2 messages between Apr 18, 2005 and Apr 18, 2005.

replies: 1people: 2as markdown or json

David Greaves· Apr 18, 2005, 13:22 UTC · lore
Hi
I'm just starting to look at git (and cogito).

Earlier this morning I got and built http://pasky.or.cz/~pasky/dev/git/git-pasky-base.tar.bz2 I then did a "git pull pasky" and a make. All went well. A couple of hours later I did another git pull pasky and had the problem shown below.

I moved the directory to one side and reissued the commands and all was 
well:
  723  tar xvfj git-pasky-base.tar.bz2
  724  cd git-pasky-0.4/
  725  make
  726  git pull pasky
  727  make
  728  git pull pasky
  729  history | tail -10

This is just a heads up in case there's anything useful here. It may just have been locking issues and me pulling whilst the repo was being updated or something...

I'll hold the bad directory for a day or two in case anyone wants any diagnostics running.

David
david@ash:/everything/devel/git/git-pasky-0.4$ git pull pasky
MOTD:  Welcome to Petr Baudis' rsync archive.
MOTD:
MOTD:  If you are pulling my git branch, please do not repeat that
MOTD:  every five minutes or so - new stuff is likely not going to
MOTD:  appear so fast, and my line is not that thick. Nothing wrong
MOTD:  with pulling every half an hour or so, of course.
MOTD:
MOTD:  Feel free to contact me at <pasky@ucw.cz>, shall you have
MOTD:  any questions or suggestions.

Tree change: c29b3b29c2861ab0ffb475c7a7c9cfc946106eaf:5bf2f464d382b0bd746d06e264bc6951e7bfcd3a *100644->100644 blob 222bce21788308e1bf567304b474225b1681b03b->ad44415110ab63f1daa93e07dc496193d8006d81 Makefile *100755->100755 blob 667f877ae836c418294ef085e91efcb48d30cabb->035a1f470003c8b0963d0eb5f0eb457155f415ad git *100755->100755 blob fadd17e52845c5656ba344a9413b29b641c9ff5f->67e97fb71094693929f56d74bc13e572420d99d4 gitcommit.sh *100755->100755 blob 7ea441e584d603463fb1b83991b88f63a3895cff->18478101980f630f0e9fd95365c6d9f46bf27bfd gitmerge.sh *100755->100755 blob 9bda6555a1dafc1db762bc46db60d2a9485dc523->8e016f7d3aeb0244c8a6524ddaa4b2cb1ff8015f gitpull.sh +100755 blob b6e318b31eb2ed6d2e137833a2064327331504b4 gitseek.sh *100755->100755 blob 30654380c10edde32def8e5fa2e2c956fbff3d58->ce44c1d4ce3b949b8ac99f1b90927da4e698e3de gittrack.sh -100755 blob 2488078570c4a5709332d92d7a1b5b65036ff3a0 gitupdate.sh Tracked branch, applying changes... error: bad signature error: verify header failed read_cache: Invalid argument error: bad signature error: verify header failed error: bad signature error: verify header failed

At this point I moved the directory aside...
Petr Baudis· Apr 18, 2005, 13:40 UTC · re: David Greaves · lore

Re: First git-pasky bug report? :) error: bad signature/verify header failed

Dear diary, on Mon, Apr 18, 2005 at 03:22:43PM CEST, I got a letter where David Greaves <david@dgreaves.com> told me that...

> Hi
Hi,
I should release early and often. :-)
Show 10 quoted lines
> Tree change: 
> c29b3b29c2861ab0ffb475c7a7c9cfc946106eaf:5bf2f464d382b0bd746d06e264bc6951e7bfcd3a
> Tracked branch, applying changes...
> error: bad signature
> error: verify header failed
> read_cache: Invalid argument
> error: bad signature
> error: verify header failed
> error: bad signature
> error: verify header failed

this is a known problem, caused by the directory cache index format change (to fix endianity issues). You can solve it by doing

	read-tree $(tree-id)
	update-cache --refresh

(if you are reading this and didn't to the problematic pull yet, do it right after you get git-pasky-base, do your first pull and rebuild; you won't get into problems that way).

To recover, do this now, and then do:
	(i) if you have local commits:
		git merge -b c29b3b29c2861ab0ffb475c7a7c9cfc946106eaf \
			5bf2f464d382b0bd746d06e264bc6951e7bfcd3a
	(ii) if you don't have local commits:
		git diff -r c29b3b29c2861ab0ffb475c7a7c9cfc946106eaf:5bf2f464d382b0bd746d06e264bc6951e7bfcd3a \
			| git apply

I'm thinking how to handle future directory cache changes. Doing read-tree $(tree-id) && update-cache --refresh on the kernel tree is fast (three seconds?) if you have it in cache already, but SLOOOOOW (more than a minute) if you have cold cache; so I wouldn't do it always.

I think I will do something like check-cache which will just return exitcode based on whether the cache is ok or not, and do this time in the git multiplexer.

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
C++: an octopus made by nailing extra legs onto a dog. -- Steve Taylor

← back to recent threads