edgeless-project / edgeless

MVP Implementation
Other
14 stars 0 forks source link

Handle function instance creation failure #156

Open ccicconetti opened 2 months ago

ccicconetti commented 2 months ago

When an edgeless_node starts a function in

edgeless_node::base_runtime::runtime::RuntimeTask<FunctionInstanceType>::start_function()

it optimistically assumes that the creation of the function instance will not fail, in fact, function_instance_runner::FunctionInstanceRunner::new() does not return a Result but an object.

However, with a container run-time the creation may fail for a number of good reasons (e.g., Docker daemon not responding, image not available locally), therefore the failure should be handled to avoid the current situation:

ccicconetti commented 1 week ago

Furthermore, the exit of a function (and a resource) should be handled.

Currently, such an event goes unnoticed and the ε-ORC does not know that the function is not running properly (hence can take no corrective actions).