Skip to content

Lustre configure fixes #3455

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
May 8, 2017
Merged

Conversation

jsquyres
Copy link
Member

@jsquyres jsquyres commented May 5, 2017

@edgargabriel This PR is a few commits to update/fix Lustre configure.m4:

  1. Ensure that --with-lustre doesn't cause a compile fail (per "../configure --with-lustre" causes build to fail with "yes/lib" error #3447)
  2. Ensure that if the user does --with-lustre and we can't find Lustre support, abort
  3. Remove some dead code
  4. Trivial style updates

Fixes #3447.

Can you review? If it's good, I'll PR to the various 2.x/3.x branches.

jsquyres added 4 commits May 5, 2017 05:28
We check for liblustreapi.h in OMPI_CHECK_LUSTRE, so this code was
commented out here.  Might as well fully delete it, since it's
redundant and dead.

Signed-off-by: Jeff Squyres <[email protected]>
Make sure the default Autoconf "yes" value for $with_lustre when the
user specifies --with-lustre on the command line (without a value)
does not propagate down into the directory logic.

Signed-off-by: Jeff Squyres <[email protected]>
Minor style updates; nothing of real consequence.

Signed-off-by: Jeff Squyres <[email protected]>
Follow the OMPI bias: if a human requests feature X and configure
can't deliver feature X, abort and let the human figure it out.

Signed-off-by: Jeff Squyres <[email protected]>
@jsquyres
Copy link
Member Author

jsquyres commented May 5, 2017

Yo @bwbarrett: I see in https://jenkins.open-mpi.org/jenkins/job/open-mpi.build.platforms/130/console that it says

open-mpi.build.platforms » amazon_linux_17.03 completed with result FAILURE

How do I see the console/output of that job to see what failed?

@edgargabriel
Copy link
Member

@jsquyres thanks for doing that. I will test it out and let you know.

@bwbarrett
Copy link
Member

@jsquyres, don't look at the console for the parameter sweep job, but for the individual builds. So in this case, you'd click on "Details" in github, then "open-mpi.build.platforms" in Jenkins (because it has a red ball), then "amazon_linux_17.03" (because it has a red ball), then click on the console. And you'd see:

--> running examples
--> running C examples
Hello, world, I am 0 of 2, (Open MPI v4.0.0a1, package: Open MPI ec2-user@ip-172-31-15-133 Distribution, ident: 4.0.0a1, repo rev: v2.x-dev-4091-geb03679, Unreleased developer copy, 153)
Hello, world, I am 1 of 2, (Open MPI v4.0.0a1, package: Open MPI ec2-user@ip-172-31-15-133 Distribution, ident: 4.0.0a1, repo rev: v2.x-dev-4091-geb03679, Unreleased developer copy, 153)
open-mpi-build-script.sh: line 218: 18466 Killed                  ${exec} ./examples/hello_c
Build step 'Execute shell' marked build as failure
Finished: FAILURE

which means /bin/timeout killed mpirun because it took longer than 2 minutes. This has been a transient problem in the 3.x series, so I doubt it's this patch, but it is something we need to sort out.

@bwbarrett
Copy link
Member

bot:ompi:retest

@edgargabriel
Copy link
Member

I think it generally works. The only little issue that I found was that it aborts correctly if --with-lustre options without a directory is given , and it couldn't find the lustre headers. If you use however --with-lustre= ( and then nothing), it does not abort, but continues and just says that it did not find lustre support.

--- MCA component fs:lustre (m4 configuration macro)
checking for MCA component fs:lustre compile mode... dso
checking --with-lustre value... simple ok (unspecified)
looking for header without includes
checking lustre/liblustreapi.h usability... no
checking lustre/liblustreapi.h presence... no
checking for lustre/liblustreapi.h... no
checking lustre/liblustreapi.h usability... no
checking lustre/liblustreapi.h presence... no
checking for lustre/liblustreapi.h... no
checking for required lustre data structures... no
checking if MCA component fs:lustre can compile... no

@jsquyres
Copy link
Member Author

jsquyres commented May 8, 2017

@edgargabriel I checked this over the weekend. If you do --with-lustre=, then $with_luster is empty (i.e., no value). So there's no way for us to know that you did that (i.e., it doesn't fill in the same yes value that it does if you --with-lustre without the =). So I think this behavior of --with-lustre= not catching that Lustre support failed is ok.

@jsquyres jsquyres merged commit 7185567 into open-mpi:master May 8, 2017
@jsquyres jsquyres deleted the pr/fix-lustre-configure branch May 8, 2017 20:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

"../configure --with-lustre" causes build to fail with "yes/lib" error
3 participants