[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: perl auth fails after upgrade to svn 1.7.5

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Wed, 20 Jun 2012 18:39:56 +0100

Doug Hunley <doug.hunley_at_gmail.com> writes:

> On Mon, Jun 18, 2012 at 4:48 PM, Daniel Shahaf <d.s_at_daniel.shahaf.name> wrote:
>> Doug Hunley wrote on Mon, Jun 18, 2012 at 10:55:02 -0400:
>>> Hey everyone,
>>> We're currently running Apache 2.2.x on an OS X server with SVN 1.6.x
>>> and have a mod_perl based authentication handler for SVN repo access.
>>> It works fine and has for many months. When we upgrade to 1.7.x, our
>>> commits fail with an Apache 500 error, and the logs show:
>>> [Wed May 16 22:38:58 2012] [error] Subroutine fatal redefined at
>>> /Library/Apache/HTTPD/2.2.11-flock/Perl/lib/perl5/site_perl/5.8.9/darwin-thread-multi-2level/APR/Error.pm
>>> line 41.\nCompilation failed in require at (eval 22) line 1.\n
>>>
>>> If we disable the new httpv2 that comes with 1.7.x all this goes away
>>> and everything works exactly as it did under 1.6.x. We are not nesting
>>> <Location> directives, and that's the only real issue I've found so
>>> far that is similar to ours in the mailing list archive.
>>>
>>> Where do I begin troubleshooting this?
>>>
>>
>> Check where the 'other' definition of the subroutine 'fatal' is, and why
>> the two definitions conflict.
>
> The only definitions of fatal are:
> qa2:Perl root# grep -rn 'sub fatal ' *
> lib/perl5/5.8.9/Error.pm:41:sub fatal { die __PACKAGE__ . ": Can't
> handle '$_[3]'" }
> lib/perl5/site_perl/5.8.9/darwin-2level/APR/Error.pm:41:sub fatal {
> die __PACKAGE__ . ": Can't handle '$_[3]'" }
> lib/perl5/site_perl/5.8.9/darwin-thread-multi-2level/APR/Error.pm:41:sub
> fatal { die __PACKAGE__ . ": Can't handle '$_[3]'" }
> qa2:Perl root#
>
> which are all part of Perl or Apache itself, so this isn't too
> helpful. It also doesn't explain why making no code changes at all yet
> disabling httpv2 in subversion makes the error go away. Perhaps I'm
> still not understanding what I should be looking for. Can you
> elaborate based on the above? Thanks.

When you disabled v2 you probably restarted apache. Perhaps the
original error was caused by mod_perl reloading the Perl and then
getting redefinitions of the symbols present from the previous load.
Restarting apache would make this go away, so it may be the restart
rather than any v2 change that solved the problem.

-- 
Philip
Received on 2012-06-20 19:40:36 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.