Michael Russell wrote: > > It's hard for me to tell that, but what I did was to use your > "testlinq.exe" program as follows: > 0) Did "build.bat ReleaseNativeOnly x64" to generate SQLite.Interop.dll > 1) Load SQLite.NET.2010.sln into VS2010. > 2) Set build to "Debug / Mixed Platforms" > 3) Add Projects "System.Data.SQLite.2010" & > "System.Data.SQLite.Linq.2010" to "testlinq.2010" project. > 4) Set "testlinq.2010" as StartUp Project > 5) Add this code to "testlinq.2010's Program.cs" right at the top of > "OldTests()" >
I am able to replicate your results here. The root cause in this case is that the Entity Framework indirectly creates a SQLiteCommand object and then subsequently fails to dispose it. Furthermore, it does not appear to expose these internally created commands, nor a way to explicitly dispose of them, leaving no means for an outside caller to cleanup. This seems quite strange since almost all IDbCommand implementations "in the wild" would likely require native resources of one kind or another. Also, even the DbCommand base class provided by the .NET Framework itself implements IDisposable (i.e. the class used as the base class for SQLiteCommand). Perhaps somebody on the Entity Framework team could shed some extra light on this issue? -- Joe Mistachkin _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users