-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Proof of concept changes (test suites, HDR histograms) #2816
base: metrics-in-distributed-execution
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## metrics-in-distributed-execution #2816 +/- ##
===================================================================
Coverage ? 70.19%
===================================================================
Files ? 276
Lines ? 21061
Branches ? 0
===================================================================
Hits ? 14783
Misses ? 5344
Partials ? 934
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
aded156
to
e8d93ec
Compare
3dbeb3b
to
8324c42
Compare
e8d93ec
to
387c02b
Compare
2ce70fb
to
5bb7235
Compare
387c02b
to
10bebb4
Compare
4dd18e5
to
2e4f071
Compare
10bebb4
to
49a2e27
Compare
ee62441
to
943b1e7
Compare
e87ee32
to
27b1a4d
Compare
Rebased this on top of the latest |
20802ee
to
011397f
Compare
9f1d496
to
e15ca80
Compare
Over the last few days I split the previous 3 big commits here into 10 smaller, self-contained and atomic commits. That way some of the backwards-compatible commits can be merged into Even more importantly, I moved the only commit that had somewhat breaking changes (the PoC for HDR histograms, #763) to be the last one in the chain, after test suites even! They aren't really even breaking changes, but because it makes the threshold and end-of-test summary calculations slightly less accurate, more consideration should certainly be taken before we switch to a hastily picked algorithm. Some tests that expect exact results will also need to be adjusted... However, having HDR histograms last means that, theoretically, the other commits here, up to and including distributed execution and metric support for it (these are now 2 separate commits! 🎉), can safely be merged into So yeah, while the distributed execution implementation here is poorly performant, untested and "optimistic" (basically works only for the happy path and doesn't handle errors well), it is completely backwards compatible now! 🎉 It should be safe to merge it as it is, it shouldn't affect anything else - notice how no existing tests were disabled or even changed! Since the The important bit is that they can be part of the codebase while this happens, so merge conflicts don't need to constantly be resolved when rebasing... And any improvements can be made iteratively, as regular PRs to |
66bda38
to
4997f6d
Compare
529546e
to
6071fb5
Compare
Because of #2816 (comment), I was able to move the distributed execution PoC into separate small and atomic PRs (#3191, #3204, #3205, #3210, #3213). Even though they are still very far from polished or production-ready, they should be safe to merge into the k6 codebase because they are completely backwards-compatible. So, as long as we are clear that we can make breaking changes in the That's why I've adjusted the root branch of this PR to point to the branch of #3213. That way everything should hopefully be easier to review and manage 🤞 The only thing that remains here is for me to publish another PR with a design doc that explains all of these things, as well as a new tracking issue for this specific approach to distributed execution. Both of these things should happen later today or tomorrow 🤞 Again, all of this is still very much a proof of concept and considered highly experimental. Even if some of it ends up being merged, all of it can be changed at any given future point until it is officially deemed stable by the k6 team. |
ee06484
to
3363208
Compare
This is a proof-of-concept for how we can use HDR/Sparse histograms for k6 Trend metrics.
6071fb5
to
1ad356b
Compare
This is a repository for unpolished PoC changes before they can be split off in their own PRs. The commits here won't be merged without significant refactoring and changes and will probably be larger than average, to simplify rebases. It is the second iteration of such a PoC PR, the original PoC for distributed execution was in #2438, see #2438 (comment) for details.
As of right now, this PR contains rudimentary, hackish and very janky implementations of test suites (#1342) and HDR histograms (#763) 🎉 It used to contain a distributed execution (#140) PoC too, but that got split off into separate PRs, see #2816 (comment).