On Mon, 15 May 2000, Jay Jacobs wrote:
> mod_perl" and there's one thing I don't quite grok about it. Let's say I
> have a site that goes through select statements like water. If I were to
> cache the statement handler (as described in the guide), how does the
> database (database dependant) handle a bunch of dangling statement
> handlers? Will the database process size grow a ton? I'm not sure if I'm
> hitting what I wanted to ask, but hopefully I'm close enough.
Are you talking about the part that says you should use prepare_cached
vs. prepare?
If so, this doesn't do anything under most DBD modules, AFAIK. Under
Oracle, it causes Oracle to hold the statement handle (an Oracle
cursor)in cache after it generates the execution plan. If you open too
many of these eventually Oracle complains (I think you can close them by
wiping out $dbh->{CachedKids} which deletes the statement handles which
causes them to go through their DESTROY). The oracle error you get is
something like 'Too many open cursors' I think.
-dave
/*==================
www.urth.org
We await the New Sun
==================*/