-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Conversation
0f22002
to
4897c4d
Compare
4897c4d
to
8177b4f
Compare
@johnsushant Thanks for this! Sorry it took so long to get back to you. It looks good, but I would like @squaremo to also take a look. Also, could you please add a test? |
A cosmetic thing: I would prefer the flag were named |
We should make sure that when this flag is used Flux can run without Memcached. @johnsushant can you test this please? |
To test this PR, you can use image |
I just tested this image with
Here are the interesting bits from the deployment.yaml:
No memcached pod running. |
@johnsushant would you mind if I take over and finish the PR? |
@squaremo I am taking this over and, although initially I liked |
Actually, I think we are mixing things up (at least I am). There are a few things impacted by this PR, which are related, but don't need to necessarily be enabled or disabled in a single block:
1 depends on 2 This PR currently disables (1) and (2) and, in that context, it makes sense to rename No. bear in mind that disabling (2) will also impact the performance of (3) and (4) since the image information won't be cached by default. In fact, I think that disabling (2) currently also breaks (4) and (5) since, AFAICT, the cache is only filled by the warmer. If the warmer is off, the cache will always be empty and thus, there will be no images to list and no That can be fixed by filling the cache on demand instead of using the warmer. We could also simply disable (3) (as stefan suggests) and use a live registry, but it will have a performance impact. Actions:
I would go for 2.b) (if users want higher performance, they can re-enable automation). @squaremo @stefanprodan @hiddeco thoughts? Also, I think I would keep the We could also have two separate flags |
@2opremio I agree that 2.b would theoretically be the best solution but I am not quite sure it will hold in real environments. The fact that some registries have become stricter and stricter with rate limits, combined with images with a substantial amount of tags, makes me think that instead of a 'performance penalty' we simply won't be able to fulfil the request on time, most of the time. This is however a theory and can be debunked quite easily by just trying it out, if it doesn't work my vote goes to 2.a. |
Originally, the flux server did fetch all the image data when requested, and it was unworkable for all the reasons Hidde mentions. You could say the experiment has already been performed. I suggested My interpretation of |
@@ -744,7 +745,9 @@ func main() { | |||
cacheWarmer.Priority = daemon.ImageRefresh | |||
cacheWarmer.Trace = *registryTrace | |||
shutdownWg.Add(1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This Add()
should had been inside the if
block
Closing this in favor of #2745 |
Fixes: #2411