Cache not storing objects, but storing refs
Summary
My local CAS cache has been not storing objects to go with the ref, as far as I know only with this specific object, but it could be more. When trying to checkout an object using this tool, I was getting an error for the object not existing, despite buildstream telling me it was cached. Investigating further I found that the object indeed did not exist, but the entry in cas/refs/heads did.
That is:
thomascoldrick ~ $: ls ~/.cache/buildstream/artifacts/cas/refs/heads/freedesktop-sdk/bootstrap-import
6a1b1d3443d29c04b79bc240a68a0197e538475388fbf7388709a76e590b2343
97f1957a0e3843372fb336494e1d4b192fb880a0054588ae2981f9c68a9ca08a
thomascoldrick ~ $: ls ~/.cache/buildstream/artifacts/cas/objects/6a | grep 1b1d3443d29c04b79bc240a68a0197e538475388fbf7388709a76e590b2343
thomascoldrick ~ $
Running bst checkout managed to check the artifact out correctly, presumably by weak key?
Attempting to delete the ref and rebuild or re-pull the element resulted in the same issue - no object.
It may also be relevant that bootstrap-import.bst is a stack element used to get a dependency from a junction, I don't know if any other objects have this issue at present.
Steps to reproduce
- Clone freedesktop-sdk
bst pull --deps all all.bst- Run the commands described above.
What is the current bug behavior?
No object for a ref in the cache.
What is the expected correct behavior?
The object, existing.
Other relevant information
- BuildStream version affected: 1.1.6