Skip to content
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

Add test case with a huge file #556

Merged
merged 1 commit into from
May 2, 2018

Conversation

papandreou
Copy link
Contributor

Looks like 095c82f broke an essential feature of the maxRows PR. It is delaying the teardown of the stream to the next tick by moving it to promise.catch(...) here: 095c82f#diff-678e4bd9f1bcf0cc0c17eee7684618abR101

That means that the parser will still busyloop on the remaining rows of the current unzipped chunk, which can be quite a lot.

I've added a test with a huge .xlsx that runs for over 30 seconds on my machine, but less than a second when I revert the tidy commit.

I'm not sure exactly how to fix it without essentially reverting most of it, so for now I'm just submitting the test :)

@guyonroche guyonroche merged commit 244efc8 into exceljs:master May 2, 2018
@guyonroche
Copy link
Collaborator

@papandreou yes - I should have read your comments more closely ;-)
I've fixed it and as soon as Travis agrees, I'll publish

@guyonroche
Copy link
Collaborator

@papandreou Travis didn't agree until I upped the timeout to 20s. I'm not overly happy with that but it was only a problem in node v6 & v7 so I'll let it slide for now.
published in 1.4.5

@papandreou
Copy link
Contributor Author

@guyonroche, thank you so much for the prompt response and the fix 🎉

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