It is a problem with Mason and links, I think.   Easiest fix is to not use a 
link, and either reconfigure with prefix /opt/opt.CORE/rt-3.8/rhel5 or, move 
the rt3.8 directory to /usr/site/rt-3.8

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of Susan McClure
Sent: Tuesday, September 15, 2009 8:28 PM
To: [email protected]
Cc: [email protected]
Subject: Re: [rt-users] [rt-user] PATCH: RT.pm.in for MasonComponentRoot

Was this ever resolved or determined to be a bug?

I am experiencing the same thing, installing RT 3.8.4, but when I edit my 
lib/RT.pm file to make the Mason components absolute paths, I still have the 
error:

============================================
[Tue Sep 15 19:17:32 2009] [info] Server: Apache/2.2.3, Interface:
mod_ssl/2.2.3, Library: OpenSSL/0.9.8e-fips-rhel5 [Tue Sep 15 19:17:32 2009] 
[notice] Apache/2.2.3 (Red Hat) configured -- resuming normal operations [Tue 
Sep 15 19:17:32 2009] [info] Server built: Jul 15 2009 09:02:25 [Tue Sep 15 
19:17:32 2009] [debug] prefork.c(991): AcceptMutex: sysvsem
(default: sysvsem)
[Wed Sep 16 00:17:50 2009] [warning]: [Mason] Cannot resolve file to
component: /usr/site/rt-3.8/share/html/index.html (is file outside component 
root?) at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 852.
(/usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm:852)
=====================

I configured with:
================
 ./configure --prefix=/usr/site/rt-3.8 --with-db-type=Pg --with-db-dba=postgres 
--with-db-database=rt38 --with-web-user=cwis --with-web-group=cwis 
--with-web-handler=modperl2 --with-apachectl=/usr/sbin --enable-gd 
--enable-graphviz --enable-gpg ========================

prefix /usr/site/rt-3.8 resolves to absolute path:
/opt/opt.CORE/rt-3.8/rhel5

So I changed my lib/RT.pm to have:
............   lib/RT.pm  ..............
...............
> # END BPS TAGGED BLOCK }}}
>
> use strict;
> use warnings;
> package RT;
>
> use File::Spec ();
> use Cwd ();
> use vars qw($Config $System $SystemUser $Nobody $Handle $Logger
> $_INSTALL_MODE);
>
> our $VERSION = '3.8.4';
>
> #our $BasePath = '/usr/site/rt-3.8/';
> our $BasePath = '/opt/opt.CORE/rt-3.8/rhel5/'; our $EtcPath = 'etc';
> our $BinPath = 'bin'; our $SbinPath = 'sbin'; our $VarPath = 'var';
>
>> our $LocalPath = 'local';
>> our $LocalEtcPath = 'local/etc';
>> our $LocalLibPath               =       'local/lib';
>> our $LocalLexiconPath = 'local/po';
>> our $LocalPluginPath = $LocalPath."/plugins";
>>
>> # $MasonComponentRoot is where your rt instance keeps its mason html
>> files #our $MasonComponentRoot = 'share/html'; our
>> $MasonComponentRoot = '/opt/opt.CORE/rt-3.8/rhel5/share/html';
>>
>> # $MasonLocalComponentRoot is where your rt instance keeps its
>> site-local # mason html files.
>> #our $MasonLocalComponentRoot = 'local/html'; our
>> $MasonLocalComponentRoot = '/opt/opt.CORE/rt-3.8/rhel5/local/html';
>>
>> # $MasonDataDir Where mason keeps its datafiles #our $MasonDataDir =
>> 'var/mason_data'; our $MasonDataDir =
>> '/opt/opt.CORE/rt-3.8/rhel5/var/mason_data';
>>
>> # RT needs to put session data (for preserving state between
>> connections # via the web interface) #our $MasonSessionDir =
>> 'var/session_data'; our $MasonSessionDir =
>> '/opt/opt.CORE/rt-3.8/rhel5/var/session_data';
>>
>> unless (  File::Spec->file_name_is_absolute($EtcPath) ) {
>>
>> # if BasePath exists and is absolute, we won't infer it from
>> $INC{'RT.pm'}.
>> # otherwise RT.pm will make src dir(where we configure RT) be the
>> BasePath # instead of the --prefix one
>>     unless ( -d $BasePath &&
>> File::Spec->file_name_is_absolute($BasePath) )
>        my $pm_path = ( File::Spec->splitpath( $INC{'RT.pm'} ) )[1];
>
>        # need rel2abs here is to make sure path is absolute, since
> $INC{'RT.pm'}
>        # is not always absolute
>         $BasePath =
>           File::Spec->rel2abs(
>             File::Spec->catdir( $pm_path, File::Spec->updir ) );
>     }
>
>     $BasePath = Cwd::realpath( $BasePath );
>
>     for my $path ( qw/EtcPath BinPath SbinPath VarPath LocalPath
> LocalEtcPath
>             LocalLibPath LocalLexiconPath LocalPluginPath
> MasonComponentRoot            MasonLocalComponentRoot MasonDataDir
> MasonSessionDir/ ) {
>         no strict 'refs';
>         # just change relative ones
>         $$path = File::Spec->catfile( $BasePath, $$path )
>           unless File::Spec->file_name_is_absolute( $$path );
>     }
> }
>
>
> =head1 NAME
>
> RT - Request Tracker
>
> =head1 SYNOPSIS
>
> A fully featured request tracker package
>
> =head1 DESCRIPTION
>
> =head2 INITIALIZATION
> :
===================================================

===   perl  version =====
> r...@rt2:/usr/site/rt-3.8/lib> /usr/bin/perl -V Summary of my perl5
> (revision 5 version 8 subversion 8) configuration:
>   Platform:
>     osname=linux, osvers=2.6.18-128.1.10.el5,
> archname=x86_64-linux-thread-multi
>     uname='linux ls20-bc2-13.build.redhat.com 2.6.18-128.1.10.el5 #1
> smp wed apr 29 13:53:08 edt 2009 x86_64 x86_64 x86_64 gnulinux '
>     config_args='-des -Doptimize=-O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic -Dversion=5.8.8
> -Dmyhostname=localhost -dperladmin=r...@localhost -Dcc=gcc -Dcf_by=Red
> Hat, Inc. -Dinstallprefix=/usr -Dprefix=/usr -Dlibpth=/usr/local/lib64
> /lib64 /usr/lib64 -Dprivlib=/usr/lib/perl5/5.8.8
> -Dsitelib=/usr/lib/perl5/site_perl/5.8.8
> -Dvendorlib=/usr/lib/perl5/vendor_perl/5.8.8
> -Darchlib=/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
> -Dsitearch=/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
> -Dvendorarch=/usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-mu
> lti -Darchname=x86_64-linux-thread-multi -Dvendorprefix=/usr
> -Dsiteprefix=/usr -Duseshrplib -Dusethreads -Duseithreads
> -Duselargefiles -Dd_dosuid -Dd_semctl_semun -Di_db -Ui_ndbm -Di_gdbm
> -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl=n
> -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr
> -Dd_gethostent_r_proto -Ud_endhostent_r_proto -Ud_sethostent_r_proto
> -Ud_endprotoent_r_proto -Ud_setprotoent_r_proto -Ud_endservent_r_proto
> -Ud_setservent_r_proto -Dinc_version_list=5.8.7 5.8.6 5.8.5
> -Dscriptdir=/usr/bin'
>     hint=recommended, useposix=true, d_sigaction=define
>     usethreads=define use5005threads=undef useithreads=define
> usemultiplicity=define
>     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
>     use64bitint=define use64bitall=define uselongdouble=undef
>     usemymalloc=n, bincompat5005=undef
>   Compiler:
>     cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE
> -fno-strict-aliasing -pipe -Wdeclaration-after-statement
> -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
> -I/usr/include/gdbm',
>     optimize='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
> -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic',
>     cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
> -Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm'
>     ccversion='', gccversion='4.1.2 20080704 (Red Hat 4.1.2-44)',
> gccosandvers=''
>     intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
>     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
>     ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
> lseeksize=8
>     alignbytes=8, prototype=define
>   Linker and Libraries:
>     ld='gcc', ldflags =''
>     libpth=/usr/local/lib64 /lib64 /usr/lib64
>     libs=-lresolv -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
>     perllibs=-lresolv -lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
>     libc=, so=so, useshrplib=true, libperl=libperl.so
>     gnulibc_version='2.5'
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E
> -Wl,-rpath,/usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/CORE'
>     cccdlflags='-fPIC', lddlflags='-shared -O2 -g -pipe -Wall
> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
> --param=ssp-buffer-size=4 -m64 -mtune=generic'
>
>
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
>                         PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
>                         USE_ITHREADS USE_LARGE_FILES USE_PERLIO
>                         USE_REENTRANT_API
>   Built under linux
>   Compiled at Jul  2 2009 05:49:38
>   @INC:
>     /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi
>     /usr/lib/perl5/site_perl/5.8.8
>     /usr/lib/perl5/site_perl
>     /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi
>     /usr/lib/perl5/vendor_perl/5.8.8
>     /usr/lib/perl5/vendor_perl
>     /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi
>     /usr/lib/perl5/5.8.8
================================
======   httpd version info   ============
> r...@rt2:/usr/site/rt-3.8/lib> /usr/sbin/httpd -V Server version:
> Apache/2.2.3
> Server built:   Jul 15 2009 09:02:25
> Server's Module Magic Number: 20051115:3 Server loaded:  APR 1.2.7,
> APR-Util 1.2.7 Compiled using: APR 1.2.7, APR-Util 1.2.7
> Architecture:   64-bit
> Server MPM:     Prefork
>   threaded:     no
>     forked:     yes (variable process count)
> Server compiled with....
>  -D APACHE_MPM_DIR="server/mpm/prefork"
>  -D APR_HAS_SENDFILE
>  -D APR_HAS_MMAP
>  -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)  -D
> APR_USE_SYSVSEM_SERIALIZE  -D APR_USE_PTHREAD_SERIALIZE  -D
> SINGLE_LISTEN_UNSERIALIZED_ACCEPT  -D APR_HAS_OTHER_CHILD  -D
> AP_HAVE_RELIABLE_PIPED_LOGS  -D DYNAMIC_MODULE_LIMIT=128  -D
> HTTPD_ROOT="/etc/httpd"
>  -D SUEXEC_BIN="/usr/sbin/suexec"
>  -D DEFAULT_PIDLOG="logs/httpd.pid"
>  -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
>  -D DEFAULT_LOCKFILE="logs/accept.lock"
>  -D DEFAULT_ERRORLOG="logs/error_log"
>  -D AP_TYPES_CONFIG_FILE="conf/mime.types"
>  -D SERVER_CONFIG_FILE="conf/httpd.conf"
==================================

Thanks for any help you can provide.

Susie





_______________________________________________
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com Commercial support: 
[email protected]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
Buy a copy at http://rtbook.bestpractical.com
------------------------------------------------------------------------------------
This e-mail message is intended only for the personal use of the recipient(s) 
named above. If you are not an intended recipient, you may not review, copy or 
distribute this message. If you have received this communication in error, 
please notify the Hearst Service Center ([email protected]) immediately by 
email and delete the original message.
------------------------------------------------------------------------------------

_______________________________________________
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: [email protected]


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com

Reply via email to