[dba-VB] Unspecified Error

Shamil Salakhetdinov shamil at smsconsulting.spb.ru
Fri Oct 29 08:59:41 CDT 2010

Hi John --

Thank you for your reply.

I guess "connections leaking" happens in my case because of the usage of IN
clause and because of bug in OleDbProvider happening in that context:
"automatic connection" opened somewhere inside OleDbProvider isn't getting
closed - something like that....

In general when you use:

using (OleDbConnection cnn = new

then there is no "connections leaking" - GC works well. 
The same is true for SQL Server data provider also.

Thank you.

-----Original Message-----
From: dba-vb-bounces at databaseadvisors.com
[mailto:dba-vb-bounces at databaseadvisors.com] On Behalf Of jwcolby
Sent: 29 ??????? 2010 ?. 14:31
To: Discussion concerning Visual Basic and related programming issues.
Subject: Re: [dba-VB] Unspecified Error

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

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(DbConnection
> Option 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(DbConnectio
> n
> owningConnection)
>     at
> System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectio
> n outerConnection, DbConnectionFactory connectionFactory)
>     at System.Data.OleDb.OleDbConnection.Open()
>     at
> NetworkManager.SearchInputFileHandler.GetInputRows(SearchProgramTypeEn
> umerat 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
dba-VB mailing list
dba-VB at databaseadvisors.com

More information about the dba-VB mailing list