Joël Luijmes

01/11/2021, 7:33 PM
Hey got another question concerning retries. • What happens if I don’t specify way to persist results? Is it possible that an upstream task is rerun to get the input? Or are teh inputs stored in memory? • And if if the setup of the context manager is the upstream, yield that the same behavior? • And does anything change if I run the flow on my kubernetes agent or locally? I noticed for example that - running locally - my context manager setup task was ran again on a task failure. I’m trying to figure out why exactly, and how to mitigate 😅 And, what is the best way to persist intermediate results for kubernetes? A local volume, such that it deletes all results after completion?

Kyle Moon-Wright

01/11/2021, 8:20 PM
Hey @Joël Luijmes, I’ll try to answer these to the best of my knowledge. 1 - The inputs would be stored in memory for retries upon a Failed Flow Run. 2 - The Context Manager configuration is stored in memory for downstream tasks. 3 - Nothing changes! Just keep in mind that memory is encapsulated to the environment in which it was executed, otherwise it will be another Flow Run. 4 - This makes sense, since a Flow will restart from the first failed task. I think the important distinction here is a Flow Restart and a Task Retry. 5 - You might be interested in cache_validators for this configuration on individual tasks and more granular application. Hopefully this gets some answers in you pocket, but I’m happy to clarify if I misunderstood anything.

Joël Luijmes

01/12/2021, 7:27 AM
Thanks for your reply. I don’t quite understand 4, if one task fails why would it retry the whole flow? And not only that task? At least, I configured the retry on that specific task.