Skip to content
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

Valgrind documentation/testsuite improvements #10216

Merged
merged 5 commits into from
Feb 19, 2015

Conversation

garrison
Copy link
Sponsor Member

This pull request (meant to supersede #10015) greatly improves the documentation for running julia under valgrind, and also disables a few tests that will fail for obvious reasons under valgrind.

@garrison
Copy link
Sponsor Member Author

I just disabled another spawn.jl test that was failing under Valgrind. I am considering just disabling them all under Valgrind.

@garrison
Copy link
Sponsor Member Author

At least one examples.jl test fails under Valgrind too, still (probably due to calling a subprocess that's also running under valgrind). I believe all other tests pass, but I am waiting to see.

@garrison
Copy link
Sponsor Member Author

OK yes, it looks like examples.jl is the only test file that fails under Valgrind still (at least for me). I'm not sure how best to fix this yet. I'd be fine with this pull request being merged now, or we can wait until this is fixed (though I may not have time to work on it in the next few days).

@amitmurthy
Copy link
Contributor

What is the error?

@garrison
Copy link
Sponsor Member Author

exception on 1: ERROR: LoadError: UnixDomainCM failed test, cmd : `/home/garrison/julia/usr/bin/julia-debug /home/garrison/julia/usr/bin/../share/doc/julia/examples/clustermanager/simple/test_simple.jl`
 in error at error.jl:19
 in runtests at /home/garrison/julia/test/testdefs.jl:78
 in anonymous at multi.jl:656
 in run_work_thunk at multi.jl:617
 in remotecall_fetch at multi.jl:690
 in remotecall_fetch at multi.jl:705
 in anonymous at task.jl:1406
while loading examples.jl, in expression starting on line 45

@garrison
Copy link
Sponsor Member Author

Like some of the spawn tests I disabled, examples.jl works under Nulgrind (i.e. valgrind --tool=none) but fails under Valgrind with the error above.

@amitmurthy
Copy link
Contributor

Yeah, the UnixDomainCM example test does launch a new julia session - maybe the underlying issue is the same as the spawn tests.

Does `/home/garrison/julia/usr/bin/../share/doc/julia/examples/clustermanager/simple/test_simple.jl`` exist on your system?

https://github.com/JuliaLang/julia/blob/master/Makefile#L40 copies the required files for the test to work.

@garrison
Copy link
Sponsor Member Author

Does
|/home/garrison/julia/usr/bin/../share/doc/julia/examples/clustermanager/simple/test_simple.jl|`
exist on your system?
Yes, it does.

@garrison
Copy link
Sponsor Member Author

I disabled (when running under valgrind) the one remaining examples.jl test that was failing, though I do not quite understand why it fails. (The other consistently failing tests, aside from the rounding tests, are ones that expect specific output from STDERR but instead get a valgrind banner, so that may be the issue here as well.)

I still occasionally get failure of some other test when I run the full suite under valgrind. The most recent one to fail was:

exception on 5: ERROR: LoadError: LoadError: test failed: cholfact((A1 + A1') - I) did not throw Base.LinAlg.PosDefException
 in expression: cholfact((A1 + A1') - I)
 in error at error.jl:19
 in default_handler at test.jl:27
 in do_test_throws at test.jl:72
 in anonymous at no file:338
 in include_string at loading.jl:97
 in include_from_node1 at ./loading.jl:131
 in runtests at /home/garrison/julia/test/testdefs.jl:78
 in anonymous at multi.jl:866
 in run_work_thunk at multi.jl:617
 in anonymous at task.jl:866
while loading /home/garrison/julia/test/sparsedir/cholmod.jl, in expression starting on line 291
while loading sparse.jl, in expression starting on line 3

but I've only seen this failure once, and it was while running the full suite. Since it's intermittent, perhaps fixing the existing claimed memory errors in the tests (#10217 in particular) will fix this.

I did just manage to get the full test suite to pass using the current state of this pull request, which has only a few tests disabled under valgrind.

Includes information on various flags to pass to valgrind,
and how to run the test suite under valgrind
This test consistently fails under valgrind for reasons
I do not yet understand.
@garrison
Copy link
Sponsor Member Author

OK, I rebased everything due to a conflict on master.

This was not correctly done in the rebase of 2732199.
@timholy
Copy link
Sponsor Member

timholy commented Feb 19, 2015

This looks really great to me. @tkelman, if the AppVeyor failure is unrelated, shall we merge?

tkelman added a commit that referenced this pull request Feb 19, 2015
Valgrind documentation/testsuite improvements
@tkelman tkelman merged commit 154076e into JuliaLang:master Feb 19, 2015
@tkelman
Copy link
Contributor

tkelman commented Feb 19, 2015

yep

@garrison garrison deleted the valgrind-improvements branch February 19, 2015 21:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants