Skip to content
This repository has been archived by the owner on Mar 13, 2021. It is now read-only.

Deadlock in github.com/projectriff/riff/pkg/k8s.TestWaitUntilReady #68

Closed
scothis opened this issue Jun 12, 2019 · 1 comment · Fixed by #144
Closed

Deadlock in github.com/projectriff/riff/pkg/k8s.TestWaitUntilReady #68

scothis opened this issue Jun 12, 2019 · 1 comment · Fixed by #144

Comments

@scothis
Copy link
Member

scothis commented Jun 12, 2019

https://dev.azure.com/projectriff/projectriff/_build/results?buildId=1511&view=logs&jobId=2ccaf87a-3ada-5e59-2fbc-52fdec550bf7&taskId=082b1770-da04-54e1-54f6-77a04cd03fbe&lineStart=266&lineEnd=267&colStart=1&colEnd=1

2019-06-12T12:23:55.6514040Z === RUN   TestWaitUntilReady/transitions_true
2019-06-12T12:23:55.6514370Z SIGQUIT: quit
2019-06-12T12:23:55.6514590Z PC=0x7fff645bfa16 m=0 sigcode=0
2019-06-12T12:23:55.6514770Z 
2019-06-12T12:23:55.6515110Z goroutine 0 [idle]:
2019-06-12T12:23:55.6515370Z runtime.pthread_cond_wait(0x3fe4cc8, 0x3fe4c88, 0x7ffe00000000)
2019-06-12T12:23:55.6515860Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/sys_darwin.go:357 +0x3b
2019-06-12T12:23:55.6516170Z runtime.semasleep(0xffffffffffffffff, 0x0)
2019-06-12T12:23:55.6516380Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/os_darwin.go:63 +0x85
2019-06-12T12:23:55.6516700Z runtime.notesleep(0x3fe4a88)
2019-06-12T12:23:55.6517310Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/lock_sema.go:167 +0xe0
2019-06-12T12:23:55.6517620Z runtime.stopm()
2019-06-12T12:23:55.6518110Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/proc.go:1936 +0xc1
2019-06-12T12:23:55.6518730Z runtime.findrunnable(0xc000052a00, 0x0)
2019-06-12T12:23:55.6519010Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/proc.go:2399 +0x530
2019-06-12T12:23:55.6519350Z runtime.schedule()
2019-06-12T12:23:55.6519620Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/proc.go:2525 +0x20e
2019-06-12T12:23:55.6519870Z runtime.park_m(0xc00008a480)
2019-06-12T12:23:55.6520220Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/proc.go:2605 +0xa1
2019-06-12T12:23:55.6520470Z runtime.mcall(0x1094c9b)
2019-06-12T12:23:55.6520810Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/asm_amd64.s:299 +0x5b
2019-06-12T12:23:55.6521060Z 
2019-06-12T12:23:55.6521290Z goroutine 1 [chan receive, 9 minutes]:
2019-06-12T12:23:55.6521640Z testing.(*T).Run(0xc000634000, 0x2c5512a, 0x12, 0x2cdf1d8, 0x1)
2019-06-12T12:23:55.6521900Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:917 +0x6d2
2019-06-12T12:23:55.6522240Z testing.runTests.func1(0xc000634000)
2019-06-12T12:23:55.6522520Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:1157 +0xa9
2019-06-12T12:23:55.6522860Z testing.tRunner(0xc000634000, 0xc0005f9d48)
2019-06-12T12:23:55.6523130Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:865 +0x164
2019-06-12T12:23:55.6523390Z testing.runTests(0xc0000cc260, 0x3fcbe80, 0x2, 0x2, 0x0)
2019-06-12T12:23:55.6523750Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:1155 +0x524
2019-06-12T12:23:55.6524000Z testing.(*M).Run(0xc000155b00, 0x0)
2019-06-12T12:23:55.6524330Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:1072 +0x2ec
2019-06-12T12:23:55.6524600Z main.main()
2019-06-12T12:23:55.6524930Z 	_testmain.go:96 +0x335
2019-06-12T12:23:55.6525190Z 
2019-06-12T12:23:55.6525420Z goroutine 19 [chan receive]:
2019-06-12T12:23:55.6525760Z github.com/golang/glog.(*loggingT).flushDaemon(0x3fe3740)
2019-06-12T12:23:55.6526030Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/github.com/golang/glog/glog.go:882 +0xae
2019-06-12T12:23:55.6526400Z created by github.com/golang/glog.init.0
2019-06-12T12:23:55.6526670Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/github.com/golang/glog/glog.go:410 +0x31d
2019-06-12T12:23:55.6526910Z 
2019-06-12T12:23:55.6527250Z goroutine 5 [runnable]:
2019-06-12T12:23:55.6527500Z sync.(*RWMutex).Lock(0x4001650)
2019-06-12T12:23:55.6527840Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/sync/rwmutex.go:87 +0xea
2019-06-12T12:23:55.6528120Z go.opencensus.io/stats/view.(*worker).reportView(0xc00012c0f0, 0xc00012a6c0, 0xbf385996e3efebb0, 0x8bba205a41, 0x3fe3480)
2019-06-12T12:23:55.6528480Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/go.opencensus.io/stats/view/worker.go:231 +0x354
2019-06-12T12:23:55.6528780Z go.opencensus.io/stats/view.(*worker).reportUsage(0xc00012c0f0, 0xbf385996e3efebb0, 0x8bba205a41, 0x3fe3480)
2019-06-12T12:23:55.6529260Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/go.opencensus.io/stats/view/worker.go:240 +0x11a
2019-06-12T12:23:55.6529590Z go.opencensus.io/stats/view.(*worker).start(0xc00012c0f0)
2019-06-12T12:23:55.6529860Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/go.opencensus.io/stats/view/worker.go:158 +0x21d
2019-06-12T12:23:55.6530330Z created by go.opencensus.io/stats/view.init.0
2019-06-12T12:23:55.6530590Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/go.opencensus.io/stats/view/worker.go:32 +0x9a
2019-06-12T12:23:55.6531000Z 
2019-06-12T12:23:55.6531290Z goroutine 8 [chan receive, 10 minutes]:
2019-06-12T12:23:55.6531680Z testing.(*T).Run(0xc000634500, 0x2c53103, 0x10, 0xc000692040, 0x2)
2019-06-12T12:23:55.6532010Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:917 +0x6d2
2019-06-12T12:23:55.6532570Z github.com/projectriff/riff/pkg/k8s_test.TestWaitUntilReady(0xc000634500)
2019-06-12T12:23:55.6533000Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/pkg/k8s/wait_test.go:95 +0xe25
2019-06-12T12:23:55.6533300Z testing.tRunner(0xc000634500, 0x2cdf1d8)
2019-06-12T12:23:55.6533920Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:865 +0x164
2019-06-12T12:23:55.6534250Z created by testing.(*T).Run
2019-06-12T12:23:55.6534640Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:916 +0x69a
2019-06-12T12:23:55.6534940Z 
2019-06-12T12:23:55.6535220Z goroutine 6 [syscall, 10 minutes]:
2019-06-12T12:23:55.6535590Z os/signal.signal_recv(0x1096e41)
2019-06-12T12:23:55.6535900Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/sigqueue.go:139 +0x9f
2019-06-12T12:23:55.6536300Z os/signal.loop()
2019-06-12T12:23:55.6536620Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/os/signal/signal_unix.go:23 +0x30
2019-06-12T12:23:55.6536920Z created by os/signal.init.0
2019-06-12T12:23:55.6537340Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/os/signal/signal_unix.go:29 +0x4f
2019-06-12T12:23:55.6537610Z 
2019-06-12T12:23:55.6537990Z goroutine 22 [chan receive, 9 minutes]:
2019-06-12T12:23:55.6538310Z github.com/projectriff/riff/pkg/k8s_test.TestWaitUntilReady.func1(0xc000690100)
2019-06-12T12:23:55.6538620Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/pkg/k8s/wait_test.go:112 +0x3b3
2019-06-12T12:23:55.6539030Z testing.tRunner(0xc000690100, 0xc000692040)
2019-06-12T12:23:55.6539330Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:865 +0x164
2019-06-12T12:23:55.6539710Z created by testing.(*T).Run
2019-06-12T12:23:55.6540020Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/testing/testing.go:916 +0x69a
2019-06-12T12:23:55.6540370Z 
2019-06-12T12:23:55.6540680Z goroutine 35 [chan receive, 9 minutes]:
2019-06-12T12:23:55.6541660Z k8s.io/client-go/tools/cache.(*controller).Run.func1(0xc00079e060, 0xc0007ac000)
2019-06-12T12:23:55.6542770Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/controller.go:103 +0x42
2019-06-12T12:23:55.6543750Z created by k8s.io/client-go/tools/cache.(*controller).Run
2019-06-12T12:23:55.6544840Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/controller.go:102 +0xa3
2019-06-12T12:23:55.6545180Z 
2019-06-12T12:23:55.6545550Z goroutine 24 [select, 9 minutes]:
2019-06-12T12:23:55.6546500Z k8s.io/client-go/tools/watch.UntilWithoutRetry(0x2fe0f00, 0xc00069c090, 0x2fb7900, 0xc00079a020, 0xc000686f20, 0x1, 0x1, 0x0, 0x0, 0x0)
2019-06-12T12:23:55.6547500Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/watch/until.go:75 +0x1c2
2019-06-12T12:23:55.6549230Z k8s.io/client-go/tools/watch.UntilWithSync(0x2fe0f00, 0xc00069c090, 0x2fb8680, 0xc000694180, 0x2fb32c0, 0xc0000c24e0, 0x0, 0xc000686f20, 0x1, 0x1, ...)
2019-06-12T12:23:55.6550480Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/watch/until.go:131 +0x165
2019-06-12T12:23:55.6550900Z github.com/projectriff/riff/pkg/k8s.WaitUntilReady(0x2fe0f00, 0xc00069c090, 0x30039a0, 0x0, 0x2c4dda9, 0xc, 0x3033b40, 0xc0000c24e0, 0x0, 0x0)
2019-06-12T12:23:55.6551240Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/pkg/k8s/wait.go:46 +0x1a7
2019-06-12T12:23:55.6551500Z github.com/projectriff/riff/pkg/k8s_test.TestWaitUntilReady.func1.1(0xc000764720, 0x2fe0f00, 0xc00069c090, 0xc0007499c0, 0xc0000c24e0)
2019-06-12T12:23:55.6551800Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/pkg/k8s/wait_test.go:103 +0x10f
2019-06-12T12:23:55.6552040Z created by github.com/projectriff/riff/pkg/k8s_test.TestWaitUntilReady.func1
2019-06-12T12:23:55.6552240Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/pkg/k8s/wait_test.go:102 +0x2ab
2019-06-12T12:23:55.6552540Z 
2019-06-12T12:23:55.6552800Z goroutine 54 [sync.Cond.Wait, 9 minutes]:
2019-06-12T12:23:55.6553110Z runtime.goparkunlock(...)
2019-06-12T12:23:55.6553330Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/proc.go:307
2019-06-12T12:23:55.6553910Z sync.runtime_notifyListWait(0xc0007aa028, 0x0)
2019-06-12T12:23:55.6554250Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/sema.go:510 +0xf9
2019-06-12T12:23:55.6554450Z sync.(*Cond).Wait(0xc0007aa018)
2019-06-12T12:23:55.6554980Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/sync/cond.go:56 +0x8e
2019-06-12T12:23:55.6555870Z k8s.io/client-go/tools/cache.(*DeltaFIFO).Pop(0xc0007aa000, 0xc0007a60f0, 0x0, 0x0, 0x0, 0x0)
2019-06-12T12:23:55.6556980Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/delta_fifo.go:431 +0xaa
2019-06-12T12:23:55.6557930Z k8s.io/client-go/tools/cache.(*controller).processLoop(0xc0007ac000)
2019-06-12T12:23:55.6558990Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/controller.go:150 +0x84
2019-06-12T12:23:55.6559310Z k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1(0xc000645f88)
2019-06-12T12:23:55.6559680Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133 +0x62
2019-06-12T12:23:55.6560000Z k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc000073f88, 0x3b9aca00, 0x0, 0xc0000c2401, 0xc00079e060)
2019-06-12T12:23:55.6560360Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134 +0x109
2019-06-12T12:23:55.6560660Z k8s.io/apimachinery/pkg/util/wait.Until(...)
2019-06-12T12:23:55.6560870Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88
2019-06-12T12:23:55.6561900Z k8s.io/client-go/tools/cache.(*controller).Run(0xc0007ac000, 0xc00079e060)
2019-06-12T12:23:55.6562870Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/controller.go:124 +0x447
2019-06-12T12:23:55.6564100Z k8s.io/client-go/tools/watch.NewIndexerInformerWatcher.func4(0x2fda500, 0xc0007ac000, 0xc00079a020)
2019-06-12T12:23:55.6568090Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/watch/informerwatcher.go:110 +0x62
2019-06-12T12:23:55.6569140Z created by k8s.io/client-go/tools/watch.NewIndexerInformerWatcher
2019-06-12T12:23:55.6570130Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/watch/informerwatcher.go:109 +0x648
2019-06-12T12:23:55.6570560Z 
2019-06-12T12:23:55.6570840Z goroutine 9 [semacquire, 9 minutes]:
2019-06-12T12:23:55.6571100Z sync.runtime_SemacquireMutex(0xc00069418c, 0x0)
2019-06-12T12:23:55.6571660Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/runtime/sema.go:71 +0x3d
2019-06-12T12:23:55.6571890Z sync.(*RWMutex).RLock(0xc000694180)
2019-06-12T12:23:55.6572230Z 	/Users/vsts/hostedtoolcache/go/1.12.0/x64/src/sync/rwmutex.go:50 +0x9c
2019-06-12T12:23:55.6573190Z k8s.io/client-go/tools/cache/testing.(*FakeControllerSource).List(0xc000694180, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
2019-06-12T12:23:55.6574280Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/testing/fake_controller_source.go:162 +0x52
2019-06-12T12:23:55.6575270Z k8s.io/client-go/tools/cache.(*Reflector).ListAndWatch(0xc000632140, 0xc00079e060, 0x0, 0x0)
2019-06-12T12:23:55.6576330Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/reflector.go:178 +0x2c7
2019-06-12T12:23:55.6577260Z k8s.io/client-go/tools/cache.(*Reflector).Run.func1()
2019-06-12T12:23:55.6578400Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/reflector.go:133 +0x4b
2019-06-12T12:23:55.6578770Z k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1(0xc000136f08)
2019-06-12T12:23:55.6579050Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133 +0x62
2019-06-12T12:23:55.6579440Z k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc0007baf08, 0x3b9aca00, 0x0, 0x1, 0xc00079e060)
2019-06-12T12:23:55.6579710Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134 +0x109
2019-06-12T12:23:55.6581860Z k8s.io/apimachinery/pkg/util/wait.Until(...)
2019-06-12T12:23:55.6582180Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88
2019-06-12T12:23:55.6583260Z k8s.io/client-go/tools/cache.(*Reflector).Run(0xc000632140, 0xc00079e060)
2019-06-12T12:23:55.6595180Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/client-go/tools/cache/reflector.go:132 +0x1dd
2019-06-12T12:23:55.6595690Z k8s.io/apimachinery/pkg/util/wait.(*Group).StartWithChannel.func1()
2019-06-12T12:23:55.6596030Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:54 +0x46
2019-06-12T12:23:55.6596440Z k8s.io/apimachinery/pkg/util/wait.(*Group).Start.func1(0xc000670020, 0xc0007a0080)
2019-06-12T12:23:55.6596790Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:71 +0x5d
2019-06-12T12:23:55.6597190Z created by k8s.io/apimachinery/pkg/util/wait.(*Group).Start
2019-06-12T12:23:55.6597540Z 	/Users/vsts/agent/2.152.1/work/1/s/projectriff/riff/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:69 +0x70
2019-06-12T12:23:55.6597830Z 
2019-06-12T12:23:55.6598230Z rax    0x0
2019-06-12T12:23:55.6598520Z rbx    0x3700
2019-06-12T12:23:55.6599000Z rcx    0x7ffeefbfdb48
2019-06-12T12:23:55.6599330Z rdx    0x0
2019-06-12T12:23:55.6599620Z rdi    0x3fe4cc8
2019-06-12T12:23:55.6600010Z rsi    0x370100003800
2019-06-12T12:23:55.6600320Z rbp    0x7ffeefbfdbe0
2019-06-12T12:23:55.6600710Z rsp    0x7ffeefbfdb48
2019-06-12T12:23:55.6601030Z r8     0x0
2019-06-12T12:23:55.6601460Z r9     0x60
2019-06-12T12:23:55.6601860Z r10    0x0
2019-06-12T12:23:55.6602080Z r11    0x202
2019-06-12T12:23:55.6602440Z r12    0x3fe4cc8
2019-06-12T12:23:55.6602760Z r13    0x7ffeefbfdb68
2019-06-12T12:23:55.6603010Z r14    0x1
2019-06-12T12:23:55.6603390Z r15    0x7fff9cb91380
2019-06-12T12:23:55.6603720Z rip    0x7fff645bfa16
2019-06-12T12:23:55.6604100Z rflags 0x202
2019-06-12T12:23:55.6604430Z cs     0x7
2019-06-12T12:23:55.6604720Z fs     0x0
2019-06-12T12:23:55.6605090Z gs     0x0
2019-06-12T12:23:55.6605410Z *** Test killed with quit: ran too long (10m0s).
2019-06-12T12:23:55.6605800Z FAIL	github.com/projectriff/riff/pkg/k8s	600.185s
@scothis scothis transferred this issue from projectriff/riff Aug 15, 2019
ekcasey added a commit to ekcasey/cli that referenced this issue Dec 2, 2019
* dont shutdown ListerWatcher until after WaitUntilReady complets
* Fixes projectriff#68

Signed-off-by: Emily Casey <ecasey@pivotal.io>
@scothis scothis reopened this Dec 3, 2019
@scothis
Copy link
Member Author

scothis commented Dec 3, 2019

This issue is fixed, there's a different deadlock I was thinking of.

@scothis scothis closed this as completed Dec 3, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant