mightybyte / zeus

BSD 3-Clause "New" or "Revised" License
91 stars 9 forks source link

libstore: nar-info-disk-cache.cc: Assertion `hashPart == storePathToHash(info->path)' failed #31

Open k-bx opened 4 years ago

k-bx commented 4 years ago

Investigation under the original ticket https://github.com/obsidiansystems/obelisk/issues/768 has lead us to believe that the issue is related to Zeus, not obelisk, so I'm creating an issue here.

Error following the tutorial:

$ nix-env -f https://github.com/obsidiansystems/obelisk/archive/master.tar.gz -iA command
installing 'obelisk-command-0.8.0.0'
nix-env: src/libstore/nar-info-disk-cache.cc:233: nix::NarInfoDiskCacheImpl::upsertNarInfo(const string&, const string&, std::shared_ptr<nix::ValidPathInfo>)::<lambda()>: Assertion `hashPart == storePathToHash(info->path)' failed.
[1]    2798858 abort (core dumped)  nix-env -f https://github.com/obsidiansystems/obelisk/archive/master.tar.gz  
Ericson2314 commented 4 years ago

I don't think it's a zeus bug per se. It's just data corrupt of unknown provenance or a (probably cross-version / migration) bug in Nix itself.

@NinjaTrappeur can you post the two store paths so we can take a further look at them?

mightybyte commented 4 years ago

The Zeus caches have definitely gotten stale and things may have gotten corrupted in them back when I was first getting the caching working. I'm going to clean them out and reset things on that front.

picnoir commented 4 years ago

@Ericson2314 I did not find a way to make the daemon more chatty to dump me the path. How should I do that?