[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [cgiapp] CAP::DBH and CAP::Session


Cees,
 
I suspected mod_perl might be the problem too, but I have disabled it
for testing and am running as just a plain CGI script.  I went ahead and
added a warn $@ statement to the PostgreSQL driver for CGI::Session
after the first eval in the store method when it tries to retrieve the
session information.  After doing this, I got an "execute on
disconnected handle" error in my Apache log, so it looks like the handle
is being destroyed or disconnected for some reason.
 
Curtis H.

>>> Cees Hek <suppressed> 6/22/2005 9:15:09 AM >>>

On 6/22/05, Curtis Hawthorne <suppressed> wrote:
> So, I'm guessing what's happening is that the database handle inside
of
> CAP::DBH is getting DESTROYed before the session object.  Is there
any
> good way to get around this?

That should only happen if you explicitly close the database handle. 
CAP::Session will keep a reference to the database handle, so the
database handle will not be destroyed until after CAP::Session is
finished with it.

Another possibility is that your session never goes out of scope,
hence it is never automatically flushed.  This can happen under
mod_perl if you keep the session in a global variable, or trap it in a
closure.

Cheers,

Cees


Mail converted by mhonarc 2.6.15
This archive provided courtesy of JSW4.NET, Internet Hosting Services for Small Business.