cvs commit: modperl-2.0/t/response/TestModules cgi.pm cgiupload.pm
stas02/04/11 04:08:45 Modified:t/filter/TestFilter api.pm buckets.pm input_body.pm input_msg.pm lc.pm reverse.pm t/hooks/TestHooks access.pm authen.pm authz.pm fixup.pm headerparser.pm init.pm trans.pm t/protocol/TestProtocol echo.pm echo_filter.pm eliza.pm t/response/TestAPI access.pm aplog.pm conn_rec.pm lookup_uri.pm lookup_uri2.pm module.pm r_subclass.pm request_rec.pm response.pm rutil.pm send_fd.pm sendfile.pm server_rec.pm server_util.pm uri.pm t/response/TestAPR base64.pm date.pm netlib.pm perlio.pm pool.pm string.pm table.pm util.pm uuid.pm t/response/TestApache cgihandler.pm compat.pm compat2.pm conftree.pm post.pm read.pm scanhdrs.pm subprocess.pm write.pm t/response/TestDirective env.pm perlmodule.pm perlrequire.pm setupenv.pm t/response/TestModperl dir_config.pm endav.pm env.pm exit.pm getc.pm pnotes.pm print.pm printf.pm readline.pm sameinterp.pm t/response/TestModules cgi.pm cgiupload.pm Log: tidy up tests: - fetch/use Apache::OK instead of return 0; - use() all modules used in tests even if preloaded elsewhere - use warnings FATAL = 'all' everywhere - fix warnings exposed by enabling warnings Revision ChangesPath 1.6 +4 -0 modperl-2.0/t/filter/TestFilter/api.pm Index: api.pm === RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/api.pm,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- api.pm5 Dec 2001 19:57:29 - 1.5 +++ api.pm11 Apr 2002 11:08:43 - 1.6 -3,10 +3,14 use strict; use warnings FATAL = 'all'; +use Apache::RequestRec (); +use Apache::RequestIO (); use Apache::Filter (); use Apache::FilterRec (); use Apache::Test; + +use Apache::Const -compile = 'OK'; my $response_data = blah blah blah; 1.6 +6 -1 modperl-2.0/t/filter/TestFilter/buckets.pm Index: buckets.pm === RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/buckets.pm,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- buckets.pm29 Mar 2002 16:16:43 - 1.5 +++ buckets.pm11 Apr 2002 11:08:43 - 1.6 -3,10 +3,15 use strict; use warnings FATAL = 'all'; -use Test; +use Apache::Test; + +use Apache::RequestRec (); +use Apache::RequestIO (); use Apache::Filter (); use APR::Brigade (); use APR::Bucket (); + +use Apache::Const -compile = 'OK'; sub handler { my($filter, $bb) = _; 1.11 +5 -2 modperl-2.0/t/filter/TestFilter/input_body.pm Index: input_body.pm === RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/input_body.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- input_body.pm 29 Mar 2002 16:16:43 - 1.10 +++ input_body.pm 11 Apr 2002 11:08:43 - 1.11 -5,10 +5,13 use base qw(Apache::Filter); #so we inherit MODIFY_CODE_ATTRIBUTES -use Apache::Const -compile = qw(M_POST); -use APR::Const -compile = ':common'; +use Apache::RequestRec (); +use Apache::RequestIO (); use APR::Brigade (); use APR::Bucket (); + +use Apache::Const -compile = qw(OK M_POST); +use APR::Const -compile = ':common'; sub handler : FilterRequestHandler { my($filter, $bb, $mode, $block, $readbytes) = _; 1.11 +5 -0 modperl-2.0/t/filter/TestFilter/input_msg.pm Index: input_msg.pm === RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/input_msg.pm,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- input_msg.pm 29 Mar 2002 16:16:43 - 1.10 +++ input_msg.pm 11 Apr 2002 11:08:43 - 1.11 -5,8 +5,13 use base qw(Apache::Filter); +use Apache::RequestRec (); +use Apache::RequestIO (); use APR::Brigade (); use APR::Bucket (); + +use Apache::Const -compile = 'OK'; +use APR::Const -compile = ':common'; my $from_url = '/input_filter.html'; my $to_url = '/TestFilter::input_msg::response'; 1.3 +3 -1 modperl-2.0/t/filter/TestFilter/lc.pm Index: lc.pm === RCS file: /home/cvs/modperl-2.0/t/filter/TestFilter/lc.pm,v retrieving revision 1.2 retrieving
Re: alarms
Damyan Ivanov wrote: On Thu, Apr 11, 2002 at 12:30:53AM +0800 Stas Bekman wrote: mire wrote: I wish to know 2 things about mod_perl 1) what happens when you set an alarm for lets say 30 seconds and the request finishes in 20 ? Since apache child is very likely still alive is mod_perl too ? You don't set alarm around the request, do you? You set the alarm for a certain code snippet and you reset it to 0 when it's done before the alarm went off. For runaway process control, see Apache::Watchdog::RunAway OK, but I am really curious. What really happens if I intentionally set the alarm to ring after the request has finished? For example if I want something to hapen if apache child is idle for more than 15 minutes. Though I've never tried doing this, I suppose this will just work, unless something disables/overrides your alarm sighandler. SIGALRM is a normal process level SIG after all. Think of a mod_perl process as a process that doesn't quit but just hangs there in a sort of while loop, waiting for something to crunch on. __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
How to cancel AccelNoPass in mod_accel
Does anyone know how I can cancel AccelNoPass in mod_accel? I have the following configuration in httpd.conf: AccelNoPass ~\*.cgi$ ~\*.html$ VirtualHost ... ProxyPass / http://localhost:8001/ ... /VirtualHost I want to make it so that inside the VirtualHost container, ~\*.cgi will not be in AccelNoPass. (The reason I have ~\*.cgi in AccelNoPass is because there's some other VirtualHosts that shouldn't have it passed.) Is it possible to do this?
Apache::ServerUtil pb in modperl2
Hi thanks for preceeding answer I had missed this doc. I have a problem with Apache::ServerUtil though : when using $s-dir_config('some') i have this message (and apache segfaults) : Attempt to free unreferenced scalar at .. line 17 i have installed modperl through ppd, so have not the t/report procedure i am under win2k ppd from theoryx5, ASperl build 631 for now the only lines in httpd.conf concerning modperl are perlsetvar statpath path perlrequire startup.pl then, in startup.pl : use Apache2; use Apache::ServerUtil(); use Apache::Const(); use Mymodule(); -- in Mymodule.pm use Apache::ServerUtil; my $s=Apache-server; [and the incriminated line 17: ] my $base=$s-dir_config('StatPath'); pascal
Re: Apache::ServerUtil pb in modperl2
pascal barbedor wrote: Hi thanks for preceeding answer I had missed this doc. I have a problem with Apache::ServerUtil though : when using $s-dir_config('some') i have this message (and apache segfaults) can you get a backtrace and send here? Also try building from scratch and see if 'make test' passes for you. That would be the best help, instead of trying to use pre-compiled binaries at this point. Attempt to free unreferenced scalar at .. line 17 i have installed modperl through ppd, so have not the t/report procedure i am under win2k ppd from theoryx5, ASperl build 631 __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
how to make apache server to understand the perl commands in httpsd.conf
Hi, We are working on apache-ssl(https). /usr/local/apache/bin/httpsdctl start is working with out any perl related commands in httpsd.conf file. We have used apache_1.3.12, openssl-9.5a,apache_1.3.12+ssl-1.40 for FreeBSD 4.1 system. Our html files include both html code and perl code. So, to run both the codes, we included the commands like PerlSetvar MasonCompRoot /usr/local/apache/htdocs PerlSetVar MasonDataDir /usr/local/apache/mason PerlModule HTML::Mason::ApacheHandler in httpsd.conf file. Now, when we are trying to start the HTTPS, it is giving the errors like Invalid command PerlSetVar either mis-spelled or server is not configured correctly Could you please suggest me to run Perl related commands in httpsd.conf file. Regards, Rajesh
How to reload PERL module in all Apache children
Hello, I was wondering if there is a possibility to reload PERL module compiled into Apache with Apache::Registry (and I want to reload this module in all Apache children processes) by running reload-program once. For example Apache::Reload must be set as PerlInitHandler, so it's handler method is run every time request comes to Apache. What I'd like to do is to reload specified (or all) module by running the program ONCE. I tried using something like perl-status: Location /mod-perl-reload SetHandler perl-script PerlHandler Apache::MyReloadModule /Location where MyReloadModule's handler was deleting specified module from %INC and reloading it by require, but it didn't satisfy me becouse changes weren't seen in apache children processess (at least I think so), so I wrote something like this in MyReloadModule: sub handler { my $r = shift; Apache-request($r); . .sending HTML . foreach my $k (keys %INC) { $r-print($kBR); } $r-print(PID $$); $r-print(/BODY/HTML); } and I realised that changes I have made to %INC in one child process aren't seen in another one. So my problem can be set in another way: Do apache children communicate between themselves? Is it possible to write such a reloader script as I wanted to write? Maybe somebody already done this? Thanks in advance, Tomek Paterek
Re: How to reload PERL module in all Apache children
Waldek Grudzien wrote: Hello, I was wondering if there is a possibility to reload PERL module compiled into Apache with Apache::Registry (and I want to reload this module in all Apache children processes) by running reload-program once. For example Apache::Reload must be set as PerlInitHandler, so it's handler method is run every time request comes to Apache. What I'd like to do is to reload specified (or all) module by running the program ONCE. I tried using something like perl-status: Location /mod-perl-reload SetHandler perl-script PerlHandler Apache::MyReloadModule /Location where MyReloadModule's handler was deleting specified module from %INC and reloading it by require, but it didn't satisfy me becouse changes weren't seen in apache children processess (at least I think so), so I wrote something like this in MyReloadModule: sub handler { my $r = shift; Apache-request($r); . .sending HTML . foreach my $k (keys %INC) { $r-print($kBR); } $r-print(PID $$); $r-print(/BODY/HTML); } and I realised that changes I have made to %INC in one child process aren't seen in another one. So my problem can be set in another way: Do apache children communicate between themselves? no Is it possible to write such a reloader script as I wanted to write? no Maybe somebody already done this? see above The processes are forked and don't share the perl iterpreter, that's why it's impossible to do what you are trying to do. If you try to reload data it's doable by many ways (IPC, dbm, etc), not the code. Currently Apache::Reload or its equivalent your only solution. With mod_perl 2.0 it'll be doable, if you run a single threaded server. __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
Re: How to reload PERL module in all Apache children
Hi Stas, I was wondering if there is a possibility to reload PERL module compiled into Apache with Apache::Registry (and I want to reload this module in all Apache children processes) by running reload-program once. Currently Apache::Reload or its equivalent your only solution. With mod_perl 2.0 it'll be doable, if you run a single threaded server. So you mean any modules changed can be reloaded to all children, without actually terminating and starting the server ? (or does single threaded means there are no children ?) Sreeji __ Do You Yahoo!? Everything you'll ever need on one web page from News and Sport to Email and Music Charts http://uk.my.yahoo.com
Re: How to reload PERL module in all Apache children
Sreeji K Das wrote: Hi Stas, I was wondering if there is a possibility to reload PERL module compiled into Apache with Apache::Registry (and I want to reload this module in all Apache children processes) by running reload-program once. Currently Apache::Reload or its equivalent your only solution. With mod_perl 2.0 it'll be doable, if you run a single threaded server. So you mean any modules changed can be reloaded to all children, without actually terminating and starting the server ? (or does single threaded means there are no children ?) Sorry, I should have said within a single process with multiple threads. I just said it'll be doable because of threads, (which all share the same process memory). I'm not sure if this already works this way. Give it a try, Apache::Reload is a now in the 2.0 core. __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
Re: [Fwd: Re: How to reload PERL module in all Apache children]
if you use Apache::Reload with a threaded MPM and multiple interpreters, the modules will be reloaded by each interpreter as they are used, not every interpreter all at once. similar to 1.x where each child has its own interpreter, the modules are reloaded as each kid is hit with a request. note that if a module is loaded at startup, the syntax tree of each subroutine is shared between interpreters (big win), but each subroutine has its own padlist (where lexical my variables are stored). once Apache::Reload reloads a module, this sharing goes away and each interpreter will have its own copy of the syntax tree for the given subroutines.
Re: [Fwd: Re: How to reload PERL module in all Apache children]
[EMAIL PROTECTED] wrote: if you use Apache::Reload with a threaded MPM and multiple interpreters, the modules will be reloaded by each interpreter as they are used, not every interpreter all at once. similar to 1.x where each child has its own interpreter, the modules are reloaded as each kid is hit with a request. thanks for correcting me. It's all about interpreters and not threads, so it's the same for the code with forked and threaded httpds. But if talk about futuristic Solar variables (perl globals shared between threads). what if a solar variable is a reference to CODE? Can this be shared? If so, will reloading this variable in one interpreter affect others? Also if we put the sharing aside for a moment and assuming that we have a pool of interpreters with idle interpreters in it, there can be a thread that monitors changed modules and update the idle interpreters by making them reload the code and put them in the head of the list. This should save the overhead of reloading during a request. Does this make sense? __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
mod_perl and DB2
Hey gang. Couldn't find an answer to this in the archives. We have a DB2 database that we access via mod_perl scripts. We have been getting errors in the Apache log files every morning whenever we first try to access the database. The error is: [Thu Apr 11 09:09:49 2002] null: DBD::DB2::db selectall_arrayref failed: [IBM][C LI Driver] CLI0108E Communication link failure. SQLSTATE=40003 at /usr/local/ap achessl/perl/reports/trans_history.pl line 90 It takes a restart of the web server to eliminate this problem. Is this the Morning Bug that I am encountering? I looked at the DB2.pm module and it appears that the ping() method has been implemented so I would think that this would prevent the Morning Bug from showing up. Should I reimplement the ping() method according to the Apache::DBI manpage? -David
Re: [Fwd: Re: How to reload PERL module in all Apache children]
On Fri, 12 Apr 2002, Stas Bekman wrote: But if talk about futuristic Solar variables (perl globals shared between threads). what if a solar variable is a reference to CODE? Can this be shared? If so, will reloading this variable in one interpreter affect others? even if that would work, it would kill performance due to required mutex locking. and that locking would need to happen in the perl core, unlike simple scalars, arrays and hashes. Also if we put the sharing aside for a moment and assuming that we have a pool of interpreters with idle interpreters in it, there can be a thread that monitors changed modules and update the idle interpreters by making them reload the code and put them in the head of the list. This should save the overhead of reloading during a request. Does this make sense? there already is a plan to have a low-priority thread that monitors idle interpreters. this would be a pluggable interface, so you can do whatever you want with the interpreter via callback hooks. but that'll all wait until well after everything else is solid with ithreads, including and most important: perl 5.8.x
Re: [Fwd: Re: How to reload PERL module in all Apache children]
[EMAIL PROTECTED] wrote: On Fri, 12 Apr 2002, Stas Bekman wrote: But if talk about futuristic Solar variables (perl globals shared between threads). what if a solar variable is a reference to CODE? Can this be shared? If so, will reloading this variable in one interpreter affect others? even if that would work, it would kill performance due to required mutex locking. and that locking would need to happen in the perl core, unlike simple scalars, arrays and hashes. Does it look you'll be able to get the solar variables idea to work for those data types? - Perrin
Challenging things to do: SIGSEGV catcher and backtrace extractor
A few moons ago we have discussed on the dev list a tool for automatic segfault detection (including multiple segfaults during 'make test') and core backtrace generation. I'm quite frankly tired of explaining again and again that we need a core file backtrace, how to get the core file dumped and generating trace (no offense, just facts). I'm sure there is a better way to do. If we can automate this process, like many other apps do (e.g. gnome/kde apps) this will save us a lot of traffic on the list and frustration on users' behalf and make us all happier. I've planned on working on this idea for a long time, but other things seem to get on my way. (like helping getting the core dumped :) Any takers? If you are interested, here is some more info: There are two situations when we want this. 1. during 'make test'. which is sort of very easy, because the new test suite already scans for core files. And there is a perl module on CPAN that automatically extracts the backtrace from a given core file (which almost works). The catch is that there can be more than one core dumped and they all be overwritten by the last core dumped. Therefore it's better to install a SIGSEGV to do the work. You will probably need to do it in XS (could write a prototype with Inline). I think I've tried in Perl and it didn't work (since SIGSEGV is caught on the C level by httpd). If this works, you will be able to generate as many backtraces as the number of segfaults 2. during normal use. Those users who get segfaults will load something like Apache::SEGV2BT and it'll write a backtrace every time segfault happens. Therefore it's most likely case 2 which can be used as case 1. For generating segfaults for testing, see my Bad::Segv module, updated by Kevin A. McGrail at http://www.peregrinehw.com/downloads/apache/mod_perl and discussed here: http://perl.apache.org/preview/modperl-docs/dst_html/docs/2.0/devel/debug_c/debug_c.html#Getting_the_core_File_Dumped p.s. I'm talking about mod_perl 2.0 mainly, but it probably should be easy to make it work for 1.x as well once it works for 2.0. __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
Re: [Fwd: Re: How to reload PERL module in all Apache children]
On Thu, 11 Apr 2002, Perrin Harkins wrote: Does it look you'll be able to get the solar variables idea to work for those data types? i had a simple prototype way back that sorta worked for simple scalars, probably won't take it any further now that there is threads::shared in 5.7.x. haven't tried it but i believe the concept is the same.
[ModPerl causing segfaults]
I built apache using mod_perl as a DSO module. When I start apache and someone attempts to access my website, it works but only for an instant and then they receive page cannot be displayed, but only with html documents, php docs show up fine. When I looked into my logs this what I found [Wed Apr 10 18:05:34 2002] [notice] child pid 27804 exit signal Segmentation fault (11) In tracing back and asking a few questions in IRC, I commented out the loading of the mod_perl module and this behavior stops happening. Any good pointers as to where I can find a solution to this problem? Reference Apache 1.3.19 Mod_perl 1.26 Php 4.1.2 Thanks, Drew
mod_perl Cook Book
Folks, I got my mp cb last night and it looks like a good read. Thanks to all of you who responded and recommended the book. -r
Re: Challenging things to do: SIGSEGV catcher and backtrace extractor
On Fri, 12 Apr 2002, Stas Bekman wrote: If you read the rest of the post I mention it (without telling the name :). The problem with this module is that it's useful only after you have the core file. which is not good, because (as I've already explained): it's important to mention Devel::CoreStack, as it is a good starting point. 1. Many users have problems getting the core file dumped then there'd be no way to automate generating a stacktrace anyhow. 2. There can be multiply segfaults with different causes which will overwrite each other, so we want to catch SEGVs as they happen. that's ok, we'll deal with one at time. Not talking about the fact that this module is not slick, e.g. you need manual interaction to help it get to the trace. (it shows the gdb's *more* pager for long output of loading symbols). don't have to use the module as-is, but there is plenty of logic in there that can be borrowed, rather than figuring out everything from scratch.
Re: apxs to build modperl2
On Thu, 11 Apr 2002, Randy Kobes wrote: perl Makefile.PL MP_AP_PREFIX=C:\Apache2 MP_GENERATE_XS=1 note that MP_GENERATE_XS=1 is the default, no need to specify it anymore. PerlSwitches -Mblib=C:\Apache2 or: PerlModule Apache2
Re: [ModPerl causing segfaults]
sounds like the largefiles issue, you should have seen this warning during the build: Your Perl is uselargefiles enabled, but Apache is not, suggestions: *) Rebuild mod_perl with Makefile.PL PERL_USELARGEFILES=0 *) Rebuild Apache with CFLAGS=-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 *) Rebuild Perl with Configure -Uuselargefiles *) Let mod_perl build Apache (USE_DSO=1 instead of USE_APXS=1) easiest fix is the 1st option.
Re: Challenging things to do: SIGSEGV catcher and backtrace extractor
Doug MacEachern wrote: On Fri, 12 Apr 2002, Stas Bekman wrote: If you read the rest of the post I mention it (without telling the name :). The problem with this module is that it's useful only after you have the core file. which is not good, because (as I've already explained): it's important to mention Devel::CoreStack, as it is a good starting point. true, as it has the config for a few known debuggers, but otherwise it just invokes the debugger and pipes the 'bt' or equivalent command to it and grabs the output. 1. Many users have problems getting the core file dumped then there'd be no way to automate generating a stacktrace anyhow. You can get a backtrace if you run the process under debugger without dumping a core file. No special setup required. I was thinking to attach the debugger on SIGSEGV event. Is it too late? I see certain gnome apps failing and they ask you if you want to get the stack, without me doing anything at all. That's what I want for modperl. You say it's not possible? __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
Re:Apache::ServerUtil pb in modperl2
How I built it on Win32, after building and installing httpd-2 to C:\Apache2, is perl Makefile.PL MP_AP_PREFIX=C:\Apache2 MP_GENERATE_XS=1 nmake nmake install On Win32 there were some problems for me in running the tests via 'nmake test'; some Apache2 modules needed to be added to be loaded early on in the generated httpd.conf, and the path to mime.types got mangled. I'll work on getting a patch for this. Even after this fix, 'nmake test' hung after about t/apache/post.t, although running it manually as, eg, perl -Mblib t/TEST t/apache/post.t worked, in this particular case. best regards, randy thanks for the tip. I build apache 2.0.35 with debug I build modperl2 (1.99_01) with : perl Makefile.PL MP_AP_PREFIX=g:\Apache2 MP_INST_APACHE2=1 nmake nmake install all builds ok nmake test : cgihandler ok compat ok compat2 ok conftree HANGS, then I stop with CTRL-C and there is an unhandled exception cannot continue the tests perl -Mblib t/TEST t/apache/conftree.t run manually says ok others picked randomly say ok (perlrequire.t for instance) when testing my own modules, I still have the error attempt to free unreferenced scalar at line 17 [L17] my $base=$s-dir_config('some'); this correspond to a perl message p923 camel book. there is no more apache segfault so i cannot give a backtrace (anyway how to doit with vc6 ?) in httpd.conf I just have: perlsetvar some thing perlrequire startup.pl and nothing more. in startup.pl: use Apache2; use Apache::ServerUtil(); use Mymodule; and it is Mymodule line 17 which causes the error message best regards pascal
Storable and Class::MethodMaker under mod_perl
I ran into a strange inconsistency in interaction between Storable and Class::MethodMaker between a development and production server that are both running builds of perl, mod_perl, and apache from the same source files. On the development server, the following code executes without error, on the production server it gives a fatal error because the Class::MethodMaker list accessor sees itself being called in array context and returns an array rather than an array reference. The scalar appears to be called in scalar context on the working system. Has anyone else seen this type of anomaly? I think the correct behavior is actually the failing case that I get on the production server. If I run the code from the command line on the development machine (using the perl interpreter from the same build), I get a fatal error with the 'not a reference' method on the Storable::freeze line. I am using Class::MethodMaker version 1.05 and Storable version 1.014 on both machines. package PackageName; use Class::MethodMaker list = [ qw( panel_list ) ], ..., ; #- sub _insert { ... use Storable; my $s = Storable::freeze( $self-panel_list ); # Fails on this line, saying 'not a reference' } The development box (on which the code works) has the following configuration: Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=linux, osvers=2.4.10-4gb, archname=i686-linux uname='linux garnet 2.4.10-4gb #1 fri sep 28 17:20:21 gmt 2001 i686 unknown ' config_args='' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='cc', ccflags ='-fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2', cppflags='-fno-strict-aliasing' ccversion='', gccversion='2.95.3 20010315 (SuSE)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags ='' libpth=/lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared' The production server has the following configuration: Summary of my perl5 (revision 5.0 version 6 subversion 1) configuration: Platform: osname=linux, osvers=2.4.0-64gb-smp, archname=i686-linux uname='linux eqr002 2.4.0-64gb-smp #1 smp wed jan 24 15:52:30 gmt 2001 i686 unknown ' config_args='' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=undef d_sfio=undef uselargefiles=define usesocks=undef use64bitint=undef use64bitall=undef uselongdouble=undef Compiler: cc='cc', ccflags ='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2', cppflags='-fno-strict-aliasing -I/usr/local/include' ccversion='', gccversion='2.95.2 19991024 (release)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12 ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=4, usemymalloc=n, prototype=define Linker and Libraries: ld='cc', ldflags =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lndbm -lgdbm -ldb -ldl -lm -lc -lcrypt -lutil perllibs=-lnsl -ldl -lm -lc -lcrypt -lutil libc=, so=so, useshrplib=false, libperl=libperl.a Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Matthew Pressly
Re: Challenging things to do: SIGSEGV catcher and backtrace extractor
On Fri, 12 Apr 2002, Stas Bekman wrote: You can get a backtrace if you run the process under debugger without dumping a core file. No special setup required. I was thinking to attach the debugger on SIGSEGV event. Is it too late? I see certain gnome apps failing and they ask you if you want to get the stack, without me doing anything at all. That's what I want for modperl. You say it's not possible? anything is possible of course. but then you have to run the tests with httpd running under gdb, not something that should be done by default. maybe you don't need gdb either, i dunno, if gnome has a trick up its sleeve, might be worth looking at.
RE: [ModPerl causing segfaults]
Thank you Doug this appears to have cleaned up the situation very nicely. :) Drew -Original Message- From: Doug MacEachern [mailto:[EMAIL PROTECTED]] Sent: Thursday, April 11, 2002 10:26 AM To: Drew Wymore Cc: [EMAIL PROTECTED] Subject: Re: [ModPerl causing segfaults] sounds like the largefiles issue, you should have seen this warning during the build: Your Perl is uselargefiles enabled, but Apache is not, suggestions: *) Rebuild mod_perl with Makefile.PL PERL_USELARGEFILES=0 *) Rebuild Apache with CFLAGS=-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 *) Rebuild Perl with Configure -Uuselargefiles *) Let mod_perl build Apache (USE_DSO=1 instead of USE_APXS=1) easiest fix is the 1st option.
Challenging things to do: SIGSEGV catcher and backtrace extractor
Date: Fri, 12 Apr 2002 00:24:11 +0800 To: [EMAIL PROTECTED] From: Stas Bekman [EMAIL PROTECTED] Subject: Challenging things to do: SIGSEGV catcher and backtrace extractor Message-ID: [EMAIL PROTECTED] A few moons ago we have discussed on the dev list a tool for automatic segfault detection (including multiple segfaults during 'make test') and core backtrace generation. I'm quite frankly tired of explaining again and again that we need a core file backtrace, how to get the core file dumped and generating trace (no offense, just facts). I'm sure there is a better way to do. If we can automate this process, like many other apps do (e.g. gnome/kde apps) this will save us a lot of traffic on the list and frustration on users' behalf and make us all happier. While I can't step up to the plate to help on development because I am still working on GETTING a core file, I can second the motion. The frustration in getting a good working core file to trace has been enormous and I am neither a newbie nor someone who gives up easily. Regards, KAM
Re: Challenging things to do: SIGSEGV catcher and backtrace extractor
On Fri, Apr 12, 2002 at 02:09:44AM +0800, Stas Bekman wrote: Doug MacEachern wrote: On Fri, 12 Apr 2002, Stas Bekman wrote: If you read the rest of the post I mention it (without telling the name :). The problem with this module is that it's useful only after you have the core file. which is not good, because (as I've already explained): it's important to mention Devel::CoreStack, as it is a good starting point. true, as it has the config for a few known debuggers, but otherwise it just invokes the debugger and pipes the 'bt' or equivalent command to it and grabs the output. 1. Many users have problems getting the core file dumped then there'd be no way to automate generating a stacktrace anyhow. You can get a backtrace if you run the process under debugger without dumping a core file. No special setup required. I was thinking to attach the debugger on SIGSEGV event. Is it too late? I see certain gnome apps failing and they ask you if you want to get the stack, without me doing anything at all. That's what I want for modperl. You say it's not possible? Sure, that's possible from the SEGV handler. -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer
Re: keeping client images private
I keep a unique 'filestamp' in the database under each customer-- a 32-digit randomly-generated number that then can be used either as a part of image filenames, or as a directory name which contains a customer's images. That way, in order for one customer to see another's images, they'd either have to watch over the other customer's shoulder and write down the filestamp, or they'd have to make a really good guess ;) todd On Tue, 11 Sep 2001, will trillich wrote: y'all seem to have some clever brains out here, so i'm wondering if some of you can offer suggestions-- what's a good clean way to keep images private per customer? i'm using mod_perl and HTML::Mason with session cookies, but coming up with a paradigm for storing and revealing images privately has got me a bit flummoxed. mr. smith has pix which he can see when he logs in to the website, and mr. brown has pix of his own, but neither can see the other's images. each customer can have two levels of imagery (main images/subsidiary images). i could have a handler intercept image requests and deny access if session-user isn't valid ... should i just make an apache alias to handle images as if they're from a certain subdir? and then use mod_perl to redirect the requests to the actual images internally? or actually store the images in actual subdirs of the documentroot? is there a better/faster/cheaper way? i'm sure there's more than one way to do this -- and before i take the likely-to-be-most-circuituitous route, i thought i'd cull advice from the clever minds on this list...
Trapping browser events
I am using Embperl on an intranet system to perform complex database searches and display the results. My problem is that, depending on the parameters given by the user, some searches can take some time - returning thousands of rows, and there is a danger that the user will hit the stop button, execute the Back command or even close the browser session altogether. If this happens at the wrong time, an oracle connection could have been made, but no SQL sent to it, leaving an Oracle process hanging there. I need to be able to trap these browser events, and I can then call a cleanup routine to close any database connections. I can use the Javascript onUnload event, I can't figure how to commmuncate with the Perl process. Any ideas would be welcome. Martin Harriss Cambridge UK
How to reload module in all Apache children.
Hi folks, I was wondering if there is a possibility to reload perl module(and I want reloaded module in all Apache children processes) by runningreload-program once. For example Apache::Reload must be set as PerlInitHandler, so it's handler method is run every time request comes to Apache. What I'd like to do is to reload specified (or all) module by runningthe program ONCE. I tried using something like perl-status: Location /mod-perl-reloadSetHandler perl-scriptPerlHandler Apache::MyReloadModule/Location where MyReloadModule's handler was deleting specified module from %INC and reloading itby require, but it didn't satisfy me becouse changes weren't seen in apache children processess (at least I think so), so I wrote something like this in MyReloadModule: sub handler { my $r = shift; Apache-request($r); . . sending HTML . foreach my $k (keys %INC) { $r-print("$kBR"); } $r-print("PID $$"); $r-print("/BODY/HTML"); } and I realised that changes I have made to %INC in one child process aren't seen in another one. So my problem can be set in another way: Doapache children communicate between themselves? Is it possible to write such a script as I wanted to write? Maybe somebody already done this? Thanks in advance, Tomek Paterek
Problems with 1.99_01 build when ap_prefix has blanks (Win32)
Greetings. I found that building with MP_AP_PREFIX=D:\Program Files\Apache2 is problematic. The build process chokes first in TestConfigParse: D:\Program Files\Apache2/bin/Apache.exe -l failed: Bad file descriptor at Apache-Test/lib/Apache/TestConfig.pm line 777, DATA chunk 1. If this is fixed by replacing my $cmd = $httpd -v; with my $cmd = \$httpd\ -v; in a few locations in TestConfigParse, the generation of the Makefile unravels after a little while with diagnostics like: Note (probably harmless): No library found for 'D:/Program' Note (probably harmless): No library found for 'Files/Apache2/lib/libapr.lib' I did not investigate this any further, as I choose to install under D:\Apache2 instead. Cheers, alf
Re: libperl.so vs mod_perl.so
Hi there, On Thu, 11 Apr 2002, Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- There's really no need for all this... :) but there is no entry for LoadModule /libexec/apache/mod_perl.so That's because mod_perl.so doesn't exist. There is a an entry for libperl.so and there is a file called libperl.so. That's the one! How can I quickly and easily test if mod_perl is inded installed Read the Guide some more... http://perl.apache.org/guide ... and check the error_log. 73, Ged.
Re: how to make apache server to understand the perl commands inhttpsd.conf
Hi there, On Thu, 11 Apr 2002, Mrajesh wrote: So, to run both the codes, we included the commands like PerlSetvar MasonCompRoot /usr/local/apache/htdocs PerlSetVar MasonDataDir /usr/local/apache/mason PerlModule HTML::Mason::ApacheHandler in httpsd.conf file. Now, when we are trying to start the HTTPS, it is giving the errors like Invalid command PerlSetVar either mis-spelled or server is not configured correctly Are you sure you have a mod_perl server? What do you get in the error_log when you start it? 73, Ged.
Re: libperl.so vs mod_perl.so
As a fellow FreeBSD user (4.5) I recommend building Apache and mod_perl from source. The ports version builds against the default Perl version (5.005), even if you upgrade. Therefore, that's all you get in your mod_perl. Also, it's a good idea to compile mod_perl into Apache, at least, that's what everyone on this list seems to say... To get the same layout as with the port install configure apache --with-layout=FreeBSD -- Ryan - Original Message - From: Ged Haywood [EMAIL PROTECTED] To: Mike Loiterman [EMAIL PROTECTED] Cc: mod_perl Mailing List [EMAIL PROTECTED] Sent: Thursday, April 11, 2002 4:24 PM Subject: Re: libperl.so vs mod_perl.so Hi there, On Thu, 11 Apr 2002, Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- There's really no need for all this... :) but there is no entry for LoadModule /libexec/apache/mod_perl.so That's because mod_perl.so doesn't exist. There is a an entry for libperl.so and there is a file called libperl.so. That's the one! How can I quickly and easily test if mod_perl is inded installed Read the Guide some more... http://perl.apache.org/guide ... and check the error_log. 73, Ged.
Re: Content management systems
On Tue, 09 Apr 2002 10:17:00 -0400 Aaron Ross [EMAIL PROTECTED] wrote: For community sites, use Slash - the engine behind slashdot (http://www.slashcode.com) - there's even a book about it. You should also check out scoop (http://scoop.kuro5hin.org/), the engine that runs Kuro5hin.org. It's also written for modperl, and IMHO has some extra community features that makes it better than slash for more democratic sites where there are no editors like on /. who decide what stories get posted. Oh, and it does have diaries. ;-) Does anyone know of a more portal oriented engine? in addition to discussions and articles, a calendar, object level access control, polls, approval based content management. A friend has to put together a community portal site for the university he works for, on biological terrorism, no less! So far, we have been unable to find anything in perl that provides the functionality needed. The ArsDigita code seems pretty good, but it's seems to be somewhat adrift and sloppy at this point. have you looked at openacs, http://www.openacs.org? marc Zope provides lot of features, but seems to be a closed little world, ie. it's own db and it's own templating language. Anybody know of something in mod_perl with this out of the box functionality in addition to content management? -- aaron
banner system
Hello, before i invent the wheel for the xth time, can someone tell me wether there is an (opensource) banner management system in modperl (MASON?). regards, Maarten
Re: libperl.so vs mod_perl.so
Hi Mike - I have the same setup. You should see something like this: $ egrep -i perl httpd.conf LoadModule perl_modulelibexec/apache/libperl.so AddModule mod_perl.c # apachectl graceful # tail /www/logs/error.log [Thu Apr 11 14:53:31 2002] [notice] Apache/1.3.22 (Unix) mod_perl/1.26 PHP/4.1.0 mod_ssl/2.8.5 OpenSSL/0.9.6a configured -- resuming normal operations ~~ Doug Silver Network Manager Urchin Corporation http://www.urchin.com ~~ On Thu, 11 Apr 2002, Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Using FreeBSD 4.4 STABLE, apache-1.13.22_4, mod_perl-1.26 I had apache installed via its port, but I needed to use mod_perl. So, it was my understanding that one can cd /usr/ports/mod_perl and do a make make install to install mod_perl into an exsisting apache configuration without having to recompile. This seems to have worked since I am seeing an entry in http.conf that says AddModule mod_perl.c but there is no entry for LoadModule /libexec/apache/mod_perl.so and of course there is no file in linexec/apache/mod_perl.so so I'm a bit confused. There is a an entry for libperl.so and there is a file called libperl.so. It isn't clear to me from the documentation at http://perl.apache.org/guide/install.html#libperl_so_and_libperl_a how this relates to mod_perl.so. Are these files interchangable? How can I quickly and easily test if mod_perl is inded installed and functioning correctly. Mike Loiterman [EMAIL PROTECTED] PGP Key 0xD1B9D18E -BEGIN PGP SIGNATURE- Version: PGP 7.0.4 Comment: Message digitally signed by Mike Loiterman iQA/AwUBPLYDBmjZbUnRudGOEQK2pgCgw2Wjlls7pSQbVpwOn5PuUX3mSR0AoNx5 b1EBAV4smZy90cKCMg5IEId+ =onnW -END PGP SIGNATURE-
Re: libperl.so vs mod_perl.so
Ryan - I upgraded to perl 5.6 and when I built mod_perl it used the right one, I would guess that it would only build it against 5.0 if you didn't run the `use.perl {port,system}` script that comes with perl 5.6. The last time I read about loadable modules vs compiled said that the loadable route costs during startup, but beyond that it's nearly a push. Using the ports system makes upgrading Apache and all the other system software much easier than the other route. But, everyone does things differently, so YMMV! ~~ Doug Silver Network Manager Urchin Corporation http://www.urchin.com ~~ On Thu, 11 Apr 2002, Ryan Parr wrote: As a fellow FreeBSD user (4.5) I recommend building Apache and mod_perl from source. The ports version builds against the default Perl version (5.005), even if you upgrade. Therefore, that's all you get in your mod_perl. Also, it's a good idea to compile mod_perl into Apache, at least, that's what everyone on this list seems to say... To get the same layout as with the port install configure apache --with-layout=FreeBSD -- Ryan - Original Message - From: Ged Haywood [EMAIL PROTECTED] To: Mike Loiterman [EMAIL PROTECTED] Cc: mod_perl Mailing List [EMAIL PROTECTED] Sent: Thursday, April 11, 2002 4:24 PM Subject: Re: libperl.so vs mod_perl.so Hi there, On Thu, 11 Apr 2002, Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- There's really no need for all this... :) but there is no entry for LoadModule /libexec/apache/mod_perl.so That's because mod_perl.so doesn't exist. There is a an entry for libperl.so and there is a file called libperl.so. That's the one! How can I quickly and easily test if mod_perl is inded installed Read the Guide some more... http://perl.apache.org/guide ... and check the error_log. 73, Ged.
installing mod_perl against a different perl installation
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I have two versions of perl installed 5.005 and 5.6.1. I currently only have mod_perl installed against 5.005 but I would like to also have it work with 5.6.1. How can I do this. I am using FreeBSD 4.4 Apache 1.13.22_4 and mod_perl 1.26 Mike Loiterman [EMAIL PROTECTED] PGP Key 0xD1B9D18E -BEGIN PGP SIGNATURE- Version: PGP 7.0.4 Comment: Message digitally signed by Mike Loiterman iQA/AwUBPLZso2jZbUnRudGOEQLQWACgiAe46cgCyPqEZuGwgdecAPDr3FAAnRJM qgf2jEr26wAyEyeBRgYm5x3o =7UOQ -END PGP SIGNATURE-
Re: installing mod_perl against a different perl installation
Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I have two versions of perl installed 5.005 and 5.6.1. I currently only have mod_perl installed against 5.005 but I would like to also have it work with 5.6.1. How can I do this. I am using FreeBSD 4.4 Apache 1.13.22_4 and mod_perl 1.26 What's the problem, just install it into a different location perl Makefile.PL USE_APACI=1 APACHE_PREFIX=/some/path ... resulting in 2 modperl servers installed (assuming that you had one already) __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
Re: Trapping browser events
Jacob Elder wrote: On Tue, Apr 09, 2002 at 11:13:09AM +0100, Martin Harriss wrote: I am using Embperl on an intranet system to perform complex database searches and display the results. My problem is that, depending on the parameters given by the user, some searches can take some time - returning thousands of rows, and there is a danger that the user will hit the stop button, execute the Back command or even close the browser session altogether. If this happens at the wrong time, an oracle connection could have been made, but no SQL sent to it, leaving an Oracle process hanging there. I need to be able to trap these browser events, and I can then call a cleanup routine to close any database connections. I can use the Javascript onUnload event, I can't figure how to commmuncate with the Perl process. I don't remember where I saw this, but I think it might be what you're looking for. while ($dbh-fetch) { # format, print, etc. last if $r-connection-aborted; } $dbh-disconnect; Remember that if you're using Apache::DBI, your database connection will be persistant anyway, so that's not a total waste :) The above code's still a good idea (although the $dbh-disconnect will be silently ignored under Apache::DBI) as it will still free the process (or thread soon :)) which is dealing with the current response, which would otherwise still have lots of work to do for a client who's no longer interested. Issac
RE: installing mod_perl against a different perl installation
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I think I got it worked out now Mike Loiterman [EMAIL PROTECTED] PGP Key 0xD1B9D18E -Original Message- From: Stas Bekman [mailto:[EMAIL PROTECTED]] Sent: Friday, April 12, 2002 12:41 AM To: [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Subject: Re: installing mod_perl against a different perl installation Mike Loiterman wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I have two versions of perl installed 5.005 and 5.6.1. I currently only have mod_perl installed against 5.005 but I would like to also have it work with 5.6.1. How can I do this. I am using FreeBSD 4.4 Apache 1.13.22_4 and mod_perl 1.26 What's the problem, just install it into a different location perl Makefile.PL USE_APACI=1 APACHE_PREFIX=/some/path ... resulting in 2 modperl servers installed (assuming that you had one already) __ Stas BekmanJAm_pH -- Just Another mod_perl Hacker http://stason.org/ mod_perl Guide --- http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com -BEGIN PGP SIGNATURE- Version: PGP 7.0.4 Comment: Message digitally signed by Mike Loiterman iQA/AwUBPLZ00WjZbUnRudGOEQLJlgCfc3VLzPbD7jb5NuViscNx6JbFCvUAnjlm 0L83fYtdNzWObduPg4ULe4kF =8Cpc -END PGP SIGNATURE-
Mem usage of modules
Hi Under Mem Usage menu I have list like this: Apache::ROOT::cgi_2dbin::auk_ch_de Apache::ROOT::cgi_2dbin::auk_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_aw_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_aw_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_ca_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_cn_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_cq_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_cq_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_sc_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_sg_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_sg_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_xa_ch_de Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::auk_xa_ch_fr Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::msn_2epl Apache::ROOTdynamic_2ericardo_2ech::cgi_2dbin::sunrise The auk_ch_de and auk_ch_fr scripts are preloaded with RegistryLoader. But these scripts are also mentioned later on that list - is that means they were loaded into memoey twice (in fact all the auk_ scripts are sym links to the same script auk) ? Thanks Pawel