Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Unix forked server-process doesn't free all cursor-resources?(No free Cursors left)

Unix forked server-process doesn't free all cursor-resources?(No free Cursors left)

From: Gustav Gerrits <GGerrits_at_mtgnet.de>
Date: 1997/08/27
Message-ID: <34043D85.B2711D6@mtgnet.de>#1/1

Hi,

I 've got the following problem:
A Unix (SunOs) server-process which is connected to several DBs(6) is forked
for each user-connection. This child-process then uses the parents DB-connections
without doing DB-connects itselves. On Child-exit it doesn't do a DB-closing either
(tried that already). This child uses Pro-C for its DB-interactions but doesn't use
SQL-Cursors itselves. We've noticed however that the DBs use some internal Cursors
for the Pro-C SQL statements. In a single Child-process these cursors are reused for
equal SQL-statements, but ain't freed on exit (3 Cursors for each child in our case).
As the standard value for Number Cursors=50, this resource is quickly exhausted.
My current patch was to move the DB-connect into the child-process, resulting in an
extra childs response-delay of approx 2sec. I would like to keep the DB-connects
however in the parent-process to keep the childs-response-delay to a minimum.

Is there a kind of close(), flush() command or another specific way to implement this??

Thanx.

-Gustav Gerrits (GGerrits_at_mtgnet.de)
 Media Transfer GmbH
 Darmstadt, Germany Received on Wed Aug 27 1997 - 00:00:00 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US