ppc64el fail multiple definitions of juju_juju_api_networker.NewState

Bug #1424669 reported by Curtis Hovey
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-core
Fix Released
Critical
Dimiter Naydenov

Bug Description

CI shows a testing problem related to gccgo starting with commit b98776a.

ok github.com/juju/juju/api/logger 3.134s
# testmain
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o): In function `github_com_juju_juju_api_networker.MachineNetworkConfig.pN40_github_com_juju_juju_api_networker.State':
/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:30: multiple definition of `github_com_juju_juju_api_networker.MachineNetworkConfig.pN40_github_com_juju_juju_api_networker.State'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:30: first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o): In function `github_com_juju_juju_api_networker.WatchInterfaces.pN40_github_com_juju_juju_api_networker.State':
/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:75: multiple definition of `github_com_juju_juju_api_networker.WatchInterfaces.pN40_github_com_juju_juju_api_networker.State'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:75: first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o):(.data.rel.ro.__go_tdn_github_com_juju_juju_api_networker.State+0x0): multiple definition of `__go_tdn_github_com_juju_juju_api_networker.State'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):(.data.rel.ro.__go_tdn_github_com_juju_juju_api_networker.State+0x0): first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o): In function `github_com_juju_juju_api_networker.State$hash':
/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/export_test.go:15: multiple definition of `github_com_juju_juju_api_networker.State$hash'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:96: first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o): In function `github_com_juju_juju_api_networker.State$equal':
/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/export_test.go:15: multiple definition of `github_com_juju_juju_api_networker.State$equal'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:96: first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o):(.rodata.github_com_juju_juju_api_networker.NewState$descriptor+0x0): multiple definition of `github_com_juju_juju_api_networker.NewState$descriptor'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):(.rodata.github_com_juju_juju_api_networker.NewState$descriptor+0x0): first defined here
/tmp/go-build813450283/github.com/juju/juju/api/networker/_test/github.com/juju/juju/api/libnetworker.a(networker.o): In function `github_com_juju_juju_api_networker.NewState':
/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:24: multiple definition of `github_com_juju_juju_api_networker.NewState'
/tmp/go-build813450283/github.com/juju/juju/api/libnetworker.a(networker.o):/home/ubuntu/juju-core_1.23-alpha1/src/github.com/juju/juju/api/networker/networker.go:24: first defined here
collect2: error: ld returned 1 exit status
ok github.com/juju/juju/api/machiner 8.067s

In the past, tests were rewritten to avoid the gccgo's multiple definitions problem:
    (.rodata.github_com_juju_juju_api_networker.NewState$descriptor+0x0): multiple definition of `github_com_juju_juju_api_networker.NewState$descriptor'

The suspect commits are
commit 8e486f4 Merge pull request #1637 from wallyworld/apt-cloud-image-utils-master
commit b98776a Merge pull request #1639 from TheMue/network-adopt-name-changes

Revision history for this message
Dimiter Naydenov (dimitern) wrote :

I'm currently investigating on a ppc64 machine sinzui gave me access to to find a possible workaround for the gccgo compiler issue.

Changed in juju-core:
assignee: nobody → Dimiter Naydenov (dimitern)
status: Triaged → In Progress
Revision history for this message
Dimiter Naydenov (dimitern) wrote :

A fix, working for both gc and gccgo/ppc64 was proposed - https://github.com/juju/juju/pull/1658

Changed in juju-core:
status: In Progress → Fix Committed
Curtis Hovey (sinzui)
Changed in juju-core:
status: Fix Committed → Fix Released
Curtis Hovey (sinzui)
Changed in juju-core:
milestone: 1.23 → 1.23-beta1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.