Yep, that helped. It's a missing XML::Parser problem. Here's the error string:

Script stderr:
Can't locate XML/Parser.pm in @INC (@INC contains: /System/Library/ Perl/5.8.6/darwin-thread-multi-2level /System/Library/Perl/5.8.6 / Library/Perl/5.8.6/darwin-thread-multi-2level /Library/Perl/5.8.6 / Library/Perl /Network/Library/Perl/5.8.6/darwin-thread- multi-2level /Network/Library/Perl/5.8.6 /Network/Library/Perl / System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level /System/ Library/Perl/Extras/5.8.6 /Library/Perl/5.8.1 . /usr/local/ globus-4.0.5//lib/perl) at /usr/local/globus-4.0.5//lib/perl/Globus/ GRAM/ExtensionsHandler.pm line 4.BEGIN failed--compilation aborted at /usr/local/globus-4.0.5//lib/perl/Globus/GRAM/ ExtensionsHandler.pm line 4.Compilation failed in require at /usr/ local/globus-4.0.5//lib/perl/Globus/GRAM/JobManager.pm line 8.BEGIN failed--compilation aborted at /usr/local/globus-4.0.5//lib/perl/ Globus/GRAM/JobManager.pm line 8.Compilation failed in require at / usr/local/globus-4.0.5//lib/perl/Globus/GRAM/JobManager/fork.pm line 5.BEGIN failed--compilation aborted at /usr/local/ globus-4.0.5//lib/perl/Globus/GRAM/JobManager/fork.pm line 5.Compilation failed in require at (eval 1) line 3.

Sure enough, I did have to install XML::Parser via Fink after bumping into an error during "make install". If I add

push(@INC, '/sw/lib/perl5/5.8.6/darwin-thread-multi-2level');

to the BEGIN of the job-manager-script things appear to work just fine. I guess my final question is "What's the right way to customize @INC?" Regards,

Adam


On Aug 1, 2007, at 10:29 AM, [EMAIL PROTECTED] wrote:

Hi Adam,

Please try another thing for me:
Add the following warn statement to
    $GLOBUS_LOCATION/libexec/globus-job-manager-script.pl
and check what the commandline output of a simple globusrun-ws job is.
I hope you get a "Script stderr ..." with some more information.
Please send it then.

...
eval "require $manager_class";

if($@)
{
    my $error_string = $@;
    warn $error_string;
    ...

Thanks, Martin

Hi Martin,

On Aug 1, 2007, at 9:14 AM, [EMAIL PROTECTED] wrote:

Adam,
I think the problem in your case is the line
    eval "require $manager_class";
If require fails you'll enter the following if block and because
you did not specify a logfile the condition
if (defined($job_description) && defined($job_description->logfile ()))
fails. This is fine but the failing require is not fine.

Please do the following for me:

1. Add a system debug statement before the eval statement
     system("echo $manager_class > /tmp/JOB_MANAGER_CLASS");
     eval "require $manager_class";
   What's the content of /tmp/JOB_MANAGER_CLASS after a job
submission?

Globus::GRAM::JobManager::fork

2. What are the permissions of
   $GLOBUS_LOCATION/lib/perl/Globus/GRAM/JobManager/*.pm

-rw-r--r-- 1 globus globus 13597 Jul 31 12:13 /usr/local/ globus-4.0.5/
lib/perl/Globus/GRAM/JobManager/fork.pm

3. Write the following job description to a file "job.xml":
   <job>
     <executable>/bin/true</executable>
     <extensions>
       <logfile>/tmp/GT_SUBMISSION_PERL_LOG</logfile>
     </extensions>
   </job>
   and submit it using "globusrun-ws -submit -f job.xml"
   What's the content of /tmp/GT_SUBMISSION_PERL_LOG?

true lives in /usr/bin on Mac OS X, so I changed the path and
submitted.  The job failed and no logfile was generated.  Regards,

Adam





Reply via email to