Bug when running ngrok

Issue #22 invalid
Ram Rachum created an issue

I have a weird bug.

I'm trying to run a program called ngrok using sarge. It works great without sarge, but with sarge it fails, with a huge error output (over 100,000 lines), here's some of them:

sync.runtime_Semacquire(0x14b20a88)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/runtime/sema.goc:199 +0x33
sync.(*WaitGroup).Wait(0x14b24000)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/sync/waitgroup.go:127 +0x129
ngrok/client.(*Controller).doShutdown(0x12d52f00)
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:122 +0x16c
ngrok/client.func??007()
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:200 +0x36
created by ngrok/client.(*Controller).Run
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:203 +0x6a4

goroutine 26641 [semacquire]:
sync.runtime_Semacquire(0x1670a6f8)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/runtime/sema.goc:199 +0x33
sync.(*WaitGroup).Wait(0x166f1e40)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/sync/waitgroup.go:127 +0x129
ngrok/client.(*Controller).doShutdown(0x12d52f00)
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:122 +0x16c
ngrok/client.func??007()
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:200 +0x36
created by ngrok/client.(*Controller).Run
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:203 +0x6a4

goroutine 26638 [semacquire]:
sync.runtime_Semacquire(0x1670a530)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/runtime/sema.goc:199 +0x33
sync.(*WaitGroup).Wait(0x166f1de0)
    C:/Users/ADMINI~1/AppData/Local/Temp/2/makerelease529514319/go/src/pkg/sync/waitgroup.go:127 +0x129
ngrok/client.(*Controller).doShutdown(0x12d52f00)
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:122 +0x16c
ngrok/client.func??007()
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:200 +0x36
created by ngrok/client.(*Controller).Run
    /Users/aes/src/ngrok/src/ngrok/client/controller.go:203 +0x6a4

Any idea what this is and how to solve it?

Comments (3)

  1. Vinay Sajip repo owner

    I'm not sure this is a bug in sarge - the exceptions are all occurring in the ngrok subprocess. One guess is that the subprocess output is not being read fast enough, which could cause the output buffers in ngrok to fill up and lead to some concurrency bug there. Does it work if you use a conventional p = subprocess.Popen(...) followed by p.communicate()?

  2. Log in to comment