Skip to content

GRPC lead Ruby Segmentation faults when use gitaly

Summary

My gitlab version is 9.1

gitaly version is 0.6.0

grpc gem is 1.2.5

we meet the Ruby Segmentation faults in unicorn:

What is the current bug behavior?

W, [2017-05-18T20:44:23.097714 #48935]  WARN -- : Unicorn::WorkerKiller send SIGQUIT (pid: 48935) alive: 788 sec (trial 1)
I, [2017-05-18T20:44:23.404625 #44267]  INFO -- : reaped #<Process::Status: pid 48935 exit 0> worker=18
I, [2017-05-18T20:44:23.424969 #50984]  INFO -- : worker=18 ready
/home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grpc-1.2.5-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:337: [BUG] Segmentation fault at 0x007f2adc002248
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0172 p:---- s:1054 e:001053 CFUNC  :run_batch
c:0171 p:0084 s:1050 e:001049 METHOD /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grpc-1.2.5-x86_64-linux/src/ruby/lib/grpc/generic/active_call.rb:337
c:0170 p:0048 s:1042 e:001041 METHOD /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grpc-1.2.5-x86_64-linux/src/ruby/lib/grpc/generic/client_stub.rb:167
c:0169 p:0051 s:1027 e:001026 LAMBDA /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grpc-1.2.5-x86_64-linux/src/ruby/lib/grpc/generic/service.rb:185 [FINISH]
c:0168 p:0031 s:1023 e:001022 METHOD /home/git/gitlab/lib/gitlab/gitaly_client/notifications.rb:14
c:0167 p:0105 s:1019 e:001018 LAMBDA /home/git/gitlab/lib/api/internal.rb:158 [FINISH]
c:0166 p:---- s:1014 e:001013 CFUNC  :call
c:0165 p:0015 s:1011 e:001010 BLOCK  /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:59
c:0164 p:0047 s:1009 e:001008 METHOD /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:166
c:0163 p:0021 s:1004 e:001003 BLOCK  /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:58 [FINISH]
c:0162 p:0234 s:1001 e:001000 BLOCK  /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:262
c:0161 p:0047 s:0997 e:000996 METHOD /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/activesupport-4.2.8/lib/active_support/notifications.rb:166
c:0160 p:0024 s:0992 e:000991 METHOD /home/git/gitlab/vendor/bundle/ruby/2.3.0/gems/grape-0.19.1/lib/grape/endpoint.rb:240

Possible fixes

gitlab-ce#31143

https://github.com/grpc/grpc/issues/10658