That's bad results :(.
I will look into it but I am running into a nil pointer dereference when trying to run tests:
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x1 pc=0x80cb35c]
goroutine 22 [running]:
sync/atomic.AddUint64(0x18601014, 0x1, 0x0, 0x1, 0x83bba20)
/usr/local/go/src/sync/atomic/asm_386.s:118 +0xc
goroutine 1 [chan receive]:
testing.RunTests(0x82fbb18, 0x83ba0a0, 0x19, 0x19, 0x18634301)
/usr/local/go/src/testing/testing.go:556 +0x89f
testing.(*M).Run(0x18634000, 0x83c19e0)
/usr/local/go/src/testing/testing.go:485 +0x5e
main.main()
goroutine 21 [sleep]:
testing.tRunner(0x18642180, 0x83ba0b8)
/usr/local/go/src/testing/testing.go:447 +0xb1
created by testing.RunTests
/usr/local/go/src/testing/testing.go:555 +0x863
goroutine 12 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 9 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 14 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 16 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 18 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 20 [sleep]:
github.com/valyala/gorpc.func·006()
goroutine 23 [select]:
goroutine 24 [select]:
goroutine 25 [select]:
goroutine 27 [IO wait]:
net.(*pollDesc).Wait(0x18648278, 0x77, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:84 +0x42
net.(*pollDesc).WaitWrite(0x18648278, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:93 +0x40
net.(*netFD).connect(0x18648240, 0x0, 0x0, 0xb7517090, 0x18637400, 0xcc973afb, 0xe, 0x594127f, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:114 +0x21c
net.(*netFD).dial(0x18648240, 0xb7516020, 0x0, 0xb7516020, 0x18636f40, 0xcc973afb, 0xe, 0x594127f, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/sock_posix.go:139 +0x2c6
net.socket(0x8285980, 0x3, 0x2, 0x1, 0x0, 0x18636f00, 0xb7516020, 0x0, 0xb7516020, 0x18636f40, ...)
/usr/local/go/src/net/sock_posix.go:91 +0x346
net.internetSocket(0x8285980, 0x3, 0xb7516020, 0x0, 0xb7516020, 0x18636f40, 0xcc973afb, 0xe, 0x594127f, 0x83bba20, ...)
/usr/local/go/src/net/ipsock_posix.go:137 +0xed
net.dialTCP(0x8285980, 0x3, 0x0, 0x18636f40, 0xcc973afb, 0xe, 0x594127f, 0x83bba20, 0x8063d1d, 0x0, ...)
/usr/local/go/src/net/tcpsock_posix.go:156 +0xfc
net.dialSingle(0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0xb7515fe0, 0x18636f40, 0xcc973afb, 0xe, ...)
/usr/local/go/src/net/dial.go:235 +0x35a
net.func·016(0xcc973afb, 0xe, 0x594127f, 0x83bba20, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:163 +0xd0
net.dial(0x8285980, 0x3, 0xb7515fe0, 0x18636f40, 0x18690f50, 0xcc973afb, 0xe, 0x594127f, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:40 +0x63
net.(*Dialer).Dial(0x83b9880, 0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:170 +0x3d8
github.com/valyala/gorpc.func·003()
goroutine 28 [IO wait]:
net.(*pollDesc).Wait(0x18648378, 0x77, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:84 +0x42
net.(*pollDesc).WaitWrite(0x18648378, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:93 +0x40
net.(*netFD).connect(0x18648340, 0x0, 0x0, 0xb7517090, 0x18637440, 0xcc973afb, 0xe, 0x598d446, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:114 +0x21c
net.(*netFD).dial(0x18648340, 0xb7516020, 0x0, 0xb7516020, 0x18637420, 0xcc973afb, 0xe, 0x598d446, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/sock_posix.go:139 +0x2c6
net.socket(0x8285980, 0x3, 0x2, 0x1, 0x0, 0x18637400, 0xb7516020, 0x0, 0xb7516020, 0x18637420, ...)
/usr/local/go/src/net/sock_posix.go:91 +0x346
net.internetSocket(0x8285980, 0x3, 0xb7516020, 0x0, 0xb7516020, 0x18637420, 0xcc973afb, 0xe, 0x598d446, 0x83bba20, ...)
/usr/local/go/src/net/ipsock_posix.go:137 +0xed
net.dialTCP(0x8285980, 0x3, 0x0, 0x18637420, 0xcc973afb, 0xe, 0x598d446, 0x83bba20, 0x8063d1d, 0x0, ...)
/usr/local/go/src/net/tcpsock_posix.go:156 +0xfc
net.dialSingle(0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0xb7515fe0, 0x18637420, 0xcc973afb, 0xe, ...)
/usr/local/go/src/net/dial.go:235 +0x35a
net.func·016(0xcc973afb, 0xe, 0x598d446, 0x83bba20, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:163 +0xd0
net.dial(0x8285980, 0x3, 0xb7515fe0, 0x18637420, 0x18691f50, 0xcc973afb, 0xe, 0x598d446, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:40 +0x63
net.(*Dialer).Dial(0x83b9880, 0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:170 +0x3d8
github.com/valyala/gorpc.func·003()
goroutine 29 [runnable]:
net.(*pollDesc).Wait(0x18648438, 0x77, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:84 +0x42
net.(*pollDesc).WaitWrite(0x18648438, 0x0, 0x0)
/usr/local/go/src/net/fd_poll_runtime.go:93 +0x40
net.(*netFD).connect(0x18648400, 0x0, 0x0, 0xb7517090, 0x18637480, 0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:114 +0x21c
net.(*netFD).dial(0x18648400, 0xb7516020, 0x0, 0xb7516020, 0x18637460, 0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/sock_posix.go:139 +0x2c6
net.socket(0x8285980, 0x3, 0x2, 0x1, 0x0, 0x18637400, 0xb7516020, 0x0, 0xb7516020, 0x18637460, ...)
/usr/local/go/src/net/sock_posix.go:91 +0x346
net.internetSocket(0x8285980, 0x3, 0xb7516020, 0x0, 0xb7516020, 0x18637460, 0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, ...)
/usr/local/go/src/net/ipsock_posix.go:137 +0xed
net.dialTCP(0x8285980, 0x3, 0x0, 0x18637460, 0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, 0x8063d1d, 0x0, ...)
/usr/local/go/src/net/tcpsock_posix.go:156 +0xfc
net.dialSingle(0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0xb7515fe0, 0x18637460, 0xcc973afb, 0xe, ...)
/usr/local/go/src/net/dial.go:235 +0x35a
net.func·016(0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:163 +0xd0
net.dial(0x8285980, 0x3, 0xb7515fe0, 0x18637460, 0x18692f50, 0xcc973afb, 0xe, 0x59ac8ff, 0x83bba20, 0x0, ...)
/usr/local/go/src/net/fd_unix.go:40 +0x63
net.(*Dialer).Dial(0x83b9880, 0x8285980, 0x3, 0x1862e534, 0x6, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/net/dial.go:170 +0x3d8
github.com/valyala/gorpc.func·003()
exit status 2