-
-
Notifications
You must be signed in to change notification settings - Fork 499
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
Performance improvement on (nearly) all exports #3727
Comments
May I try my hand at this? |
Go for it! |
@dorner Would it be wise to benchmark my changes to ensure its faster? I've never tested for speed before, and I'm curious if benchmarking would be the best way to go about it? |
Hmm... not sure it's necessary for this. Benchmarking is really when you're trying to look at micro-speedups, i.e. when you have to run things many times and measure total time which might be close. In this case we're looking at speeding things up probably by an order of magnitude - you should see very quickly if your solution was successful. |
It might not be quite so blindingly obvious on the seed data -- there just isn't that much. |
Yeah this definitely should be run on a production copy if possible. |
I can fit in time to do that as a check before we merge |
Summary
We recently improved the performance on distribution exports by an order of magnitude. Apply that change to the other exports
Details
This change makes the item_header an O(n) instead of an O(n**2), which makes a huge difference in production.
For details of the change, see the pull request Memoize item headers to speed up export #3581
The following exports may need to be improved in this way:
Criteria for completion
-[ ] the above functionality is in place
-[ ] the complete test suite passes
The text was updated successfully, but these errors were encountered: