I run my scenarios locally from CLI.
In some of my scenarios, I get the following error for higher numbers of VU:
WARN[0036] Request Failed error="get \"https://<url>": stream error: stream ID 13; CANCEL"
It only seems to happen on scenarios with large number of parallel (batch()
) requests. I start getting the error somewhere around 25 VUs (each at 6 parallel requests for majority of the scenario’s duration) and error rate steeply increases with additional VUs.
It seems to happen randomly for all kinds of requests, including static content.
I failed to replicate the error on scenarios with only serial requests (no batch()
) - even at 2000 VUs I didn’t get the error once.
The stream ID always seems to be an odd number for some reason.
Here is a response object captured for one such failed request:
{
"remote_ip": "<ip>",
"remote_port": 443,
"url": "https://<url>",
"status": 0,
"proto": "",
"headers": {},
"cookies": {},
"body": null,
"timings": {
"duration": 16953.3841,
"blocked": 0,
"looking_up": 0,
"connecting": 0,
"tls_handshaking": 0,
"sending": 0,
"waiting": 16953.3841,
"receiving": 0
},
"tls_version": "",
"tls_cipher_suite": "",
"ocsp": {
"produced_at": 0,
"this_update": 0,
"next_update": 0,
"revoked_at": 0,
"revocation_reason": "",
"status": ""
},
"error": "stream error: stream ID 29; CANCEL",
"error_code": 1000,
"request": {
"method": "get",
"url": "https://<url>",
"headers": {
"Accept-Encoding": [
"gzip, deflate, br"
],
"Accept-Language": [
"en-US,en;q=0.9"
],
"Sec-Fetch-Dest": [
"empty"
],
"Sec-Fetch-Mode": [
"cors"
],
"Sec-Fetch-Site": [
"same-origin"
],
"Accept": [
"application/json, text/plain, */*"
],
"Cookie": [
"loginCookie-<hash>=<cookie value>"
],
"User-Agent": [
"k6/0.28.0 (https://k6.io/)"
]
},
"body": "",
"cookies": {
"loginCookie-<hash>": [
{
"name": "loginCooki-<hash>",
"value": "<cookie value>",
"replace": false
}
]
}
}
}
I was unable to find anything about this error. Is it an error with K6 only, or does it indicate a problem with my server? How can I find out more about it?