[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-4049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17264982#comment-17264982
 ] 

Damien Diederen commented on ZOOKEEPER-4049:
--------------------------------------------

Hi [~nkalmar],

bq. Why wouldn't adding the configs to the docker config json work?

I'm not sure I follow.  Yes, editing the {{/etc/docker/daemon.json}} config 
file is what I did, and I can confirm that the test would then succeed.

But _as far as I can tell_, IPv6 support can only be enabled via the Docker 
*daemon*.  And as its config file is in {{/etc}}, one normally has to be 
administrator _on the host_ to change it.

bq. Host machine needs some sort of ipv6 support I guess? Like being able to 
get ipv6 address itself?

Yes, the host kernel and OS have to be configured with IPv6 before Docker can 
be provide it to the guests at (test) runtime.  (Docker uses the host kernel; 
it is not a virtual machine.)

(No such IPv6 support or configuration is necessary for *compiling*; for that, 
it is sufficient to have the libraries available.)

bq. Sorry, this might be a trivial question. Anyway, that would be the best 
solution.

We could suggest that developers edit/ask their administrator to edit their 
central Docker configuration file and restart the daemon, yes.  Perhaps most 
will be able to do so, but I think we should also offer a way to disable IPv6 
tests for those who can't.

bq. Either way, seems like some users might have issues with this test.

Exactly.

bq. Disabling the test in docker would work now IMHO because Jenkins runs 
pre-commit job on host machine, so it wouldn't get unnoticed if something 
brakes.

I guess I would suggest to:

# Make it possible for the operator to skip some tests.  (CppUnit doesn't seem 
to have "native" support for skipping tests, but I suppose we could cook up 
something using, e.g., an environment variable.);
# Set that variable/config in {{dev/docker/run.sh}} (as I suppose that's how 
people log into Docker for ZooKeeper work);
# (Optional, perhaps instead of #2) Wrap the test runner with a small script 
which checks whether IPv6 is usable and _conditionally_ sets the 
variable/config.

bq. Considering all this I would go with disabling the test on Docker env. But 
this may worth a question on dev list.

I'd be inclined to do a bit of research for point #3 above, and to present the 
findings to dev@.  In any case, the output should make it clear when some tests 
are being skipped.

> C client test failure on docker
> -------------------------------
>
>                 Key: ZOOKEEPER-4049
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-4049
>             Project: ZooKeeper
>          Issue Type: Bug
>    Affects Versions: 3.5.8
>            Reporter: Norbert Kalmár
>            Priority: Major
>
> A c test is constantly failing on docker environment:
> {code}
> [exec]
> /Downloads/zk359/apache-zookeeper-3.5.9/zookeeper-client/zookeeper-client-c/tests/TestClient.cc:789:
> Assertion: equality assertion failed [Expected: 0, Actual  : -4]
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to