I'm afraid I'm out of my league. I just noticed the following comment on
the Apache::DBI man page:
Edmund Mergl was the original author of Apache::DBI. It is now supported
and maintained by the modperl mailinglist, see the mod_perl documentation
for instructions on how to subscribe.
-Jim
On Fri, 31 May 2013, Xinhuan Zheng wrote:
I believe I am using "my" declaration rather than "local". I also tried
explicitly disconnect but still have same issue. Since it only happens in
parent/child processes, I don't know a good way to debug parent/child, nor
reproducing the same error using a simple program. Can you guys help me
with that?
Thanks,
- xinhuan
On 5/31/13 9:02 AM, "Jim Schueler" <jschue...@eloquency.com> wrote:
Perrin is right. But fundamentally, I'd say that you're confusing
'local' and 'my' variable scoping:
http://www.perlmonks.org/?node_id=94007
-Jim
On Fri, 31 May 2013, Perrin Harkins wrote:
Try an explicit disconnect() call.
- Perrin
On Thu, May 30, 2013 at 7:46 PM, Xinhuan Zheng
<xzh...@christianbook.com>
wrote:
The db handle is declared local and once it's out of scope, the
destroy
call will disconnect. But it appears even though variable is out
of scope,
we still get that error. Don't know why.
- xinhuan
On 5/30/13 8:31 AM, "Jim Schueler" <jschue...@eloquency.com>
wrote:
>Did this solve your problem?
>
> -Jim
>
>On Wed, 29 May 2013, Perrin Harkins wrote:
>
>> Hi,
>> Apache::DBI is supposed to skip caching if you connect during
startup.
>>You
>> should just need to disconnect your database handle after you
finish
>>with
>> it. It sounds like you're opening it and then leaving it
open.
>>
>> - Perrin
>>
>>
>> On Wed, May 29, 2013 at 3:24 PM, Xinhuan Zheng
>><xzh...@christianbook.com>
>> wrote:
>> Hi,
>>
>> I have apache 2.2.23 statically compiled with mod_perl2
(prefork).
>> perl binary is 5.10.1. In startup.pl file there is call
>> Apache::DBI->connect_on_init.
>>
>> <code>
>> use Apache::DBI;
>> Apache::DBI->connect_on_init( $DB_DRIVER, $DB_USER,
$DB_PASSWORD );
>>
>> use DBI;
>> </code>
>>
>> I need to call DBI->connect to load some data during server
startup
>> stage. There is problem with this setup. Whenever apachectl
>> startup/shutdown, we got connection error like this:
>>
>> DBD::Oracle::db DESTROY failed: ORA-03135: connection lost
contact
>> Process ID: 0
>> Session ID: 3252 Serial number: 15131 (DBD ERROR:
OCISessionEnd) at
>> /usr/local/lib/perl5/site_perl/5.10.1/Apache/DBI.pm line 228.
>>
>> I am trying to fix this error. I think it's related to
DBI->connect
>> in startup.pl. My question is:
>> 1. How do I accomplish loading data into database during
server
>> startup using Apache::DBI?
>> 2. Once data is loaded during server startup, how do I
safely destroy
>> this database handle but not affect the children
instantiate their
>> database handles?
>> Thanks in advance,
>>
>> Xinhuan
>>
>>
>>