jwcolby
jwcolby at colbyconsulting.com
Fri Oct 29 05:31:22 CDT 2010
I've never programmed against an MDB. Are you opening and closing the connection repeatedly? I did have an issue where I was "leaking" connections (kinda) and ran out of connections to SQL Server. Basically the garbage collector runs when it thinks it needs to. If you don't force a cleanup of non-native (to .Net) objects such as SQL Server connections, then the GC doesn't know it needs to clean up and doesn't do so. I had to build a dispose method for my classes and intentionally call that dispose method as the class was closed, which forced the GC to release the non-native objects immediately instead of whenever it decided to. John W. Colby www.ColbyConsulting.com On 10/29/2010 5:05 AM, Shamil Salakhetdinov wrote: > Hi All -- > > After several hours (~6 hours Win7 64bit, ~24hours WinXP) of running > multi-threaded (.NET Framework 3.5 SP1 WinForms) desktop application using > .mdb files as backend I'm getting the following runtime error: > > Exception -> Unspecified error > > StackTrace -> at > System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString > constr, OleDbConnection connection) > at > System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOption > s options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection > owningObject) > at > System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbCon > nection owningConnection, DbConnectionPoolGroup poolGroup) > at > System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection > owningConnection) > at > System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection > outerConnection, DbConnectionFactory connectionFactory) > at System.Data.OleDb.OleDbConnection.Open() > at > NetworkManager.SearchInputFileHandler.GetInputRows(SearchProgramTypeEnumerat > ion programType, Int32 startRowNum, Int32 rowsQty, Boolean setupInProgress, > Boolean filterOutUninitializedRows) > > It looks like this is an OleDbProvider bug. > > Have you seen/experienced something like that? > > Context: > > 1. I do exclusively use > > using (OleDbConnection cnn = new > OleDbConnection("{{mymdbConnectionStringHere}}")) > { > cnn.Open(); > ... > } > > 2. I do use IN clause in some select SQL expressions to point to external > MDB tables. > > I guess the issues is caused by case (2). Although that's still a hypothesis > here to check (some code fixes are needed in the core code of my > application, and I'm considreing now will that be worth fixing, or I should > better switch to MS SQL backend.) > > Thank you. > > -- > Shamil > > > _______________________________________________ > dba-VB mailing list > dba-VB at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/dba-vb > http://www.databaseadvisors.com > >