Skip to content

Performance improvement in col-cache #1482

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

Merged
merged 1 commit into from
Oct 1, 2020
Merged

Conversation

antimatter15
Copy link
Contributor

Summary

Certain XLSX files have references to "TRUE" and "FALSE" that get ultimately passed over to the col-cache l2n method. When l2n is passed a string of 4 characters or more, it ends up regenerating the dictionary from scratch each time.

For a particular XLSX file I was working with, this change resulted in an overall 2x performance improvement.

Test plan

This change doesn't affect behavior, as l2n already throws when it encounters a string which is out of range. This change makes it throw earlier- before repopulating a 16384-length array each time.

Copy link
Member

@alubbe alubbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good catch, thank you!

@alubbe alubbe merged commit 96cd219 into exceljs:master Oct 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants