-
Notifications
You must be signed in to change notification settings - Fork 438
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
Inserts into varbinary(max) col with FILESTREAM or reads from that column takes 10's of seconds #971
Comments
Hi @sammaniamsam, Thanks for pointing this out. I think this may be due to how token parsing is implemented in Tedious, namely there's a lot of asynchronous call backs that take up a lot of memory which becomes more so when using varbinary(max) and perhaps varchar(max) as well. We do have a plan to refactor how things are implemented in Tedious to increase performance coming up in the near future. What are your thoughts @arthurschreiber, @MichaelSun90 ? |
Hi @sammaniamsam, I am just curious what version of Tedious are you using that causes this performance bottleneck? #1006 |
@IanChokS I'm using "^5.0.3" |
Ok after sifting through all of the currently open issues, it's clear that performance blockage is a common problem (e.g., #879, #781,#475,#467, #319, #303). Currently we have on our road map things like implementing Always Encrypted feature, improved data type validation / conversion, Pluggable authentication providers, and refactoring current data types. But based on the issues being raised, it seems like this performance block is the most common barrier people are facing when using tedious. I'm discussing with Arthur and the team on what work needs to be prioritized, so if you feel like improving performance is the biggest change you'd like to see, please leave a like or comment your thoughts about how we should move forward. Any feedback would be of great help! 🙇 |
Hi @sammaniamsam, we've recently merged #1049, #1044, #1037 that hopefully improves performance. Do you mind if you run your benchmark again against the latest master branch and let us know if you see an improve in performance from your end? Thanks! 🙇 edit: it hasn't been released yet on npm, but the changes are in the current master branch |
@IanChokS Absolutely! Thank you guys for taking care of this. I look forward to testing the new improvements. |
@IanChokS The results are in the table below. Let me know if you have any questions.
|
🎉 This issue has been resolved in version 8.1.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
For some reason, inserts into varbinary(max) col with FILESTREAM or reads from that column takes 10's of seconds with tedious. I took the time to trace the bottle neck in my node application back to tedious. I tested the following query using roughly two 25MB files.
select * from documents where file_extension = 'zip'
MSSQL Management Studio
Chrome Dev Tools
Code snippet (not complete)
tedious-snippet.txt
The text was updated successfully, but these errors were encountered: