Re: Connection Pool problem



First question of the day is, why don't you use sql server's native provider?

--
Miha Markic [MVP C#, INETA Country Leader for Slovenia]
RightHand .NET consulting & development www.rthand.com
Blog: http://cs.rthand.com/blogs/blog_with_righthand/

<sk.rasheedfarhan@xxxxxxxxx> wrote in message news:1166889542.431770.222120@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi,
I have troubles with a threaded application on W2003 server. It
seems to leave open connections behind time to time, it sums to
hundreds over a day (the application make thousands). It is using the
SQLOLEDB provider, MDAC 2.82.1830.0, SQL Server 8.00.2039 (SP4),
Windows 5.2 (3790).

I am using same connection string for all connections and Using Multi
threading. and I written code in C++.

most of them are saying i am not closing the connection properly so
here i am giving my code snippet.
For Connection Open::
try
{
//cleanup any existing open items
CloseDatabase();

//Open Connection
hres = m_pConnection.CreateInstance( __uuidof(Connection) );
if( hres == S_OK )
{
hres = m_pConnection->Open( m_strConnectionString.c_str());
if( hres == S_OK )
{
//Open recordset
hres = m_pRecordset.CreateInstance( __uuidof(Recordset) );
if( hres == S_OK )
{
bRet = true;
}
else
{
Print ("CADOBase::CreateInstance, Creating Recordset failed hr=%X\n"),
hres );
//m_pRecordset.Release();
}
}
else
{Print("CADOBase::CreateInstance, Open failed hr=%X\n"), hres ); }
}
else
{
Print("CADOBase::CreateInstance, Creating connection failed hr=%X\n"),
hres );
}
}
catch(_com_error e)
{
Print("CADOBase::CreateInstance, Exception caught Error - %X.\n"),
e.Error());
}
catch(...)
{
Print("CADOBase::CreateInstance, Unknown Exception caught hr=%X\n"),
hres );
}
return bRet;
}

********************************************************************************

For Closing:::::
try
{
if(m_pRecordset)
{
if(m_pRecordset->GetState() == adStateOpen)
{
m_pRecordset->Close();
}
m_pRecordset = NULL;
}

if(m_pConnection)
{
if(m_pConnection->GetState() == adStateOpen)
{
m_pConnection->Close();
}
m_pConnection = NULL;
}
}
catch(_com_error e)
{
Print"CADOBase::CloseDatabase, Exception caught for table Error -
%X.\n"), e.Error());
}
catch(...)
{
Print("CADOBase::CloseDatabase,Unknown Exception caught for table
moving on...\n"));
}
}


.



Relevant Pages

  • Re: Concurrent database access in SQL 2005 Mobile
    ... Please stick to having an "dummy" connection in Open State. ... SQL CE/Mobile has a background thread that flushes the changes ... they run for long hours and we have not seen memory leaks so far. ... then opens his work forms and it's in ...
    (microsoft.public.sqlserver.ce)
  • Re: Concurrent database access in SQL 2005 Mobile
    ... Please stick to having an "dummy" connection in Open State. ... So it is a kind of asynchronous commit which happens every 10 ... I am not sure of this claim as we have many applications built on SQL CE ... then opens his work forms and it's in ...
    (microsoft.public.sqlserver.ce)
  • Access 2003 adp/proxy security - A substitute for SYSTEM_USER()
    ... We need a way for SQL to know the nt username that initiated the proxy ... Many stored procedures and views use a UDF that also depends on ... SyUserLogin and use HostIDand HostName() to find the right row. ... We've played with the Connection dialog settings, ...
    (microsoft.public.access.security)
  • RE: Logging in in background
    ... wold take all kinds of modifictions as I'd need to be checking that each SQL ... my database and all have connection strings associated with them. ... I suspect that there is also an issue on the SQL Server side as I keep ...
    (microsoft.public.access.modulesdaovba)
  • Access 2003 adp/proxy security - A substitute for SYSTEM_USER()
    ... We need a way for SQL to know the nt username that initiated the proxy ... Many stored procedures and views use a UDF that also depends on ... SyUserLogin and use HostIDand HostName() to find the right row. ... We've played with the Connection dialog settings, ...
    (microsoft.public.sqlserver.connect)

Loading