Re: Apache Blank Pages

2010-01-14 Thread Perrin Harkins
On Thu, Jan 14, 2010 at 6:20 PM, cfaust-dougot  wrote:
> Long story short, I'm in the process of moving to another machine. I wanted
> to ask you though, is there any modules I should stay away from loading in
> startup.pl? Should DBI and DBD be loaded within each script and not within
> startup?

You just need to avoid opening files or sockets before forking.  It's
fine to load DBI/DBD.

> I've always been under the impression that if it was a module that I was
> going to be using in the majority of my scripts then I should put it in
> startup.

That's correct.

- Perrin


RE: Apache Blank Pages

2010-01-14 Thread cfaust-dougot
Thanks Perrin,
 
Long story short, I'm in the process of moving to another machine. I wanted to 
ask you though, is there any modules I should stay away from loading in 
startup.pl? Should DBI and DBD be loaded within each script and not within 
startup?
 
I've always been under the impression that if it was a module that I was going 
to be using in the majority of my scripts then I should put it in startup. Was 
that thinking wrong?
 
TIA!!!



From: Perrin Harkins [mailto:phark...@gmail.com]
Sent: Thu 1/14/2010 4:30 PM
To: cfaust-dougot
Cc: modperl@perl.apache.org
Subject: Re: Apache Blank Pages



On Wed, Jan 13, 2010 at 5:52 PM, cfaust-dougot  wrote:
> Below is what I currently call in startup, by any chance does anything pop
> out at you?

Nope, those all look fine to me.

> Other wise I'll start going though them one at a time.

A binary search is good for this sort of thing.

- Perrin




Re: Apache Blank Pages

2010-01-14 Thread Perrin Harkins
On Wed, Jan 13, 2010 at 5:52 PM, cfaust-dougot  wrote:
> Below is what I currently call in startup, by any chance does anything pop
> out at you?

Nope, those all look fine to me.

> Other wise I'll start going though them one at a time.

A binary search is good for this sort of thing.

- Perrin


RE: Apache Blank Pages

2010-01-13 Thread cfaust-dougot
Ouch, that could get messy.
 
Below is what I currently call in startup, by any chance does anything pop out 
at you? Other wise I'll start going though them one at a time.
 
Thanks Perrin
 
use ModPerl::MethodLookup;
ModPerl::MethodLookup::preload_all_modules( );
use ModPerl::Util ( ); #for CORE::GLOBAL::exit
use APR::Request ();
use APR::Request::Apache2 ();
use APR::Request::CGI ();
use APR::Request::Cookie ();
use APR::Request::Error ();
use APR::Request::Hook ();
use APR::Request::Param ();
use APR::Request::Parser ();
use APR::Table ();
use Apache2::RequestRec;
use Apache2::RequestIO;
use Apache2::RequestUtil;
use Apache2::Upload ();
use Apache2::Request ();
use Apache2::Cookie ();
use Apache2::ServerUtil();
use Apache2::Connection();
use Apache2::Log();
use ModPerl::Registry();
use Apache2::Const -compile => ':common';
use Apache2::Const -compile => qw(OK);
use Apache2::Const -compile => qw(REDIRECT);
use MIME::Lite ();
use MIME::Lite::HTML ();
use HTML::Template ();
use HTML::TagFilter ();
use Data::Page ();
use Data::Pageset ();
use Image::Magick ();
use Image::Magick::Thumbnail ();
use Image::Magick::Thumbnail::Fixed ();
 



From: Perrin Harkins [mailto:phark...@gmail.com]
Sent: Wed 1/13/2010 5:36 PM
To: cfaust-dougot
Cc: modperl@perl.apache.org
Subject: Re: Apache Blank Pages



On Wed, Jan 13, 2010 at 5:31 PM, cfaust-dougot  wrote:
> Do you mean on apache startup? I'm not calling DBI or DBD in startup.pl. Any
> other module would be after the fork, wouldn't?

Some modules (e.g. Class::DBI) will open a connection when you use
them.  If you're loading any modules at all in startup, there's a
possibility that this could be the issue.

- Perrin




Re: Apache Blank Pages

2010-01-13 Thread Perrin Harkins
On Wed, Jan 13, 2010 at 5:31 PM, cfaust-dougot  wrote:
> Do you mean on apache startup? I'm not calling DBI or DBD in startup.pl. Any
> other module would be after the fork, wouldn't?

Some modules (e.g. Class::DBI) will open a connection when you use
them.  If you're loading any modules at all in startup, there's a
possibility that this could be the issue.

- Perrin


RE: Apache Blank Pages

2010-01-13 Thread cfaust-dougot
Do you mean on apache startup? I'm not calling DBI or DBD in startup.pl. Any 
other module would be after the fork, wouldn't?
 
Thanks!!



From: Perrin Harkins [mailto:phark...@gmail.com]
Sent: Wed 1/13/2010 12:07 PM
To: cfaust-dougot
Cc: ???; modperl@perl.apache.org
Subject: Re: Apache Blank Pages



On Wed, Jan 13, 2010 at 7:28 AM, cfaust-dougot  wrote:
> If I try to connect to a DB in that 2nd virtual host I have the problem. If
> I make no connection then there is no problem. Also if I connect to the same
> DB that the 1st virtual host does, then there is no problem. It's only when
> I try to connect to another DB that the problem comes into play.

It's possible you are opening this handle during startup and trying to
use it after the fork.  That would result in the sort of failures
you're seeing.

- Perrin




Re: Apache Blank Pages

2010-01-13 Thread Perrin Harkins
On Wed, Jan 13, 2010 at 7:28 AM, cfaust-dougot  wrote:
> If I try to connect to a DB in that 2nd virtual host I have the problem. If
> I make no connection then there is no problem. Also if I connect to the same
> DB that the 1st virtual host does, then there is no problem. It's only when
> I try to connect to another DB that the problem comes into play.

It's possible you are opening this handle during startup and trying to
use it after the fork.  That would result in the sort of failures
you're seeing.

- Perrin


RE: Apache Blank Pages

2010-01-13 Thread cfaust-dougot
It's prefork
 
Apache/2.2.3 (Debian) PHP/4.4.4-8+etch6 mod_apreq2-20051231/2.6.0 
mod_perl/2.0.2 Perl/v5.8.8
 
I've isolated the problem, you guys will say I'm crazy but I can reproduce the 
results over and over again.
 
If I try to connect to a DB in that 2nd virtual host I have the problem. If I 
make no connection then there is no problem. Also if I connect to the same DB 
that the 1st virtual host does, then there is no problem. It's only when I try 
to connect to another DB that the problem comes into play.
 
That makes no sense to me, but I've been able to reproduce it 8 different times 
without fail.
 
This problem started when I updated DBI and DBD:mysql to the latest version, 
although I can't see where the conflict is as I have the latest versions 
running on other machines without any issues.
 
It's really bizarre!!



From: ??? [mailto:chen...@maxthon.net]
Sent: Wed 1/13/2010 7:08 AM
To: cfaust-dougot
Cc: modperl@perl.apache.org
Subject: Re: Apache Blank Pages


what is your apache's mpm? worker or prefork?

Our site sometimes also rise similar error(like glibc detected ... in error log 
) under worker mpm.



??? | ChenJianchun
??Web???
E-mail: chen...@maxthon.net 

Maxthon® --?! ???!
??(??) <http://www.maxthon.cn/>  | www.maxthon.cn 
<http://www.maxthon.cn/>  

???!



cfaust-dougot ??: 

Hello,
 
I have a bizarre problem I'm hoping someone could give me some 
suggestions with.
 
I have a couple of MP2 scripts running on a server, they are both 
similar in use of modules and structure. Without any recent changes, one of the 
scripts is producing a blank apache page on SOME requests.
 
It's not always the same function, it can happen to any of the function 
calls contained in the script.
 
When the blank page happens there is nothing in either the access log 
or the error log of that virtual host (like the request never made it that far).
 
In the default error log I will get something like
 
[notice] child pid 11497 exit signal Aborted (6)
 
Sometimes (but not always), I'll see
 
*** glibc detected *** malloc(): memory corruption: 0x09c120f8 ***
 
There is also no consistency to the blank page, sometimes you hit the 
URL and you get the content, sometimes you get a blank page, sometimes 1 
refresh on the blank page gives you content, other times it can take 3 - 7 
refreshes before the content comes.
 
I've been trying to pull apart my script piece by piece in the hopes 
that I could at least narrow it down to some specific section but I'm not 
having a lot of luck.
 
Any thoughts on how I could debug this better?
 
TIA!



RE: Apache Blank Pages

2010-01-13 Thread cfaust-dougot
It's prefork
 
Apache/2.2.3 (Debian) PHP/4.4.4-8+etch6 mod_apreq2-20051231/2.6.0 
mod_perl/2.0.2 Perl/v5.8.8
 
I've isolated the problem, you guys will say I'm crazy but I can reproduce the 
results over and over again.
 
If I try to connect to a DB in that 2nd virtual host I have the problem. If I 
make no connection then there is no problem. Also if I connect to the same DB 
that the 1st virtual host does, then there is no problem. It's only when I try 
to connect to another DB that the problem comes into play.
 
That makes no sense to me, but I've been able to reproduce it 8 different times 
without fail.
 
This problem started when I updated DBI and DBD:mysql to the latest version, 
although I can't see where the conflict is as I have the latest versions 
running on other machines without any issues.
 
It's really bizarre!!
 



From: ??? [mailto:chen...@maxthon.net]
Sent: Wed 1/13/2010 7:08 AM
To: cfaust-dougot
Cc: modperl@perl.apache.org
Subject: Re: Apache Blank Pages


what is your apache's mpm? worker or prefork?

Our site sometimes also rise similar error(like glibc detected ... in error log 
) under worker mpm.



??? | ChenJianchun
??Web???
E-mail: chen...@maxthon.net 

Maxthon® --?! ???!
??(??) <http://www.maxthon.cn/>  | www.maxthon.cn 
<http://www.maxthon.cn/>  

???!



cfaust-dougot ??: 

Hello,
 
I have a bizarre problem I'm hoping someone could give me some 
suggestions with.
 
I have a couple of MP2 scripts running on a server, they are both 
similar in use of modules and structure. Without any recent changes, one of the 
scripts is producing a blank apache page on SOME requests.
 
It's not always the same function, it can happen to any of the function 
calls contained in the script.
 
When the blank page happens there is nothing in either the access log 
or the error log of that virtual host (like the request never made it that far).
 
In the default error log I will get something like
 
[notice] child pid 11497 exit signal Aborted (6)
 
Sometimes (but not always), I'll see
 
*** glibc detected *** malloc(): memory corruption: 0x09c120f8 ***
 
There is also no consistency to the blank page, sometimes you hit the 
URL and you get the content, sometimes you get a blank page, sometimes 1 
refresh on the blank page gives you content, other times it can take 3 - 7 
refreshes before the content comes.
 
I've been trying to pull apart my script piece by piece in the hopes 
that I could at least narrow it down to some specific section but I'm not 
having a lot of luck.
 
Any thoughts on how I could debug this better?
 
TIA!



Re: Apache Blank Pages

2010-01-13 Thread 陈建春

what is your apache's mpm? worker or prefork?

Our site sometimes also rise similar error(like glibc detected ... in 
error log ) under worker mpm.


*陈建春 | ChenJianchun*
傲游Web应用部
E-mail: chen...@maxthon.net 

*Maxthon^® * --每个人的互联网中心! 上网从傲游开始!
傲游天下科技有限公司(中国)  | www.maxthon.cn 



*诚信、创新、务实、奋斗!*



cfaust-dougot 写道:

Hello,
 
I have a bizarre problem I'm hoping someone could give me some 
suggestions with.
 
I have a couple of MP2 scripts running on a server, they are both 
similar in use of modules and structure. Without any recent changes, 
one of the scripts is producing a blank apache page on SOME requests.
 
It's not always the same function, it can happen to any of the 
function calls contained in the script.
 
When the blank page happens there is nothing in either the access log 
or the error log of that virtual host (like the request never made it 
that far).
 
In the default error log I will get something like
 
[notice] child pid 11497 exit signal Aborted (6)
 
Sometimes (but not always), I'll see
 
*** glibc detected *** malloc(): memory corruption: 0x09c120f8 ***
 
There is also no consistency to the blank page, sometimes you hit the 
URL and you get the content, sometimes you get a blank page, sometimes 
1 refresh on the blank page gives you content, other times it can take 
3 - 7 refreshes before the content comes.
 
I've been trying to pull apart my script piece by piece in the hopes 
that I could at least narrow it down to some specific section but I'm 
not having a lot of luck.
 
Any thoughts on how I could debug this better?
 
TIA!


RE: Apache Blank Pages

2010-01-12 Thread cfaust-dougot
Thanks for the reply William, at first I thought the same thing but as time 
went on and this only effected 1 virtual host and not the other (and the other 
had 10x the traffic), I didn't seem like hardware or config related.
 
I've gotten a little further since my last post, but it still doesn't make 
sense.
 
If I take the DB connection out of the script, it doesn't happen. I've added 
and removed it a few times just because I couldn't belive it.
 
The DB is on another machine and both virtual hosts call the same machine (each 
virtual is a different DB on the dedicated DB server).
 
The only difference in the DB connection call between the 2 scripts is that 
virtual host 1 calls it via a custom package (as other scripts need the same 
DB) - this is the site that works.
 
Virtual Host 2 makes the connection within "sub handler" and that's the one 
that doesn't work.
 
No closer to a solution though - any method I try to use to connect to the DB 
from VH2 results in this problem.
 
Still doesn't make a lot of sense.
 
 
 
 
 


From: William T [mailto:dietbud...@gmail.com]
Sent: Tue 1/12/2010 11:47 AM
To: cfaust-dougot
Cc: modperl@perl.apache.org
Subject: Re: Apache Blank Pages



It seems pretty clear the blank pages are from the apache children dieing badly 
(hence the errors).  I would make an educated guess based on the malloc error 
that your ram is bad.  Try running your app on a different box and see if you 
get the same errors.


On Jan 12, 2010 7:19 AM, "cfaust-dougot"  wrote:


Hello,
 
I have a bizarre problem I'm hoping someone could give me some 
suggestions with.
 
I have a couple of MP2 scripts running on a server, they are both 
similar in use of modules and structure. Without any recent changes, one of the 
scripts is producing a blank apache page on SOME requests.
 
It's not always the same function, it can happen to any of the function 
calls contained in the script.
 
When the blank page happens there is nothing in either the access log 
or the error log of that virtual host (like the request never made it that far).
 
In the default error log I will get something like
 
[notice] child pid 11497 exit signal Aborted (6)
 
Sometimes (but not always), I'll see
 
*** glibc detected *** malloc(): memory corruption: 0x09c120f8 ***
 
There is also no consistency to the blank page, sometimes you hit the 
URL and you get the content, sometimes you get a blank page, sometimes 1 
refresh on the blank page gives you content, other times it can take 3 - 7 
refreshes before the content comes.
 
I've been trying to pull apart my script piece by piece in the hopes 
that I could at least narrow it down to some specific section but I'm not 
having a lot of luck.
 
Any thoughts on how I could debug this better?
 
TIA!



Re: Apache Blank Pages

2010-01-12 Thread William T
It seems pretty clear the blank pages are from the apache children dieing
badly (hence the errors).  I would make an educated guess based on the
malloc error that your ram is bad.  Try running your app on a different box
and see if you get the same errors.

On Jan 12, 2010 7:19 AM, "cfaust-dougot"  wrote:

 Hello,

I have a bizarre problem I'm hoping someone could give me some suggestions
with.

I have a couple of MP2 scripts running on a server, they are both similar in
use of modules and structure. Without any recent changes, one of the scripts
is producing a blank apache page on SOME requests.

It's not always the same function, it can happen to any of the function
calls contained in the script.

When the blank page happens there is nothing in either the access log or the
error log of that virtual host (like the request never made it that far).

In the default error log I will get something like

[notice] child pid 11497 exit signal Aborted (6)

Sometimes (but not always), I'll see

*** glibc detected *** malloc(): memory corruption: 0x09c120f8 ***

 There is also no consistency to the blank page, sometimes you hit the URL
and you get the content, sometimes you get a blank page, sometimes 1 refresh
on the blank page gives you content, other times it can take 3 - 7 refreshes
before the content comes.

I've been trying to pull apart my script piece by piece in the hopes that I
could at least narrow it down to some specific section but I'm not having a
lot of luck.

Any thoughts on how I could debug this better?

TIA!