_stream: Only query cache for the requested elements#1965
Conversation
9e4b088 to
a960325
Compare
|
I think this makes sense. However, do I see this right that it doesn't make a difference for typical builds as we always load all elements to support dynamic planning (unless |
That's correct. The main optimisation here is for artifact checkout. The commit message here hasn't been updated to cover my most recent findings. I'll try to update it later today. |
a960325 to
65b1807
Compare
query_cache() used to query the cache for the elements passed and all their (build and runtime) dependencies. This is wasteful since most of the time, we don't need all this cache query. As it turns out, this is only needed by `bst show` to be able to figure out the buildable status and the cache key in all circumsances. This commit makes this behaviour optional, and only enables it from `bst show`.
65b1807 to
90ee532
Compare
query_cache() used to query the cache for the elements passed and all their (build and runtime) dependencies. This is wasteful since most of the time, we don't need all this cache querying. And for the cases we need, it is the job of the query_cache() caller to include the dependencies they need.
As it turns out, this is only needed by
bst showto be able to figure out the cache key in all circumsances.This commit makes this behaviour optional, and only enables it from
bst show.