[ 
https://issues.apache.org/jira/browse/THRIFT-3597?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15131518#comment-15131518
 ] 

John Sirois edited comment on THRIFT-3597 at 2/4/16 1:31 AM:
-------------------------------------------------------------

[~nsuke] - I think this is the real fix for your paper-over fix 
[here|https://github.com/apache/thrift/commit/2eed686406812411199f30e64131548000bbb62a#diff-354f30a63fb0907d4ad57269548329e3R158]

Reviews are appreciated.


was (Author: jsirois):
[~nsuke] - I think this is the real fix for your paper-over fix 
[here|https://github.com/apache/thrift/commit/2eed686406812411199f30e64131548000bbb62a#diff-354f30a63fb0907d4ad57269548329e3R158]

Reviews are welcome.

> `make check` hangs in go tests
> ------------------------------
>
>                 Key: THRIFT-3597
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3597
>             Project: Thrift
>          Issue Type: Bug
>          Components: Go - Library
>            Reporter: John Sirois
>
> I noticed this in other work and bisected to THRIFT-3251.  Looks like:
> {noformat}
> git reset --hard f8ca05528e04a24b9f843c82c6600e4de5e42291
> make check
> ...
> Your bundle is complete!
> Use `bundle show [gemname]` to see where a bundled gem is installed.
> /home/jsirois/.rvm/gems/ruby-2.1.4@global/bin/bundle exec 
> /home/jsirois/.rvm/rubies/ruby-2.1.4/bin/ruby -I. test_suite.rb
> Loaded suite test_suite
> Started
> ............
> Finished in 0.001784889 seconds.
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 12 tests, 25 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 
> notifications
> 100% passed
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 6723.11 tests/s, 14006.47 assertions/s
> make[2]: Leaving directory '/home/jsirois/dev/3rdparty/jsirois-thrift/test/rb'
> Making check in go
> make[2]: Entering directory 
> '/home/jsirois/dev/3rdparty/jsirois-thrift/test/go'
> Makefile:649: warning: overriding recipe for target 'check'
> Makefile:498: warning: ignoring old recipe for target 'check'
> mkdir -p src/gen
> ../../compiler/cpp/thrift -out src/gen --gen go:thrift_import=thrift 
> ThriftTest.thrift
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/go/ThriftTest.thrift:83]
>  The "byte" type is a compatibility alias for "i8". Use "i8" to emphasize the 
> signedness of this type.
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/go/ThriftTest.thrift:44]
>  No generator named 'noexist' could be found!
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/go/ThriftTest.thrift:46]
>  cpp generator does not accept 'noexist' as sub-namespace!
> ../../compiler/cpp/thrift -out src/gen --gen go:thrift_import=thrift 
> ../StressTest.thrift
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/StressTest.thrift:27] 
> The "byte" type is a compatibility alias for "i8". Use "i8" to emphasize the 
> signedness of this type.
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/StressTest.thrift:31] 
> Consider using the more efficient "binary" type instead of "list<byte>".
> [WARNING:/home/jsirois/dev/3rdparty/jsirois-thrift/test/StressTest.thrift:31] 
> Consider using the more efficient "binary" type instead of "list<byte>".
> ln -nfs ../../../lib/go/thrift src/thrift
> GOPATH=`pwd` /usr/bin/go get github.com/golang/mock/gomock
> touch gopath
> GOPATH=`pwd` /usr/bin/go test -v common/...
> === RUN   TestAllConnection
> SIGQUIT: quit
> PC=0x45f9b9 m=0
> goroutine 0 [idle]:
> runtime.epollwait(0x4, 0x7fff2e2496b0, 0xffffffff00000080, 0x0, 0xffffffff, 
> 0x0, 0x0, 0x0, 0x0, 0x0, ...)
>       /usr/lib/go/src/runtime/sys_linux_amd64.s:420 +0x19
> runtime.netpoll(0xa93501, 0x0)
>       /usr/lib/go/src/runtime/netpoll_epoll.go:68 +0x94
> runtime.findrunnable(0xc82001c000, 0x0)
>       /usr/lib/go/src/runtime/proc1.go:1520 +0x598
> runtime.schedule()
>       /usr/lib/go/src/runtime/proc1.go:1647 +0x267
> runtime.park_m(0xc820001680)
>       /usr/lib/go/src/runtime/proc1.go:1706 +0x18b
> runtime.mcall(0x7fff2e249dc0)
>       /usr/lib/go/src/runtime/asm_amd64.s:204 +0x5b
> goroutine 1 [chan receive]:
> testing.RunTests(0x93d3c0, 0xa8a5b0, 0x1, 0x1, 0x1)
>       /usr/lib/go/src/testing/testing.go:562 +0x8ad
> testing.(*M).Run(0xc820051ef8, 0x0)
>       /usr/lib/go/src/testing/testing.go:494 +0x70
> main.main()
>       common/_test/_testmain.go:54 +0x116
> goroutine 17 [syscall, locked to thread]:
> runtime.goexit()
>       /usr/lib/go/src/runtime/asm_amd64.s:1721 +0x1
> goroutine 5 [IO wait]:
> net.runtime_pollWait(0x7f1b6ce4afa0, 0x72, 0xc820010250)
>       /usr/lib/go/src/runtime/netpoll.go:157 +0x60
> net.(*pollDesc).Wait(0xc82005c370, 0x72, 0x0, 0x0)
>       /usr/lib/go/src/net/fd_poll_runtime.go:73 +0x3a
> net.(*pollDesc).WaitRead(0xc82005c370, 0x0, 0x0)
>       /usr/lib/go/src/net/fd_poll_runtime.go:78 +0x36
> net.(*netFD).accept(0xc82005c310, 0x0, 0x7f1b6ce4b060, 0xc82000a9c0)
>       /usr/lib/go/src/net/fd_unix.go:408 +0x27c
> net.(*TCPListener).AcceptTCP(0xc820030048, 0xffffffff, 0x0, 0x0)
>       /usr/lib/go/src/net/tcpsock_posix.go:254 +0x4d
> net.(*TCPListener).Accept(0xc820030048, 0x0, 0x0, 0x0, 0x0)
>       /usr/lib/go/src/net/tcpsock_posix.go:264 +0x3d
> thrift.(*TServerSocket).Accept(0xc820014640, 0x0, 0x0, 0x0, 0x0)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/thrift/server_socket.go:73
>  +0x313
> thrift.(*TSimpleServer).AcceptLoop(0xc82005c2a0, 0x0, 0x0)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/thrift/simple_server.go:123
>  +0x4e
> thrift.(*TSimpleServer).Serve(0xc82005c2a0, 0x0, 0x0)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/thrift/simple_server.go:147
>  +0x64
> common.doUnit(0xc820098120, 0xc820053e60)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/common/clientserver_test.go:68
>  +0x6f0
> common.TestAllConnection(0xc820098120)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/common/clientserver_test.go:52
>  +0x1bc
> testing.tRunner(0xc820098120, 0xa8a5b0)
>       /usr/lib/go/src/testing/testing.go:456 +0x98
> created by testing.RunTests
>       /usr/lib/go/src/testing/testing.go:561 +0x86d
> goroutine 6 [semacquire]:
> net.runtime_Semacquire(0xc82005c318)
>       /usr/lib/go/src/runtime/sema.go:48 +0x26
> net.(*fdMutex).RWLock(0xc82005c310, 0x1, 0x4b7554)
>       /usr/lib/go/src/net/fd_mutex.go:143 +0x16c
> net.(*netFD).readLock(0xc82005c310, 0x0, 0x0)
>       /usr/lib/go/src/net/fd_unix.go:160 +0x39
> net.(*netFD).accept(0xc82005c310, 0x0, 0x0, 0x0)
>       /usr/lib/go/src/net/fd_unix.go:389 +0x6c
> net.(*TCPListener).AcceptTCP(0xc820030048, 0xffffffff, 0x0, 0x0)
>       /usr/lib/go/src/net/tcpsock_posix.go:254 +0x4d
> net.(*TCPListener).Accept(0xc820030048, 0x0, 0x0, 0x0, 0x0)
>       /usr/lib/go/src/net/tcpsock_posix.go:264 +0x3d
> thrift.(*TServerSocket).Accept(0xc820014640, 0x0, 0x0, 0x0, 0x0)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/thrift/server_socket.go:73
>  +0x313
> thrift.(*TSimpleServer).AcceptLoop(0xc82005c2a0, 0x0, 0x0)
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/thrift/simple_server.go:123
>  +0x4e
> created by common.doUnit
>       
> /home/jsirois/dev/3rdparty/jsirois-thrift/test/go/src/common/clientserver_test.go:67
>  +0x6df
> rax    0xfffffffffffffffc
> rbx    0xffffffff
> rcx    0x45f9b9
> rdx    0x80
> rdi    0x4
> rsi    0x7fff2e2496b0
> rbp    0xa93e00
> rsp    0x7fff2e249670
> r8     0xa93e00
> r9     0x0
> r10    0xffffffff
> r11    0x246
> r12    0x8
> r13    0x93a7e4
> r14    0x9
> r15    0x8
> rip    0x45f9b9
> rflags 0x246
> cs     0x33
> fs     0x0
> gs     0x0
> *** Test killed with quit: ran too long (10m0s).
> FAIL  common  600.004s
> Makefile:649: recipe for target 'check' failed
> make[2]: *** [check] Error 1
> make[2]: Leaving directory '/home/jsirois/dev/3rdparty/jsirois-thrift/test/go'
> Makefile:593: recipe for target 'check-recursive' failed
> make[1]: *** [check-recursive] Error 1
> make[1]: Leaving directory '/home/jsirois/dev/3rdparty/jsirois-thrift/test'
> Makefile:635: recipe for target 'check-recursive' failed
> make: *** [check-recursive] Error 1
> {noformat}
> A {{git reset --hard f8ca05528e04a24b9f843c82c6600e4de5e42291^}} restores a 
> passing make check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to