panic in juju worker

Bug #1496188 reported by Ali on 2015-09-16
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-core
Medium
Unassigned

Bug Description

Hi,

I have ran into a bug when running an action with agent-version 1.24.4 running on trusty.

panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x0 pc=0x6b6cca]

goroutine 32 [running]:
runtime.panic(0x18ac240, 0x3fcc3e8)
 /usr/lib/go/src/pkg/runtime/panic.c:266 +0xb6
github.com/juju/juju/worker/uniter.(*Uniter).runOperation(0xc2101f91c0, 0x0, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/uniter.go:410 +0xda
github.com/juju/juju/worker/uniter.continueAfter(0xc2101f91c0, 0x0, 0xe, 0x7f135dbc0c70, 0x1)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/modes.go:551 +0x31
github.com/juju/juju/worker/uniter.ModeContinue(0xc2101f91c0, 0x0, 0xc2101f7c00, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/modes.go:154 +0x761
github.com/juju/juju/worker/uniter.(*Uniter).loop(0xc2101f91c0, 0xc2101ef370, 0xb, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/uniter.go:179 +0x915
github.com/juju/juju/worker/uniter.func·024()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/uniter.go:119 +0x8e
created by github.com/juju/juju/worker/uniter.NewUniter
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/uniter.go:120 +0x1ba

goroutine 1 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2100b0c00, 0x3, 0xc2101d6be0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*runner).Wait(0xc2100b0c00, 0x1cb03a0, 0x3)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:122 +0x2e
main.(*UnitAgent).Run(0xc21019c1b0, 0xc21019a8c0, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/cmd/jujud/unit.go:142 +0x41b
github.com/juju/cmd.(*SuperCommand).Run(0xc2100613c0, 0xc21019a8c0, 0xc21019a8c0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/cmd/supercommand.go:428 +0x551
github.com/juju/cmd.Main(0x7f135dd77830, 0xc2100613c0, 0xc21019a8c0, 0xc21000a010, 0x6, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/cmd/cmd.go:247 +0x283
main.jujuDMain(0xc21000a000, 0x7, 0x7, 0xc21019a8c0, 0x3fe2701, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/cmd/jujud/main.go:143 +0x4a3
main.Main(0xc21000a000, 0x7, 0x7)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/cmd/jujud/main.go:166 +0x224
main.main()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/cmd/jujud/main_nix.go:13 +0x44

goroutine 3 [syscall]:
os/signal.loop()
 /usr/lib/go/src/pkg/os/signal/signal_unix.go:21 +0x1e
created by os/signal.init·1
 /usr/lib/go/src/pkg/os/signal/signal_unix.go:27 +0x31

goroutine 16 [finalizer wait]:
runtime.park(0x415c00, 0x3fd2a20, 0x3fce4a8)
 /usr/lib/go/src/pkg/runtime/proc.c:1342 +0x66
runfinq()
 /usr/lib/go/src/pkg/runtime/mgc0.c:2279 +0x84
runtime.goexit()
 /usr/lib/go/src/pkg/runtime/proc.c:1394

goroutine 18 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101f70c0, 0x7f135dbe6ef0, 0x7f135dbe8e50)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*runner).Wait(0xc2101f70c0, 0x5, 0x1)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:122 +0x2e
github.com/juju/juju/cmd/jujud/util.(*CloseWorker).Wait(0xc2101f5b10, 0xc2100b0de0, 0x1cb03a0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/cmd/jujud/util/util.go:215 +0x2f
github.com/juju/juju/worker.(*runner).runWorker(0xc2100b0c00, 0x0, 0x1cb03a0, 0x3, 0xc2101d6be0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 17 [select]:
github.com/juju/juju/worker.(*runner).run(0xc2100b0c00, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:160 +0xe34
github.com/juju/juju/worker.func·005()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:84 +0x54
created by github.com/juju/juju/worker.NewRunner
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:85 +0x133

goroutine 22 [IO wait]:
net.runtime_pollWait(0x7f135dd78fb8, 0x72, 0x0)
 /usr/lib/go/src/pkg/runtime/netpoll.goc:116 +0x6a
net.(*pollDesc).Wait(0xc2100afe60, 0x72, 0x7f135dd70298, 0xb)
 /usr/lib/go/src/pkg/net/fd_poll_runtime.go:81 +0x34
net.(*pollDesc).WaitRead(0xc2100afe60, 0xb, 0x7f135dd70298)
 /usr/lib/go/src/pkg/net/fd_poll_runtime.go:86 +0x30
net.(*netFD).Read(0xc2100afe00, 0xc210108000, 0x2000, 0x2000, 0x0, ...)
 /usr/lib/go/src/pkg/net/fd_unix.go:204 +0x2a0
net.(*conn).Read(0xc2101d35b8, 0xc210108000, 0x2000, 0x2000, 0x150, ...)
 /usr/lib/go/src/pkg/net/net.go:122 +0xc5
crypto/tls.(*block).readFromUntil(0xc2101d7b40, 0x7f135dd79088, 0xc2101d35b8, 0x5, 0xc2101d35b8, ...)
 /usr/lib/go/src/pkg/crypto/tls/conn.go:459 +0xb6
crypto/tls.(*Conn).readRecord(0xc21009dc80, 0x17, 0x0, 0x0)
 /usr/lib/go/src/pkg/crypto/tls/conn.go:539 +0x107
crypto/tls.(*Conn).Read(0xc21009dc80, 0xc2101e2000, 0x1000, 0x1000, 0x0, ...)
 /usr/lib/go/src/pkg/crypto/tls/conn.go:897 +0x135
bufio.(*Reader).fill(0xc2101d8840)
 /usr/lib/go/src/pkg/bufio/bufio.go:91 +0x110
bufio.(*Reader).ReadByte(0xc2101d8840, 0xc210230640, 0x0, 0x0)
 /usr/lib/go/src/pkg/bufio/bufio.go:183 +0x7f
golang.org/x/net/websocket.hybiFrameReaderFactory.NewFrameReader(0xc2101d8840, 0x7f135dd79740, 0xc210230640, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/golang.org/x/net/websocket/hybi.go:126 +0xc6
golang.org/x/net/websocket.Codec.Receive(0x2298f68, 0x2298f70, 0xc2101e0e10, 0x12f22c0, 0xc2100a3b00, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/golang.org/x/net/websocket/websocket.go:315 +0x168
github.com/juju/juju/rpc/jsoncodec.wsJSONConn.Receive(0xc2101e0e10, 0x12f22c0, 0xc2100a3b00, 0x0, 0x7f135c475ce8)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/jsoncodec/conn.go:25 +0x55
github.com/juju/juju/rpc/jsoncodec.(*Codec).ReadHeader(0xc2100a3b00, 0xc2101d8a80, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/jsoncodec/codec.go:115 +0x5e4
github.com/juju/juju/rpc.(*Conn).loop(0xc2101c4d20, 0x101d9810, 0xc21009a5a0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/server.go:408 +0x8a
github.com/juju/juju/rpc.(*Conn).input(0xc2101c4d20)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/server.go:381 +0x32
created by github.com/juju/juju/rpc.(*Conn).Start
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/server.go:211 +0xaa

goroutine 23 [select]:
github.com/juju/juju/api.(*State).heartbeatMonitor(0xc2101cc300)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:353 +0xed
created by github.com/juju/juju/api.open
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:183 +0x395

goroutine 24 [select]:
github.com/juju/juju/worker.(*runner).run(0xc2101f70c0, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:160 +0xe34
github.com/juju/juju/worker.func·005()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:84 +0x54
created by github.com/juju/juju/worker.NewRunner
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:85 +0x133

goroutine 25 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2100967c0, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*notifyWorker).Wait(0xc2100967c0, 0xc2101f7240, 0x1d23770)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:67 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1d23770, 0xc, 0xc2101ef570)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 26 [select]:
github.com/juju/juju/worker.(*notifyWorker).loop(0xc2100967c0, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:95 +0x31f
github.com/juju/juju/worker.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:55 +0x54
created by github.com/juju/juju/worker.NewNotifyWorker
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:56 +0xa1

goroutine 27 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101e87e0, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker/upgrader.(*Upgrader).Wait(0xc2101e87e0, 0xc2101f7240, 0x1d30390)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/upgrader/upgrader.go:79 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1d30390, 0x8, 0xc2101f2960)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 28 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101fc040, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*notifyWorker).Wait(0xc2101fc040, 0xc2101f7240, 0x1cb8180)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:67 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1cb8180, 0x6, 0xc2101f2980)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 29 [select]:
github.com/juju/juju/worker/upgrader.(*Upgrader).loop(0xc2101e87e0, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/upgrader/upgrader.go:138 +0xcb8
github.com/juju/juju/worker/upgrader.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/upgrader/upgrader.go:67 +0x54
created by github.com/juju/juju/worker/upgrader.NewAgentUpgrader
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/upgrader/upgrader.go:68 +0x148

goroutine 30 [select]:
github.com/juju/juju/worker.(*notifyWorker).loop(0xc2101fc040, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:95 +0x31f
github.com/juju/juju/worker.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:55 +0x54
created by github.com/juju/juju/worker.NewNotifyWorker
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:56 +0xa1

goroutine 31 [runnable]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101f91c0, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker/uniter.(*Uniter).Wait(0xc2101f91c0, 0xc2101f7240, 0x1cc0080)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/uniter/uniter.go:306 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1cc0080, 0x6, 0xc2101f56f0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 33 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101fc500, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*notifyWorker).Wait(0xc2101fc500, 0xc2101f7240, 0x1dbe710)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:67 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1dbe710, 0x11, 0xc2101f2ce0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 34 [chan receive]:
launchpad.net/tomb.(*Tomb).Wait(0xc2101fc580, 0x6d3f3f, 0x6d3f3f)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/launchpad.net/tomb/tomb.go:110 +0x42
github.com/juju/juju/worker.(*notifyWorker).Wait(0xc2101fc580, 0xc2101f7240, 0x1cbcd60)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:67 +0x2e
github.com/juju/juju/worker.(*runner).runWorker(0xc2101f70c0, 0x0, 0x1cbcd60, 0x7, 0xc2101f2d00)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:273 +0x3f3
created by github.com/juju/juju/worker.(*runner).run
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/runner.go:177 +0x36e

goroutine 36 [select]:
github.com/juju/juju/worker.(*notifyWorker).loop(0xc2101fc500, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:95 +0x31f
github.com/juju/juju/worker.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:55 +0x54
created by github.com/juju/juju/worker.NewNotifyWorker
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:56 +0xa1

goroutine 37 [select]:
github.com/juju/juju/worker.(*notifyWorker).loop(0xc2101fc580, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:95 +0x31f
github.com/juju/juju/worker.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:55 +0x54
created by github.com/juju/juju/worker.NewNotifyWorker
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/worker/notifyworker.go:56 +0xa1

goroutine 38 [chan receive]:
github.com/juju/juju/api/watcher.(*notifyWatcher).loop(0xc2100938c0, 0x0, 0x31)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:171 +0x113
github.com/juju/juju/api/watcher.func·004()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:151 +0x7b
created by github.com/juju/juju/api/watcher.NewNotifyWatcher
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:152 +0xe2

goroutine 39 [chan receive]:
github.com/juju/juju/api/watcher.(*notifyWatcher).loop(0xc210093930, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:171 +0x113
github.com/juju/juju/api/watcher.func·004()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:151 +0x7b
created by github.com/juju/juju/api/watcher.NewNotifyWatcher
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:152 +0xe2

goroutine 40 [semacquire]:
sync.runtime_Semacquire(0xc2101edde8)
 /usr/lib/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc21011b800)
 /usr/lib/go/src/pkg/sync/waitgroup.go:127 +0x14b
github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop(0xc2100938c0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:119 +0x114
created by github.com/juju/juju/api/watcher.(*notifyWatcher).loop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:161 +0xa7

goroutine 41 [semacquire]:
sync.runtime_Semacquire(0xc2101ede28)
 /usr/lib/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc21011b8c0)
 /usr/lib/go/src/pkg/sync/waitgroup.go:127 +0x14b
github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop(0xc210093930)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:119 +0x114
created by github.com/juju/juju/api/watcher.(*notifyWatcher).loop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:161 +0xa7

goroutine 42 [chan receive]:
github.com/juju/juju/api/watcher.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:82 +0x74
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:86 +0xb7

goroutine 43 [chan receive]:
github.com/juju/juju/rpc.(*Conn).Call(0xc2101c4d20, 0x1cea570, 0xd, 0x0, 0xc2101edd48, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/client.go:148 +0xb5
github.com/juju/juju/api.(*State).APICall(0xc2101cc300, 0x1cea570, 0xd, 0x0, 0xc2101edd48, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:375 +0x115
github.com/juju/juju/api/watcher.func·001(0x1ca7c40, 0x4, 0x1301b00, 0xc210120080, 0x0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:49 +0xec
github.com/juju/juju/api/watcher.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:95 +0xb6
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:118 +0x104

goroutine 44 [chan receive]:
github.com/juju/juju/api/watcher.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:82 +0x74
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:86 +0xb7

goroutine 45 [chan receive]:
github.com/juju/juju/rpc.(*Conn).Call(0xc2101c4d20, 0x1cea570, 0xd, 0x0, 0xc2101eddb0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/client.go:148 +0xb5
github.com/juju/juju/api.(*State).APICall(0xc2101cc300, 0x1cea570, 0xd, 0x0, 0xc2101eddb0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:375 +0x115
github.com/juju/juju/api/watcher.func·001(0x1ca7c40, 0x4, 0x1301b00, 0xc2101200f0, 0x0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:49 +0xec
github.com/juju/juju/api/watcher.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:95 +0xb6
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:118 +0x104

goroutine 46 [chan receive]:
github.com/juju/juju/api/watcher.(*notifyWatcher).loop(0xc210093d90, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:171 +0x113
github.com/juju/juju/api/watcher.func·004()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:151 +0x7b
created by github.com/juju/juju/api/watcher.NewNotifyWatcher
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:152 +0xe2

goroutine 47 [semacquire]:
sync.runtime_Semacquire(0xc2101edf48)
 /usr/lib/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc21011ba00)
 /usr/lib/go/src/pkg/sync/waitgroup.go:127 +0x14b
github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop(0xc210093d90)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:119 +0x114
created by github.com/juju/juju/api/watcher.(*notifyWatcher).loop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:161 +0xa7

goroutine 48 [chan receive]:
github.com/juju/juju/api/watcher.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:82 +0x74
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:86 +0xb7

goroutine 49 [chan receive]:
github.com/juju/juju/rpc.(*Conn).Call(0xc2101c4d20, 0x1cea570, 0xd, 0x0, 0xc2101edf20, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/client.go:148 +0xb5
github.com/juju/juju/api.(*State).APICall(0xc2101cc300, 0x1cea570, 0xd, 0x0, 0xc2101edf20, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:375 +0x115
github.com/juju/juju/api/watcher.func·001(0x1ca7c40, 0x4, 0x1301b00, 0xc2101202b0, 0x0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:49 +0xec
github.com/juju/juju/api/watcher.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:95 +0xb6
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:118 +0x104

goroutine 50 [chan receive]:
github.com/juju/juju/api/watcher.(*notifyWatcher).loop(0xc210090d20, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:171 +0x113
github.com/juju/juju/api/watcher.func·004()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:151 +0x7b
created by github.com/juju/juju/api/watcher.NewNotifyWatcher
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:152 +0xe2

goroutine 51 [chan receive]:
github.com/juju/juju/api/watcher.(*notifyWatcher).loop(0xc210090d90, 0x0, 0x0)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:171 +0x113
github.com/juju/juju/api/watcher.func·004()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:151 +0x7b
created by github.com/juju/juju/api/watcher.NewNotifyWatcher
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:152 +0xe2

goroutine 52 [semacquire]:
sync.runtime_Semacquire(0xc210127370)
 /usr/lib/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc210131300)
 /usr/lib/go/src/pkg/sync/waitgroup.go:127 +0x14b
github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop(0xc210090d20)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:119 +0x114
created by github.com/juju/juju/api/watcher.(*notifyWatcher).loop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:161 +0xa7

goroutine 53 [semacquire]:
sync.runtime_Semacquire(0xc2101273b0)
 /usr/lib/go/src/pkg/runtime/sema.goc:199 +0x30
sync.(*WaitGroup).Wait(0xc2101313c0)
 /usr/lib/go/src/pkg/sync/waitgroup.go:127 +0x14b
github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop(0xc210090d90)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:119 +0x114
created by github.com/juju/juju/api/watcher.(*notifyWatcher).loop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:161 +0xa7

goroutine 54 [chan receive]:
github.com/juju/juju/api/watcher.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:82 +0x74
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:86 +0xb7

goroutine 55 [chan receive]:
github.com/juju/juju/rpc.(*Conn).Call(0xc2101c4d20, 0x1cea570, 0xd, 0x0, 0xc2101272d0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/client.go:148 +0xb5
github.com/juju/juju/api.(*State).APICall(0xc2101cc300, 0x1cea570, 0xd, 0x0, 0xc2101272d0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:375 +0x115
github.com/juju/juju/api/watcher.func·001(0x1ca7c40, 0x4, 0x1301b00, 0xc210120ec0, 0x0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:49 +0xec
github.com/juju/juju/api/watcher.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:95 +0xb6
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:118 +0x104

goroutine 56 [chan receive]:
github.com/juju/juju/api/watcher.func·002()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:82 +0x74
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:86 +0xb7

goroutine 57 [chan receive]:
github.com/juju/juju/rpc.(*Conn).Call(0xc2101c4d20, 0x1cea570, 0xd, 0x0, 0xc210127338, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/rpc/client.go:148 +0xb5
github.com/juju/juju/api.(*State).APICall(0xc2101cc300, 0x1cea570, 0xd, 0x0, 0xc210127338, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/apiclient.go:375 +0x115
github.com/juju/juju/api/watcher.func·001(0x1ca7c40, 0x4, 0x1301b00, 0xc210120f30, 0x0, ...)
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:49 +0xec
github.com/juju/juju/api/watcher.func·003()
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:95 +0xb6
created by github.com/juju/juju/api/watcher.(*commonWatcher).commonLoop
 /build/juju-core-wpCXFS/juju-core-1.24.4/src/github.com/juju/juju/api/watcher/watcher.go:118 +0x104

Curtis Hovey (sinzui) on 2015-09-16
Changed in juju-core:
status: New → Triaged
tags: added: panic
Changed in juju-core:
importance: Undecided → Medium
Ali (asaidi) wrote :

This is still present in 1.24.7 and can be replicated by starting a long-running action on a unit and then power cycling the unit. When the unit comes back online the above panic/null pointer dereference will occur when trying to re-run the failed action. upstart/systemd will try to restart the service continously.

At this point the only way to recover seems to forcibly remove the machine from juju and re-add it.

Changed in juju-core:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers