juergbi commented on PR #1941:
URL: https://github.com/apache/buildstream/pull/1941#issuecomment-5144384485

   > Yeah, the problem is that there is no agreed design. The mailing list post 
around #1434 didn't elaborate on this point precisely and my reading of it 
didn't seem to contradict my understanding of it. However, it was ultimately 
merged without much discussion.
   
   Re-reading the redesign mails, I think @gtristan was actually also in favor 
of defaulting to pulling from the top-level project as he stated in 
https://mail.gnome.org/archives/buildstream-list/2020-May/msg00018.html:
   > On this point, I agree with 
Javier[[10]](https://gitlab.com/BuildStream/buildstream/-/work_items/401#note_74690536)'s
 expectations and think that this should be the default behavior
   
   I can't find any later discussion of this point, so it's possible that it 
was simply missed in the implementation. So, it may be fair to merge this as a 
fix for a missed part of the last redesign without reopening a larger 
discussion.
   
   I myself also think it makes sense for the cache servers of top-level 
projects to cache elements of all subprojects. With remote execution this is 
essential for storage locality, but it also seems reasonable for just remote 
caching. Artifacts of top-level projects typically include lots of files from 
artifacts of subproject elements, so they often need to cache a large part of 
those elements anyway.
   
   ### Possible follow-up
   
   I would even argue that there should be a project-level configuration to 
completely ignore cache servers defined in subprojects somewhat similar to the 
`disallow-subproject-uris` option to ensure no third party cache servers are 
used even without the user setting `override-project-caches`. This would be a 
project-level replacement for the per-junction `ignore-junction-remotes` we 
once had but was considered too fine-grained. This could be something like:
   ```
   junctions:
       ignore-subproject-caches: True
   ```
   
   However, this wouldn't be in the scope of this PR and wouldn't affect the 
default behavior.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to