Subject: Re: [MTT users] MTT fail to require MTT::Test::Specify::Simple
From: Ethan Mallove (ethan.mallove_at_[hidden])
Date: 2008-05-13 09:59:30


Are you running on the ompi-core-testers branch? I think I
see a typo in the INI file. "specify_module" is defined
twice. Could you try deleting one of the "specify_module"
lines, and commit the change if it solves your problem?

  specify_module = Simple
  simple_pass:tests = &cat("run_list")
  specify_module = Simple

-Ethan

On Tue, May/13/2008 02:58:21PM, Wen Hao Wang wrote:
> Hi Ethan, Thanks for your answer!
>
> I run client/mtt with debug model, and found mtt script exited in
> following code section of lib/MTT/Module.pm.
>
> 32 my $str = "require $module";
> 33 Debug("Evaluating: $str\n");
> 34 my $check = eval $str;
>
> When require error occured, $str was set to "MTT::Test::Specify::Simple
> Simple". This is not a valid Perl module, so mtt failed. I had no time to
> probe why/where such value was got. I just modified Module.pm to work
> around the issue.
>
> [root_at_host MTT]# !diff
> diff primary/Module.pm ./lib/MTT/Module.pm
> 31a32,38
> > if ($module =~ m/Simple/)
> > {
> > if (length($module) > 26)
> > {
> > ($module) = $module =~ m/(.*::Simple)/;
> > }
> > }
>
> With this workaround, $str was changed back to
> "MTT::Test::Specify::Simple", and mtt script could continue. Ater all the
> tests finished, I found some MTT cases failed. For those failed cases, who
> will probe it? Or how can I probe them? Here list one section that
> returned error.
>
> | command | mpirun -np 2 --mca btl tcp,self --prefix
> /LTC/MTT/installs/Urs4/install |
> | | t_win |
> | duration | 0 seconds |
> | exit_value | 1 |
> | result_message | Failed; exit status: 1 |
> | result_stdout | WIN_BASIC: passed |
> | | WIN_OVERLAP: passed |
> | | WIN_OVERLAP2: passed |
> | | WIN_OVERLAP3: passed |
> | | LOCK_EPOCH: passed |
> | | FENCE_EPOCH: failed |
> | | MISC: passed |
> | | POST_EPOCH: passed |
> | | WIN_BASIC: passed |
> | | WIN_OVERLAP: passed |
> | | WIN_OVERLAP2: passed |
> | | WIN_OVERLAP3: passed |
> | | LOCK_EPOCH: passed |
> | | FENCE_EPOCH: passed |
> | | MISC: passed |
> | | POST_EPOCH: passed |
> | | t_win: FAILED 1 |
> | start_timestamp | Tue May 13 04:54:59 2008 |
> | test_name | t_win |
> | variant | 2 |
>
> Wen Hao Wang (******)
>
> Software Engineer
> IBM China Software Development Laboratory
> Email: wangwhao_at_[hidden]
> Tel: 86-10-82451055
> Fax: 86-10-82782244 ext. 2312
> Address: 5/F, Deshi Building, No.9 East Road Shangdi, Haidian District,
> Beijing, 100085, P.R.China
>
> Inactive hide details for Ethan Mallove <ethan.mallove_at_[hidden]>Ethan
> Mallove <ethan.mallove_at_[hidden]>
>
> Ethan Mallove To General user list for the
> <ethan.mallove_at_[hidden]> MPI Testing Tool
> Sent by: <mtt-users_at_[hidden]>
> mtt-users-bounces_at_[hidden] cc Brad Benton
> <brad.benton_at_[hidden]>
> 2008-05-12 22:33 Subject Re: [MTT users] MTT fail
> to require
> +----------------------------+ MTT::Test::Specify::Simple
> | Please respond to |
> | General user list for the |
> | MPI Testing Tool |
> | <mtt-users_at_[hidden]> |
> +----------------------------+
>
> It is odd that a "require" failed like this in the Test Run
> phase. I would have expected an earlier "require" to fail
> (e.g., in the MPI Install phase). I've never run MTT as root
> before. Does root have read-access to Specify/Simple.pm? If
> not, can you do the below command in the top-level MTT
> directory?
>
> $ chmod -R a+r ./lib
>
> FWIW, I was able to get a simple "require" to fail by
> tweaking read permissions:
>
> $ echo "package Foo; 1;" > Foo.pm
> $ perl -e 'require Foo;'
> $ ls -l Foo.pm
> -rw-r--r-- 1 em162155 staff 16 May 12 10:29 Foo.pm
>
> Remove read permissions:
>
> $ chmod a-r Foo.pm
> Can't locate Foo.pm in @INC (@INC contains:
> /ws/ompi-tools/lib/perl5/5.8.8 /usr/perl5/5.8.4/lib/sun4-solaris-64int
> /usr/perl5/5.8.4/lib /usr/perl5/site_perl/5.8.4/sun4-solaris-64int
> /usr/perl5/site_perl/5.8.4 /usr/perl5/site_perl
> /usr/perl5/vendor_perl/5.8.4/sun4-solaris-64int
> /usr/perl5/vendor_perl/5.8.4 /usr/perl5/vendor_perl .) at -e line 1.
> BEGIN failed--compilation aborted at -e line 1.
>
> -Ethan
>
> On Sun, May/11/2008 02:57:15PM, Wen Hao Wang wrote:
> > Hi all:
> >
> > I run MTT on RHEL5.2 Server of x86_32 arch. Only four lines were
> changed
> > in the samples/ompi-core-template.ini:
> >
> > #mttdatabase_url = https://www.open-mpi.org/mtt/submit/
> > mttdatabase_username = <my_user>
> > mttdatabase_password = <my_password>
> > mttdatabase_platform = <my_platform>
> >
> > The script run for about one hour and aborted, saying error to
> require
> > MTT::Test::Specify::Simple. Does anyone have comments? Thanks in
> advance!
> > Moreover, does MTT has log for its execution?
> >
> > [root_at_valiant MTT]# client/mtt --trial -d --force -f
> > samples/ompi-core-template.ini
> > ...
> > >> Running with [ompi-nightly-v1.2] / [1.2.7a0r18267] / [gcc
> warnings]
> > Found MPI details: [mpi details: open mpi]
> > Using [mpi details: open mpi] with [MPI Install: gcc warnings]
> > Evaluating: # We can exit if the test passed or was skipped (i.e.,
> there's
> > no need
> > # to cleanup).
> > if test "$MTT_TEST_RUN_RESULT" = "passed" -o "$MTT_TEST_RUN_RESULT" =
> > "skipped"; then
> > exit 0
> > fi
> >
> > if test "$MTT_TEST_HOSTFILE" != ""; then
> > args="--hostfile $MTT_TEST_HOSTFILE"
> > elif test "$MTT_TEST_HOSTLIST" != ""; then
> > args="--host $MTT_TEST_HOSTLIST"
> > fi
> > orterun $args -np $MTT_TEST_NP --prefix $MTT_TEST_PREFIX
> > mtt_ompi_cleanup.pl
> > Got final exec: mpirun &if(&have_hostfile(), "&join("--hostfile ",
> > "&hostfile()")", "&if(&have_hostlist(), "&join("--host ",
> > "&hostlist()")", "")") -np &test_np() &enumerate( "--mca btl
> > sm,tcp,self&if(&eq("&mpi_get_name()", "ompi-nightly-v1.1"), "
> > --mca btl_tcp_if_include eth0 --mca oob_tcp_if_include eth0 --mca
> > btl_openib_max_btls 1", "")", "--mca btl
> > tcp,self&if(&eq("&mpi_get_name()", "ompi-nightly-v1.1"), " --mca
> > btl_tcp_if_include eth0 --mca oob_tcp_if_include eth0 --mca
> > btl_openib_max_btls 1", "")") --prefix &test_prefix()
> &test_executable()
> > &test_argv()
> > chdir /LTC/MTT/installs/AYrM/tests/onesided/onesided
> > Evaluating: require MTT::Test::Specify::Simple
> > Simple
> > *** ERROR: Module aborted during require: MTT::Test::Specify::Simple
> > Simple: syntax error at (eval 45608) line 4, near "require
> > MTT::Test::Specify::Simple
> > Simple
> > "
> > [root_at_valiant MTT]# echo $?
> > 25
> > [root_at_valiant MTT]# find . -name Simple.pm
> > ./lib/MTT/Test/Specify/Simple.pm
> >
> > Wen Hao Wang
> > Email: wangwhao_at_[hidden]
> >
> > References
> >
> > Visible links
> > . https://www.open-mpi.org/mtt/submit/
>
> > _______________________________________________
> > mtt-users mailing list
> > mtt-users_at_[hidden]
> > http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
>
> _______________________________________________
> mtt-users mailing list
> mtt-users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
>
> References
>
> Visible links
> . https://www.open-mpi.org/mtt/submit/
> . https://www.open-mpi.org/mtt/submit/
> . http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users
> . http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users

> _______________________________________________
> mtt-users mailing list
> mtt-users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-users