I've a FIFO SQS queue with a lambda polling it. The lambda had this error for one of the msgs of queue:
Runtime exited with error: signal: killed Runtime.ExitError
I know this happened due to max memory reached.
Now, any msg sent to queue after this error stays in queue with the faulty msg stuck in Flight as seen on the AWS console.
What I expected: Msg with max memory reached should have exited, allowing next msgs to be in flight.
What happened: AWS console showed 1 in flight msg and the new msgs sent after delay were shown under "Messages available" until I had to purge the queue to empty it.
I'm trying to understand if runtime is killed, does the msg is kept in flight permanently?
Lambda is at default concurrency capacity.