Problem downloading a habitat package


#1

I’m having trouble installing a package core/valgrind

# hab pkg install core/valgrind
» Installing core/valgrind from channel 'stable'
✗✗✗
✗✗✗ Couldn't read MetaFile: IDENT, not found
✗✗✗
# hab pkg search valgrind
core/valgrind/3.11.0/20160725160041
core/valgrind/3.11.0/20160729055929
core/valgrind/3.11.0/20160729223446
core/valgrind/3.11.0/20161031132225
core/valgrind/3.12.0/20161031181251
core/valgrind/3.12.0/20161102183620
core/valgrind/3.12.0/20161209224921
core/valgrind/3.12.0/20161214080549
core/valgrind/3.12.0/20170514001618
core/valgrind/3.12.0/20171014194849
core/valgrind/3.12.0/20171021100319
core/valgrind/3.12.0/20171219100150
lilian/valgrind/3.13.0/20170617204142
lilian/valgrind/3.13.0/20170625114922

# hab pkg install core/valgrind/3.12.0/20170514001618
» Installing core/valgrind/3.12.0/20170514001618 from channel 'stable'
✗✗✗
✗✗✗ Couldn't read MetaFile: IDENT, not found
✗✗✗
# hab pkg install core/valgrind/3.12.0/20170514001618
» Installing core/valgrind/3.12.0/20170514001618 from channel 'stable'
✗✗✗
✗✗✗ Couldn't read MetaFile: IDENT, not found
✗✗✗

I tried core/valgrind and being very specific core/valgrind/3.12.0/20170514001618. The latter package has been marked stable.


#2

I also tried the latest and greatest which is core/valgrind/3.12.0/20171219100150 And this actually works. Although it is not stable. It is tagged “bldr-875867150763450368”
As per https://bldr.habitat.sh/#/pkgs/core/valgrind


#3

What version of habitat are you running? I tried locally with 0.54.0, downloading the fully-qualified release, as well as just core/valgrind, and it worked fine.

The message about MetaFile: IDENT, not found suggests that there’s some kind corruption with whatever you are managing to get downloaded, which is interesting in and of itself.


#4

I’m running

hab --version
hab 0.54.0/20180221022026

#5

Could you run the various install tasks with RUST_LOG=debug in your environment? Hopefully that can shed some more light on things.


#6

@fnichol wrote:

@bdangit when I’ve seen the Couldn't read MetaFile: IDENT, not found, this can sometimes be from a bad/incomplete package installation (we use the presence of an IDENT metadata file in the package’s $pkg_prefix as a sign that it’s installed). You might want to rm -rf /hab/pkg/core/valgrind and see if installing again helps. There’s also a small chance that the artifact sitting in /hab/cache/artifacts might be problematic so you could delete that as well before trying to install. I’m saying a small chance because we cryptographically sign the packages and verify them before extracting onto disk so your error there should be different

I rm -rf /hab/pkg/core/valgrind and tried to run hab pkg install core/valgrind - this did not work and results in same error condition as before.

When ls /hab/cache/artifacts/core-valgrind*, I saw this:

core-valgrind-3.12.0-20170514001618-x86_64-linux.hart
core-valgrind-3.12.0-20171219100150-x86_64-linux.hart
core-valgrind-3.12.0-20171219100150-x86_64-linux.hart.tmp-kN4ZeWhd

I rm -rf /hab/cache/artifacts/core-valgrind*, issued the hab pkg install core/valgrind and was successful to install.

On hindsight, I should have ls -al and see what the current state of core-valgrind-3.12.0-20170514001618-x86_64-linux.hart as it could have been a 0 filesize.