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

fix Issue 18519: missing curl + phobos = std.net.curl unittest timing out #6824

Merged
merged 3 commits into from
Jan 4, 2019

Conversation

ibuclaw
Copy link
Member

@ibuclaw ibuclaw commented Jan 2, 2019

Second attempt at fixing the issue.

Only a little sceptical that this is more correct here - calling shutdown is recommended however in the docs. In any case, I can no longer reproduce this on Linux after applying patch.

As seen when libcurl cannot be loaded (missing library), the lack of
checking causes a new exception to be thrown while another is inflight.
This fixes a thread deadlock that occurs in the test runner if libcurl
is missing.
@dlang-bot
Copy link
Contributor

dlang-bot commented Jan 2, 2019

Thanks for your pull request, @ibuclaw!

Bugzilla references

Auto-close Bugzilla Severity Description
18519 critical freebsd 11 + phobos + curl, timing out

⚠️⚠️⚠️ Warnings ⚠️⚠️⚠️

To target stable perform these two steps:

  1. Rebase your branch to upstream/stable:
git rebase --onto upstream/stable upstream/master
  1. Change the base branch of your PR to stable

Testing this PR locally

If you don't have a local development environment setup, you can use Digger to test this PR:

dub fetch digger
dub run digger -- build "master + phobos#6824"

@ibuclaw
Copy link
Member Author

ibuclaw commented Jan 3, 2019

std.socket.SocketAcceptException@std/socket.d(2848): Unable to accept socket connection: Bad file descriptor
----------------
****** FAIL debug32 std.net.curl
std.net.curl.CurlException@std/net/curl.d(4203): Failed to load curl, tried "libcurl.so", "libcurl.so.4", "libcurl-gnutls.so.4", "libcurl-nss.so.4", "libcurl.so.3".
----------------
gmake[1]: *** [posix.mak:386: unittest/std/net/curl.run] Error 1
gmake[1]: *** Waiting for unfinished jobs....

In the context of the issue, this means PASS.

However, as people like the auto-tester to be green, I'll partially undo the last commit I guess...

@ibuclaw
Copy link
Member Author

ibuclaw commented Jan 3, 2019

However, as people like the auto-tester to be green, I'll partially undo the last commit I guess...

Moved disabling of tests to the makefile, rather than the module, which prevented tests from running on FreeBSD regardless of what compiler is building.

posix.mak Outdated Show resolved Hide resolved
posix.mak Outdated Show resolved Hide resolved
… out

Disable the std.net.curl tests in the makefile, not the module.
@ibuclaw
Copy link
Member Author

ibuclaw commented Jan 3, 2019

Should be good to go.

@thewilsonator
Copy link
Contributor

Doc tester

Cloning into '../dub'...
fatal: unable to access 'https://github.com/dlang/dub/': Could not resolve host: github.com
posix.mak:593: recipe for target '../dub' failed

@wilzbach
Copy link
Member

wilzbach commented Jan 3, 2019

CC @CyberShadow this doc failure seems to happen more often these days :/

@dlang-bot dlang-bot merged commit 8d14c37 into dlang:master Jan 4, 2019
@ibuclaw ibuclaw deleted the issue18519 branch January 4, 2019 09:04
@CyberShadow
Copy link
Member

CC @CyberShadow this doc failure seems to happen more often these days :/

Forgot to reply but I think I found & fixed the problem yesterday.

@thewilsonator
Copy link
Contributor

Nice, thanks!

1 similar comment
@thewilsonator
Copy link
Contributor

Nice, thanks!

kraj pushed a commit to kraj/gcc that referenced this pull request Feb 10, 2019
Fixes a thread deadlock that occurs in the test runner if libcurl is
missing.

Library fix for https://gcc.gnu.org/PR88654

Reviewed-on: dlang/phobos#6824

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@268746 138bc75d-0d04-0410-961f-82ee72b054a4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants