fission / fission-workflows

Workflows for Fission: Fast, reliable and lightweight function composition for serverless functions
Apache License 2.0
361 stars 40 forks source link

Invocation staleness poll - overly agressive refreshing #252

Closed Gradecak closed 5 years ago

Gradecak commented 5 years ago

The invocation controller staleness poll currently doesn't check if an invocation is in a terminal state before submitting a refresh event.

This results in terminated invocations being refreshed and new controllers being created then immediately destroyed.

DEBU[0994] starting evaluation (reason: refresh)         key=wi-d7f2ca4d-42eb-4b55-9207-489cf17d0beb
DEBU[0994] Could not extract span from event metadata: event does not have metadata 
DEBU[0994] created new controller                        key=wi-d7f2ca4d-42eb-4b55-9207-489cf17d0beb
DEBU[0994] Removing finished controller: invocation is in a terminal state (SUCCEEDED)  key=wi-d7f2ca4d-42eb-4b55-9207-489cf17d0beb
DEBU[0994] starting evaluation (reason: refresh)         key=wi-2db78f7b-1c71-4846-8d1c-ae059f9d17f2
DEBU[0994] Could not extract span from event metadata: event does not have metadata 
DEBU[0994] created new controller                        key=wi-2db78f7b-1c71-4846-8d1c-ae059f9d17f2
DEBU[0994] Removing finished controller: invocation is in a terminal state (SUCCEEDED)  key=wi-2db78f7b-1c71-4846-8d1c-ae059f9d17f2