Bug 1056185

Summary: go test code.google.com/p/go.net/ipv6 test fails
Product: [Fedora] Fedora EPEL Reporter: Tuomo Soini <tis>
Component: golang-googlecode-netAssignee: Lokesh Mandvekar <lsm5>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: el6CC: golang-updates, mattdm, vbatts
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: golang-googlecode-net-0-0.19.hg937a34c9de13.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-26 20:12:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Tuomo Soini 2014-01-21 16:21:41 UTC
Description of problem:

%check fails if machine you build this package on has ipv6 connectivity.

+ go test code.google.com/p/go.net/ipv6
--- FAIL: TestConnInitiatorPathMTU (0.00 seconds)
        sockopt_test.go:58: ipv6.Conn.PathMTU failed: getsockopt: protocol not available
--- FAIL: TestConnResponderPathMTU (0.00 seconds)
        sockopt_test.go:91: ipv6.Conn.PathMTU failed: getsockopt: protocol not available
--- FAIL: TestPacketConnReadWriteUnicastUDP (0.00 seconds)
        unicast_test.go:120: ipv6.PacketConn.SetControlMessage failed: setsockopt: protocol not available
FAIL
FAIL    code.google.com/p/go.net/ipv6   0.041s
RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.DbihRB (%check)

I guess package is broken for ipv6.

Comment 1 Tuomo Soini 2014-01-21 16:22:32 UTC
Forgot to tell the version: 0-0.13.hg84a4013f96e0.el6

Comment 2 Lokesh Mandvekar 2014-01-21 16:30:33 UTC
yup, I see this now, I'll disable ipv6 check for el6.

Comment 3 Lokesh Mandvekar 2014-01-21 16:33:38 UTC
I don't think it hurts to have %{import_path}/ipv6 installed for el6 (but not 'go test'ed) though.

Comment 4 Vincent Batts 2014-01-21 16:46:02 UTC
since that source tarball, there have been a little bit of work done upstream on the ipv6 package.

Before patching out tests, perhaps we should test on a newer snapshot of the repo?

changeset:   106:f720bab54225
user:        Mikio Hara <mikioh.mikioh>
date:        Wed Jan 01 18:06:29 2014 +0900
summary:     go.net/ipv6: better readability in test

changeset:   105:7aeb0fe2819e
user:        Mikio Hara <mikioh.mikioh>
date:        Tue Dec 31 23:24:59 2013 +0900
summary:     go.net/ipv6: add missing API tests

changeset:   104:e0d7bfced6e2
user:        Mikio Hara <mikioh.mikioh>
date:        Tue Dec 31 23:21:39 2013 +0900
summary:     go.net/ipv6: remove unused test code

changeset:   103:45528560020f
user:        Mikio Hara <mikioh.mikioh>
date:        Tue Dec 31 23:20:52 2013 +0900
summary:     go.net/ipv6: simplfy control message marshaling

changeset:   94:75017ecb835f
user:        Mikio Hara <mikioh.mikioh>
date:        Wed Nov 06 21:33:49 2013 +0900
summary:     go.net/ipv6: make it work with Go 1.1


changeset:   93:6aba239cf27b
user:        Mikio Hara <mikioh.mikioh>
date:        Tue Nov 05 10:09:42 2013 +0900
summary:     go.net/ipv6: implement getsockopt, setsockopt syscalls

Comment 5 Lokesh Mandvekar 2014-01-21 16:47:08 UTC
sure thing

Comment 6 Lokesh Mandvekar 2014-01-21 17:00:51 UTC
so the latest revision seems to use %{import_path}/html/charset as well, and a check for them yields this: http://fpaste.org/70381/32344213/ ...we might need to package another code.google.com/p/go.text, not sure if something provides this already

Comment 7 Tuomo Soini 2014-01-25 21:53:42 UTC
Same issue with epel7.

Comment 8 Tuomo Soini 2014-01-26 09:53:46 UTC
Another minor issue on epel7:

%if 0%{?fedora} >= 19
BuildArch:      noarch
%else

Shouldn't this be:

%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
BuildArch:      noarch
%else

Comment 9 Tuomo Soini 2014-01-26 09:59:42 UTC
Tuomo Soini from comment #8)
> Another minor issue on epel7:
> 
> %if 0%{?fedora} >= 19
> BuildArch:      noarch
> %else
> 
> Shouldn't this be:
> 
> %if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
> BuildArch:      noarch
> %else

Actually there is a reason for being arch dependant on epel7 so ignore this.

Comment 10 Lokesh Mandvekar 2014-01-26 23:24:01 UTC
(In reply to Tuomo Soini from comment #9)
> Tuomo Soini from comment #8)
> > Another minor issue on epel7:
> > 
> > %if 0%{?fedora} >= 19
> > BuildArch:      noarch
> > %else
> > 
> > Shouldn't this be:
> > 
> > %if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
> > BuildArch:      noarch
> > %else
> 
> Actually there is a reason for being arch dependant on epel7 so ignore this.

Hi Tuomo,

So past few days I've observed that "go test ..../ipv6" passes without exception for dist-6E-epel, no matter how many times I try.

Moreover, BuildArch: noarch seems to work for all branches, dist-6E-epel and epel7 included.

Anybody got a clue if something magically changed in koji or golang?

I'd appreciate more eyes and more feedback on this, but for now I feel having BuildArch: noarch for all branches and having ipv6 test enabled should be the way to go.

Comments?

Comment 12 Tuomo Soini 2014-01-27 06:44:32 UTC
Afaik builders don't have ipv6 connectivity so ipv6 tests are not actually doing real tests. Poblem only happens if you build on a machine with ipv6 connectivity where ipv6 tests can really happen.

Work-aound fo the poblem for now is adding || : at the end of ipv6 test line so failure which happens 100% of build times on a machine with ipv6 connectivity doesn't prevent building package and you could add a comment about ipv6 tests being completely broken on linux.

Comment 13 Vincent Batts 2014-01-27 14:47:43 UTC
(In reply to Tuomo Soini from comment #12)
> Afaik builders don't have ipv6 connectivity so ipv6 tests are not actually
> doing real tests. Poblem only happens if you build on a machine with ipv6
> connectivity where ipv6 tests can really happen.

the test failure is not around ipv6 connectivity. it is failing on particular syscalls on rhel6

> Work-aound fo the poblem for now is adding || : at the end of ipv6 test line
> so failure which happens 100% of build times on a machine with ipv6
> connectivity doesn't prevent building package and you could add a comment
> about ipv6 tests being completely broken on linux.

||: would be a total hack in this situation. that would ignore all tests, for the sake of a single failed case.

Comment 14 Tuomo Soini 2014-01-27 15:58:16 UTC
My suggestion was to ignore ipv6 tests, not all tests.

-GOPATH=%{buildroot}/%{gopath} go test %{import_path}/ipv6
+GOPATH=%{buildroot}/%{gopath} go test %{import_path}/ipv6 || :

When I checked the test cases I saw they skipped all testing if ipv6 is not supported so this wouldn't change anything from current situation.

Comment 16 Tuomo Soini 2014-07-10 09:07:50 UTC
How about fixing this issue?

Comment 17 Fedora Update System 2014-07-11 18:27:36 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/golang-googlecode-net-0-0.15.hg84a4013f96e0.fc19

Comment 18 Fedora Update System 2014-07-11 18:28:10 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/golang-googlecode-net-0-0.15.hg84a4013f96e0.fc20

Comment 19 Fedora Update System 2014-07-11 18:29:11 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/golang-googlecode-net-0-0.15.hg84a4013f96e0.el6

Comment 20 Fedora Update System 2014-07-12 19:45:52 UTC
Package golang-googlecode-net-0-0.15.hg84a4013f96e0.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing golang-googlecode-net-0-0.15.hg84a4013f96e0.el6'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2014-1890/golang-googlecode-net-0-0.15.hg84a4013f96e0.el6
then log in and leave karma (feedback).

Comment 21 Fedora Update System 2014-08-01 16:42:39 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 22 Fedora Update System 2014-08-01 23:54:50 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 23 Fedora Update System 2014-08-01 23:55:42 UTC
golang-googlecode-net-0-0.15.hg84a4013f96e0.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 24 Tuomo Soini 2014-10-06 16:07:31 UTC
0-0.16.hg90e232e2462d.el6 has this ipv6 issue again.

Lokesh: when you updated you removed ipv6 test work-around.

Comment 25 Lokesh Mandvekar 2014-10-06 23:49:06 UTC
argh, sorry, I'll check and revert.

Comment 26 Tuomo Soini 2014-11-26 17:21:14 UTC
0-0.17.hg90e232e2462d.el6 has still ipv6 issue again.

Comment 27 Fedora Update System 2014-12-19 00:20:51 UTC
golang-googlecode-net-0-0.19.hg937a34c9de13.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/golang-googlecode-net-0-0.19.hg937a34c9de13.el6

Comment 28 Fedora Update System 2014-12-20 00:15:53 UTC
Package golang-googlecode-net-0-0.19.hg937a34c9de13.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing golang-googlecode-net-0-0.19.hg937a34c9de13.el6'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2014-4796/golang-googlecode-net-0-0.19.hg937a34c9de13.el6
then log in and leave karma (feedback).

Comment 29 Fedora Update System 2015-01-26 20:12:40 UTC
golang-googlecode-net-0-0.19.hg937a34c9de13.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.