Return of Arrays in Node.js Action does not return error and return invalid response
- Dominant language
- Scala
- Stars
- 6.8k
- Forks
- 1.2k
- Avg merge
- 2d 14h
- Merged PRs (30d)
- 2
Description
## Environment details:
* Kubernetes tag [4e8562f](https://hub.docker.com/layers/openwhisk/invoker/4e8562f/images/sha256-bb39eaa78362240c99795b70eab311efdf4ad7d8ec5ab0b42d95b65d145ff017?context=explore)
## Bug description
I am experiencing unexpected behavior when invoking a Node.js action that returns an array with blocking query parameter.
## Steps to reproduce the issue:
1. Create the following Node.js function:
```
function main(params) {
return [1,2,3,4];
}
```
2. Invoke the action using the endpoint:
```
:3233/api/v1/namespaces//actions/?blocking=true&result=false
```
## Provide the expected results and outputs:
Since openwhisk requires return of dictionaries, the return value should be either an error or should include the complete activation, not just the result.
```
{
"activationId": "d5a794ff47d4464fa794ff47d4f64f4f",
"annotations": [...],
"duration": 31,
"end": 1721835003446,
"logs": [],
"name": "test-new",
"namespace": "ns",
"publish": false,
"response": {
"result": [1,2,3,4],
"size": 2,
"status": "success",
"success": true
},
"start": 1721835003415,
"subject": "bb713d3e-278b-4ba9-bfe0-f534283554cc",
"version": "0.0.24"
}
```
## Provide the actual results and outputs:
- When `blocking=true`, the response is containing just the value.
```
[
1,
2,
3,
4
]
```
## Additional information you deem important:
Issue is happening with last versions of docker images published.
https://github.com/apache/openwhisk/issues/2027
Contributor guide
Assessment
This issue has not been assessed yet.