launchpad.net/juju-core/worker/uniter/jujuc tests fail with gccgo

Bug #1252572 reported by Michael Hudson-Doyle
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-core
Fix Released
High
Unassigned

Bug Description

The output isn't super clear but this might just be an error being reported differently?

2013-11-19 03:31:40 INFO juju juju-log.go:66 u/0: msg

----------------------------------------------------------------------
FAIL: server_test.go:92: net_juju_core_worker_uniter_jujuc_test.TearDownTest.pN60_launchpad.net_juju_core_worker_uniter_jujuc_test.ServerSuite

server_test.go:96:
    c.Assert(err, jc.Satisfies, os.IsNotExist)
... obtained *os.PathError = &os.PathError{Op:"open", Path:"/tmp/gocheck-8273290538659802269/0/test.sock", Err:0x6} ("open /tmp/gocheck-8273290538659802269/0/test.sock: no such device or address")
... func(T) bool func(error) bool = (func(error) bool)(0x7f31b9c8f110)

----------------------------------------------------------------------
PANIC: server_test.go:142: net_juju_core_worker_uniter_jujuc_test.TestBadCommandName.pN60_launchpad.net_juju_core_worker_uniter_jujuc_test.ServerSuite

... Panic: Fixture has panicked (see related PANIC)
OOPS: 32 passed, 1 FAILED, 7 MISSED
--- FAIL: TestPackage (0.25 seconds)
FAIL
FAIL launchpad.net/juju-core/worker/uniter/jujuc 2.490s

Revision history for this message
John A Meinel (jameinel) wrote :

This does appear to be an error reporting failure. However, we are using the OS functions provided (hopefully implemented correctly by gccgo).
We are doing an _, err = os.Open(path), and then expecting it to be os.IsNotFoundError(err) to be True.

Now on *my* machine errcode 0x6 is ENXIO which doesn't look like ENOENT to me.

Given the description here: http://www.baanboard.com/programmers_manual_baanerp_help_errors_6_ENXIO

Getting ENXIO sounds *really* strange (the device is not connected)? Is it possible that this is a failure because of how your VM is being set up?
Either that or GCCGO is mapping error codes incorrectly somehow.

Changed in juju-core:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

I think what is happening is that the socket is still there. Why, I don't understand as a test program does not seem to behave like this.

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :

Seems to be a gccgo bug with long ish socket paths: https://code.google.com/p/go/issues/detail?id=6829

Revision history for this message
Michael Hudson-Doyle (mwhudson) wrote :
Changed in juju-core:
status: Triaged → Fix Released
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.