-
Notifications
You must be signed in to change notification settings - Fork 0
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
refactor: encapsulate pooling helpers and state modification in tests #1
base: buffer-pool
Are you sure you want to change the base?
Conversation
@nbbeeken I've rebased SeanReece:buffer-pool against main. I think you may also have to rebase/merge main here and we can merge this in 👍 |
1534974
to
be3b646
Compare
Rebased! @SeanReece should be all set here for your review. Working on getting the perf metrics we discussed on the other PR today 🎉 🤞🏻 |
Maybe the I'm going to switch back to TS private with a default of |
I moved a bit quickly in the last post, "returnDocument" is a no-op test that we're supposed to normalize against to remove variation in the runtime's speed. In this screenshot, the percent differences are calculated by normalizing against the "returnDocument" result at the top of each column. Pooling is certainly a win but I think we need to hold off on the WeakMap method of making it private and enabled by default in this major version. Our next major is not in a distant future so we may be able to apply this change with real private properties sooner than later. |
@nbbeeken Sorry for the delay, things got busy around the holidays :) I'm seeing similar performance regressions in my local benchmarks as well. I'm ok with us waiting for the next major version so we can use real private properties. Any idea when we can start working on v7? 😄 |
Same here with the holidays, hope it was a good one! 🙂 thanks for taking a look over it. You can see my colleague's comment on the ticket here we concur it would be best to hold off for v7. I think I will pull out the src changes from this PR and we can at least take in the test before/after changes so the pool size state change is always reset even when a test fails. I hope to get back to you soon on a timeline for v7 (I'm also looking forward to what we can adopt with a runtime bump!) |
Description
What is changing?
Is there new documentation needed for these changes?
No
What is the motivation for this change?
See mongodb#707
Double check the following
npm run check:lint
scripttype(NODE-xxxx)[!]: description
feat(NODE-1234)!: rewriting everything in coffeescript