k6
k6 copied to clipboard
k6: group special async function treatment
A group provided with an async function will now:
- Treat the whole time it take for the async function promise to finisher the duration of the group.
- It will also use goja's AsyncContextTracker to make it so that the code using
await
within the group will still continue to be tagged with the group afterawait
returns. - Instead of directly calling the async function it schedules it to be called the next time a promise job will work.
The current AsyncContextTracker is only used for this and as such is directly changed in the k6
module. In the future there likely will be API so that multiple modules can use it simultaneously, but that seems way too involved to be included in this change and also currently only group
needs this.
fixes #2848 #2728
Moving this to a draft in favor of https://github.com/grafana/k6/pull/2875
How to get notified when this is fixed?
For more information you likely should follow https://github.com/grafana/k6/issues/2728 as this PR at this time is very unlikely to be merged as is.
Codecov Report
Attention: Patch coverage is 86.56716%
with 9 lines
in your changes are missing coverage. Please review.
Project coverage is 76.15%. Comparing base (
0b563d4
) to head (8101130
). Report is 594 commits behind head on master.
Files | Patch % | Lines |
---|---|---|
js/modules/k6/k6.go | 83.33% | 4 Missing and 1 partial :warning: |
js/modules/k6/asyncGroup.go | 89.18% | 2 Missing and 2 partials :warning: |
Additional details and impacted files
@@ Coverage Diff @@
## master #2863 +/- ##
==========================================
- Coverage 76.15% 76.15% -0.01%
==========================================
Files 217 218 +1
Lines 16604 16669 +65
==========================================
+ Hits 12645 12694 +49
- Misses 3185 3196 +11
- Partials 774 779 +5
Flag | Coverage Δ | |
---|---|---|
ubuntu | 75.97% <86.56%> (-0.01%) |
:arrow_down: |
windows | 75.85% <86.56%> (+<0.01%) |
:arrow_up: |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
I am closing this PR as it is really unlikely we will go down this route