OracleClient connection pooling

G

Guest

Hi,
I have this ASP.NET application developed with VS.NET 2003 VB.NET and
deplyed on Windows 2K server IIS 5.
This application uses the following:
- Oracle 10G databse
- MS Data Access Block from MS Enterprise Library June 2005 (with the other
blocks like exception, security...)
- Use Crystal Report Components for printing reports online
And everything was fine until recenntly we started getting this error
randomly and the only way to fix is reboot the server. and this is the error
message:
--------------------------------------------------------------------------------------
TargetSite : System.Data.OracleClient.DBPooledObject
GetObject(System.Object, Boolean ByRef)
Stack Trace : at System.Data.OracleClient.DBObjectPool.GetObject(Object
owningObject, Boolean& isInTransaction)
at
System.Data.OracleClient.OracleConnectionPoolManager.GetPooledConnection(String
encryptedConnectionString, OracleConnectionString options, OracleConnection
owningObject, Boolean& isInTransaction)
at
System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionString
parsedConnectionString, Object transact)
at System.Data.OracleClient.OracleConnection.Open()
at Microsoft.Practices.EnterpriseLibrary.Data.Database.OpenConnection()
at
Microsoft.Practices.EnterpriseLibrary.Data.Database.ExecuteReader(DBCommandWrapper command)
at
Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleDatabase.ExecuteReader(DBCommandWrapper commandWrapper)
at EssessmentDataAccessLayer.clsPMRFormDAL.get_dt_PMR_by_PMR_ID(Int32
PMR_ID)
--------------------------------------------------------------------------------------
And from the error message it look like that Oracle client database pooling
is not working properly but I don't know how to fix.
Do you have any suggestions.

Thanks.
 
W

wfairl

Hi,
I have this ASP.NET application developed with VS.NET 2003 VB.NET and
deplyed on Windows 2K server IIS 5.
This application uses the following:
- Oracle 10G databse
- MS Data Access Block from MS Enterprise Library June 2005 (with the other
blocks like exception, security...)
- Use Crystal Report Components for printing reports online
And everything was fine until recenntly we started getting this error
randomly and the only way to fix is reboot the server. and this is the error
message:
---------------------------------------------------------------------------­-----------
TargetSite : System.Data.OracleClient.DBPooledObject
GetObject(System.Object, Boolean ByRef)
Stack Trace : at System.Data.OracleClient.DBObjectPool.GetObject(Object
owningObject, Boolean& isInTransaction)
at
System.Data.OracleClient.OracleConnectionPoolManager.GetPooledConnection(St­ring
encryptedConnectionString, OracleConnectionString options, OracleConnection
owningObject, Boolean& isInTransaction)
at
System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionStri­ng
parsedConnectionString, Object transact)
at System.Data.OracleClient.OracleConnection.Open()
at Microsoft.Practices.EnterpriseLibrary.Data.Database.OpenConnection()
at
Microsoft.Practices.EnterpriseLibrary.Data.Database.ExecuteReader(DBCommand­Wrapper command)
at
Microsoft.Practices.EnterpriseLibrary.Data.Oracle.OracleDatabase.ExecuteRea­der(DBCommandWrapper commandWrapper)
at EssessmentDataAccessLayer.clsPMRFormDAL.get_dt_PMR_by_PMR_ID(Int32
PMR_ID)
---------------------------------------------------------------------------­-----------
And from the error message it look like that Oracle client database pooling
is not working properly but I don't know how to fix.
Do you have any suggestions.

Thanks.

Are you using an Oracle name server? I've run into a similar issue
when using the .net managed provider in an environment where a name
server was used to resolve names.
 
G

Guest

I just checked with our DBA team and they confirmed that we're not using
Oracle Name Server and we're using TNS names instead?
Does this make my issue harder? also what did you do to fix the issue?

Thanks.
 
W

wfairl

I just checked with our DBA team and they confirmed that we're not using
Oracle Name Server and we're using TNS names instead?
Does this make my issue harder? also what did you do to fix the issue?

Thanks.






- Show quoted text -

We used tnsnames :). I'm not sure if it was the exact same problem but
it sounds similar. There was an issue between the microsoft managed
provider and the oci library where a thread was entering a
synchronization context while opening a connection and then never
leaving the context because it hung on the call to resolve the server
(using Oracle name server). We'd then receive timeout errors when
trying to open another connection until we killed the process. At the
time I found some other reports of the issue in metalink but there
weren't any resolutions other than using Oracle's managed provider
(instead of Microsoft's) or not using an oracle nameserver. We had too
much provider specific code so we chose the latter.

First thing I would do is use the microsoft debugging tools so you can
identify exactly where the problem is.
http://www.microsoft.com/whdc/devtools/debugging/default.mspx
 
G

Guest

I think that we can always change the code to use the Oracle database
provider and see if that resolve the issue however that could take some time
because a lot of stuff are a provider specific. The other possible fix would
be try to disable the connection pooling but that may also slow down the
application.
I was hoping to find a fix and keep using the MS DB Provider for Oracle with
the connection pooling and I'm still searching for the fix to this issue.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,995
Messages
2,570,228
Members
46,818
Latest member
SapanaCarpetStudio

Latest Threads

Top