Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report on
Developer Community or GitHub with
your current version information, steps to reproduce, and relevant error
messages or log files if you are hitting an issue that looks similar to
this resolved bug and you do not yet see a matching new report.
Created attachment 3615 [details]
We ran into strange problem where file descriptor run out. Tracked the problem down
with Instruments to SQLiteConnection. Seems that standard usage:
using(var conn = ....)
is not closing files. Open files grow up to ~250 and then crash occurs.
I have prepared and attached simple project where each button click 10x opens connection,
writes something and then closes connection. After ~24 clicks crash occurs.
In instrumenst you can see that conn.Close() actually does not close the file.
Does anyone have workaround?
If you make Xamarin Studio break on Mono.Data.Sqlite.SqliteExceptions (menu Run -> Exceptions), you'll see that the close fails: "unable to close due to unfinalised statements". And the reason you get that is because you're not calling Dispose on the command you create in DbHelper.ExecSQL_NonQuery.
Indeed explicitly disposing Command solves the problem. Tks for help.
As per above comments changing the status to Verified.