The ppc64/arm versions of Juju should depend on a more recent version of libgo5
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Fix Released
|
High
|
Curtis Hovey | ||
juju-core (Ubuntu) |
Fix Released
|
High
|
Robie Basak | ||
Trusty |
Fix Released
|
High
|
Robie Basak |
Bug Description
The libgo5 package in trusty is not compiled with the fix for 64k PAGE_SIZE. When this old version of libgo5 is used it can cause problems on ppc64 hardware. The error can be different things, but often presents as a nil pointer dereference:
panic: runtime error: invalid memory address or nil pointer dereference
This can be caused by the version of libgo5 that is installed by default on 14.04, but the trusty-updates has a more recent version of the libgo5 package that is contains a fix.
The version I have seen work is:
$ apt-cache policy libgo5
libgo5:
Installed: 4.9.1-0ubuntu1
Candidate: 4.9.1-0ubuntu1
Version table:
*** 4.9.1-0ubuntu1 0
500 http://
100 /var/lib/
4.
500 http://
This problem is very hard to debug and we have it the golang problem with 64k page size more than once.
Can we change the debian package dependency for libgo5 to get the version that has been compiled with the right version of compiler?
tags: | added: arm64 packaging ppc64el |
Changed in juju-core: | |
status: | New → Triaged |
importance: | Undecided → High |
assignee: | nobody → Curtis Hovey (sinzui) |
Changed in juju-core: | |
status: | Triaged → In Progress |
Changed in juju-core: | |
status: | In Progress → Fix Released |
Changed in juju-core (Ubuntu): | |
status: | New → Triaged |
Changed in juju-core (Ubuntu Trusty): | |
status: | New → Triaged |
Changed in juju-core (Ubuntu): | |
importance: | Undecided → High |
Changed in juju-core (Ubuntu Trusty): | |
importance: | Undecided → High |
Changed in juju-core (Ubuntu): | |
assignee: | nobody → Robie Basak (racb) |
Changed in juju-core (Ubuntu Trusty): | |
assignee: | nobody → Robie Basak (racb) |
I found some more information in an email from Dave Cheney:
... trying to come up with a procedure that anyone can run to detect if their juju client (ppc64/arm64 only) is using the faulty libgo5 shipped with trusty.
I had hoped to provide a simple script that would do this, but for a number of reasons this isn't going to be possible.
...
This working installation differs in only one step
a. install trusty 14.04.1
b. *enable trusty-updates*
c. follow the installation instructions from juju.ubuntu.com.
Any version of libgo5 less than 4.9.1-0ubuntu1 should be considered faulty, and this procedure should be able to confirm this.