Closed cmacq2 closed 1 year ago
Hi @cmacq2
Thanks for your interest in contributing to and using OpenFaaS
We'd generally ask you to take a brief moment to introduce yourself, see also: First impressions - introducing yourself and your use-case
For steps to reproduce, we're looking for a code sample, a repository, a snippet. Something that means a maintainer doesn't have to read between the lines, and where there's no ambiguity.
Once we have a bit more context, we can move forward to verifying the solution.
It seems sensible to me to use a Context as you've done in your PR.
Alex
Expected Behaviour
I'd expect the OpenFAAS watchdog to be able to kill the function process reliably, and not attempt to kill processes which have terminated already.
Current Behaviour
Steps to Reproduce (for bugs)
ghcr.io/openfaas/of-watchdog:0.9.6
, including an additional static binarymode=streaming
,content_type=application/json
,function_process=/path/to/my-function-binary
Function
resource in a Helm chart, specifying additionallymax_inflight: "1"
,exec_timeout: 0.1s
Context
The idea behind the set up is to have a sandboxed process that operates on untrusted input, hence the
max_inflight
(isolation) andexec_timeout
(resource consumption limiting) parameters.The test is meant to observe primarily whether or not this setup "survives" a continuous load of around 50 - 100 requests per seconds without triggering any pod restarts. The current set up is obviously not successful yet, so I've been digging through log output to see what might cause that and saw the SIGSEGV messages as a result.
I also see some other log output that may or may not be related. This does not appear to be a direct correlation, more "other general stuff I would not expect to see and may be of interest":
And:
As well as:
And:
Your Environment