Pooling of 'bad' database connections?
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