Open mretallack opened 6 months ago
You might see this if the webaction returned a 50x status code - nginx may be automatically retrying the request and hence running the action again. You can confirm this by checking the nginx logs for the action in question.
Thanks for the suggestion,
I will retry it a few times over the next day, but this is what I see on the access log in nginx:
10.0.0.65 - - [02/May/2024:10:31:17 +0000] [#tid_8daa7a35d7e1b39c3114d4c94d99ae12] POST /api/v1/web/dataspace/iot_package/iot_action HTTP/1.1 200 4 - AHC/2.1 172.20.41.68:8080
10.0.1.70 - - [02/May/2024:10:31:18 +0000] [#tid_63cd895864243ab89c8ed39fec47d83f] POST /api/v1/web/dataspace/iot_package/iot_action HTTP/1.1 200 4 - AHC/2.1 172.20.41.68:8080
From reading this it looks like both are returning 200.
I am wondering if AWS do something strange with there HTTP client and send multiple requests over the same connection and dont wait for a reply (only a theory)
I will keep looking at the logs until somthing else comes up :)
Environment details:
Steps to reproduce the issue:
Provide the expected results and outputs:
Expected output
Provide the actual results and outputs:
Additional information you deem important:
It appears that the same activation is capturing the output from two runs. And therefore the second (or first) run is assumed to of failed.
I have tried adding a sleep into the while loop (thinking it was a timeing issue), but still does it·
https://github.com/apache/openwhisk-runtime-python/blob/1389697e3251ef08a930ed95629379551a8d3c9a/core/python3Action/lib/launcher.py#L54