Pooling of 'bad' database connections?

From: Jason Plank <jplank_at_direcway.com>
Date: Fri, 30 May 2003 13:20:19 -0700
Message-ID: <0b6301c326e8$e3b39090$a001280a_at_phx.gbl>


We had a similar behavior with our 8.1.7 Oracle Database and most of the problems where solved by changing the Oracle Server to multi-threading.

On a side note, I've had all kinds of problems with the providers supplied by Oracle. I have the best results with Microsoft ODBC for Oracle.

jason

>-----Original Message-----
>We're getting a rather strange effect for which I'd be
 grateful for
>some help.
>
>Our server app does lookups and updates against a
 database (SQL Server
>or Oracle). Talks via ADO, and runs under COM+. This
 server app
>runs under COM+ but does transaction control itself via
 ADO (ie it
>does not use COM+ declarative transaction model).
>
>Recently we tried putting the server under some pressure,
 with 5
>automated clients sending in requests as fast as
 possible. Against
>SQL Server this caused no problem. However in running
 the same test
>against Oracle, after about 20-30 mins we started to see
 a number of
>failures. Upon further investigation we discovered
 something rather
>curious:
>
>- The failures occurred when an attempt was made to open
 an ADO
>database connection. An access violation would occur
 within the
>Open() method for no apparent reason.
>
>- From trace output it became clear that once such a
 failure occurred,
>that further failures were likely to occur on that same
 thread id.
>In one test run all failures occurred on a single
 thread. On another
>these failures were consistently noted on two thread ids.
>
>
><Speculation>What occurs to me is that this might
 indicate that an ADO
>connection goes 'bad' for some reason, and that once that
 happens it
>is remains pooled by COM+. Whether by design or
 otherwise it looks
>as though that database connection is associated with a
 particular
>thread in COM+'s pool, which is why I keep seeing the
 same thread ids
>coming up as failing.</Speculation> If this is true, is
 there any
>way I can tell COM+ to remove this 'bad' connection from
 its pool?
>Does this seem like a possible explanation?
>
>
>An obvious approach to dealing with this is to look for
 another
>version of OLEDB provider. However we're currently
 using the latest
>one from Oracle for this particular Oracle client/server
 pairing.
>The search continues, but I'm looking out for alternative
 approaches
>just in case.
>
>If this sounds familiar to anyone by all means tell us
 how you got
>around it.
>
>Environment:
>
>Windows 2000 SP3 (both professional and server).
>MDAC 2.71.9030.9
>Oracle9i Enterprise Edition Release 9.2.0.3.0
>Oracle Provider for OLEDB 9.2.0.2
>
>Thanks in advance for any illumination offered.
>
>Ed Barrett
>.
>
Received on Fri May 30 2003 - 22:20:19 CEST

Original text of this message