-
Notifications
You must be signed in to change notification settings - Fork 140
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
Possible memory leak after updating to 1.0.7.0 #123
Comments
The goal of that change is to reduce memory usage. So do you run multiple tests within same process? I did not explicitly call |
Please don't call |
The tests are only calling our API, which is in turn is querying snowflake (and using the connector). I don't expect the actual tests to be the cause, as they are independent (acceptance tests). I only gave them as an example, because they highlighted the issue quite well - one day they work the next day (after updating) they fail. The failure occurs when doing 10 queries each retrieving around 50000 rows, in total 500000 rows. |
@zlatinal In your test case, are the queries happening sequentially or concurrently? |
The change included in 1.0.7.0 is switching to new result chunk downloader that reuses the buffer when downloading chunks. I created a micro benchmark that runs 10 queries sequentially on top of both the new downloader and the old downloader. I ran two rounds: From the result of 1st round I don't see a memory leak introduced by the new downloader, and the memory footprint is actually better(less GC and less memory usage on average). However, the second round is for sure revealing a performance regression for that workload. After some investigation there is definitely more improvement can be done for the new downloader to reduce memory for small workload, but that would be a time consuming task. For now what you can do is one of the following:
|
@ChTimTsubasa Thank you for the suggestions, we'll downgrade to 1.0.6.0 until the configurable option is implemented. To answer your previous question: The queries are concurrent. |
Hey, has there been any change with this? We have our systems using 1.0.6, but I think that blocks out a fairly sizeable chunk of RAM (at least 2gb?). Ideally we'd like to get our memory footprint down when using this driver. |
To clean up and re-prioritize more pressing bugs and feature requests we are closing all issues older than 6 months as of April 1, 2023. If there are any issues or feature requests that you would like us to address, please create them according to the new templates we have created. For urgent issues, opening a support case with this link Snowflake Community is the fastest way to get a response. |
Issue description
Snowflake.Data is throwing a System.OutOfMemoryException.
After updating to version 1.0.7.0 some of our automated tests starter failing. These tests run daily and query snowflake using the snowflake-connector-net, ranging from a few rows to 500000 rows. These tests were passing with version 1.0.4.0, and after updating to 1.0.7.0 they started to fail. We also updated to 1.0.8.0 hoping there is a fix, however the issue persists.
Error log
Configuration
Driver version: 1.0.8.0
The text was updated successfully, but these errors were encountered: