Re: Testing mod_python SVN trunk with Apache 2.2 on Win32

2006-02-15 Thread Jim Gallacher

Nicolas Lehuen wrote:

Hi,

I've built Apache 2.2 and tested mod_python SVN trunk with it.

The two register_cleanup tests fail. Apparently it's because the test
code registers a cleanup function giving the current request as
parameter. Of course when the cleanup function is called, the request
object is no longer valid, and Apache segfaults.

Fixing this is only a matter of fixing the test code, yet I wonder how
this code could properly run on Apache 2.0.55. Maybe the request
object was not properly destroyed and this has been fixed in Apache
2.2 ?


The tests pass as-is on Debian linux, so this seems to be Win32 specific.

Jim


Re: Testing mod_python SVN trunk with Apache 2.2 on Win32

2006-02-15 Thread Jim Gallacher

Nicolas Lehuen wrote:

2006/2/15, Jim Gallacher [EMAIL PROTECTED]:


Nicolas Lehuen wrote:


Hi,

I've built Apache 2.2 and tested mod_python SVN trunk with it.

The two register_cleanup tests fail. Apparently it's because the test
code registers a cleanup function giving the current request as
parameter. Of course when the cleanup function is called, the request
object is no longer valid, and Apache segfaults.

Fixing this is only a matter of fixing the test code, yet I wonder how
this code could properly run on Apache 2.0.55. Maybe the request
object was not properly destroyed and this has been fixed in Apache
2.2 ?


The tests pass as-is on Debian linux, so this seems to be Win32 specific.

Jim



 Yet there is no way it should pass anywhere : the test is de facto
using an old request object during the shutdown of the server. Either
this old request object is still valid, and we have to ask ourselves
why it hasn't be properly destroyed, or the old request object isn't
valid and we are just lucky under Linux and unlucky under Win32.

BTW, I've launched the debugger and Apache segfaults when
dereferencing the request object to get its server object, during an
ap_log_rerror() call.


Just to make sure I didn't introduce any regressions with the code 
cleanup I recently checked in, could you retest with revision 376545? 
The only diffence between that rev and 3.2.7 is the Apache 2.2 support 
and bash 3.1 configure problem.


svn co -r 376545 https://svn.apache.org/repos/asf/httpd/mod_python/trunk 
mp.3765545


Jim


Testing mod_python SVN trunk with Apache 2.2 on Win32

2006-02-14 Thread Nicolas Lehuen
Hi,

I've built Apache 2.2 and tested mod_python SVN trunk with it.

The two register_cleanup tests fail. Apparently it's because the test
code registers a cleanup function giving the current request as
parameter. Of course when the cleanup function is called, the request
object is no longer valid, and Apache segfaults.

Fixing this is only a matter of fixing the test code, yet I wonder how
this code could properly run on Apache 2.0.55. Maybe the request
object was not properly destroyed and this has been fixed in Apache
2.2 ?

This also shows that we should document the fact that the current
request object should not be passed directly or indirectly to the
*.register_cleanup functions. Maybe we could implement  a little test
in those function to make sure it is not passed directly ?

Those two failures aside, the rest of the tests are OK.

Regards,
Nicolas