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

dual-ssl and large-ssl tests fail on ubuntu 16.04 #415

Closed
iain-buclaw-sociomantic opened this issue Jul 9, 2020 · 3 comments
Closed

dual-ssl and large-ssl tests fail on ubuntu 16.04 #415

iain-buclaw-sociomantic opened this issue Jul 9, 2020 · 3 comments

Comments

@iain-buclaw-sociomantic
Copy link
Contributor

Tests all pass on v3.6 and v3.7, but these two fail on v3.7.1

That makes bisecting easy (there's only been one code change between the two releases a50ae14)

Looks like there's even CI for ubuntu 16.04, and it's also failing with the same problem.
https://travis-ci.org/github/grobian/carbon-c-relay/jobs/705083939

Reproducible in a container:

docker run -it --rm ubuntu:xenial bash

apt-get update && apt-get install -y \
  autoconf build-essential libtool git libonig-dev libssl-dev zlib1g-dev \
  pkg-config liblz4-tool help2man;
git clone https://github.com/grobian/carbon-c-relay;
pushd carbon-c-relay;
autoreconf;
./configure;
make -j8;
make test -j8;
@iain-buclaw-sociomantic
Copy link
Contributor Author

The tests do not fail on ubuntu 18.04 (Bionic), so the change triggered something specific to Xenial. This can be checked by using the same reproducer as above, but starting a container with the ubuntu:bionic image instead.

@grobian
Copy link
Owner

grobian commented Jul 10, 2020

Ok, I thought this was a travis issue, since it didn't occur on other platforms.

grobian added a commit that referenced this issue Jul 10, 2020
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
grobian added a commit that referenced this issue Jul 10, 2020
A race condition during shutdown of sockets could result in a invalid
flag from poll, resulting in an accept() error.  Check the returned
array from poll is matching the current set of listeners before
accepting connections from them, as to avoid this problem.

Signed-off-by: Fabian Groffen <grobian@gentoo.org>
@grobian grobian closed this as completed Jul 10, 2020
grobian added a commit that referenced this issue Jul 10, 2020
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
@iain-buclaw-sociomantic
Copy link
Contributor Author

Ok, I thought this was a travis issue, since it didn't occur on other platforms.

I think you need to have more faith in your CI. :-)

Would it be useful to expand the testing currently done? I see that travis now supports 18.04 as well now, along with other architectures (arm64, ppc64le, s390x).

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

No branches or pull requests

2 participants