KeyError on fetch (pack/thinpack)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Dulwich |
Triaged
|
Medium
|
Unassigned |
Bug Description
What I'm doing is that I'm building a repository using Dulwich on one
side, and fetching a refs (using Client.fetch) on the other side in
another repository. Nothing fancy.
This is the backtrace I get once in a while:
File "remote.py", line 125, in fetch
return self.client.
File "/usr/local/
commit()
File "/usr/local/
return self.move_
File "/usr/local/
entries = p.sorted_entries()
File "/usr/local/
ret = list(self.
File "/usr/local/
type, obj = self.resolve_
File "/usr/local/
base_offset, type, base_obj = get_ref(basename)
File "/usr/local/
raise KeyError(sha)
KeyError: 'C\x9ag&
When this happens, it always happens: I mean doing another fetch on the
same ref using Dulwich raises the same exception.
Jelmer told me:
> Can you try changing add_pack() to add_thin_pack() in
> dulwich/client.py ?
And this actually seems to solve the problem.
Changed in dulwich: | |
status: | New → Triaged |
importance: | Undecided → Medium |
What sort of changes did you make exactly? add_thin_pack() takes different arguments from add_pack(), so as far as I can tell just replacing them is not sufficient.