Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solve data race for status codes #16139

Closed
wants to merge 1 commit into from
Closed

Solve data race for status codes #16139

wants to merge 1 commit into from

Conversation

@yashykt
Copy link
Member

@yashykt yashykt commented Jul 25, 2018

This solves the data race in status codes which results in different statuses being reported to application and the census filter.

Invalidated by #13368

@grpc-testing
Copy link

@grpc-testing grpc-testing commented Jul 25, 2018

****************************************************************

libgrpc.so

     VM SIZE                                             FILE SIZE
 ++++++++++++++ GROWING                               ++++++++++++++
  +1.6%    +256 src/core/lib/surface/call.cc             +256  +1.6%
       +30%    +144 receiving_trailing_metadata_ready        +144   +30%
      +7.1%     +64 finish_batch_step                         +64  +7.1%
      +1.7%     +32 grpc_call_create                          +32  +1.7%
      +1.4%      +6 [Unmapped]                                 +6  +1.4%
      +0.2%      +6 call_start_batch                           +6  +0.2%
      [NEW]      +5 delay_recv_trailing_finish                 +5  [NEW]

 -+-+-+-+-+-+-+ MIXED                                 +-+-+-+-+-+-+-
  -0.0%     -16 [None]                                  +1008  +0.0%

  +0.0%    +240 TOTAL                                 +1.23Ki  +0.0%


****************************************************************

libgrpc++.so

     VM SIZE        FILE SIZE
 ++++++++++++++  ++++++++++++++

  [ = ]       0        0  [ = ]



Loading

@grpc-testing
Copy link

@grpc-testing grpc-testing commented Jul 25, 2018

[trickle] No significant performance differences

Loading

@yashykt yashykt self-assigned this Jul 25, 2018
@grpc-testing
Copy link

@grpc-testing grpc-testing commented Jul 25, 2018

Objective-C binary sizes
*****************STATIC******************
  New size                      Old size
 1,976,720      Total (>)      1,976,356

 No significant differences in binary sizes

***************FRAMEWORKS****************
  New size                      Old size
10,770,593      Total (>)     10,770,410

 No significant differences in binary sizes


Loading

@grpc-testing
Copy link

@grpc-testing grpc-testing commented Jul 25, 2018

[microbenchmarks] Performance differences noted:
Benchmark                                                                            atm_add_per_iteration
-----------------------------------------------------------------------------------  -----------------------
BM_IsolatedCall_StreamingSend                                                        +18%
BM_IsolatedCall_Unary                                                                +6%
BM_PumpStreamClientToServer<InProcess>/0                                             +6%
BM_PumpStreamClientToServer<InProcess>/1                                             +6%
BM_PumpStreamClientToServer<InProcess>/262144                                        +5%
BM_PumpStreamClientToServer<InProcess>/32768                                         +5%
BM_PumpStreamClientToServer<InProcess>/4096                                          +5%
BM_PumpStreamClientToServer<InProcess>/512                                           +5%
BM_PumpStreamClientToServer<InProcess>/64                                            +5%
BM_PumpStreamClientToServer<InProcess>/8                                             +6%
BM_PumpStreamClientToServer<MinInProcess>/0                                          +6%
BM_PumpStreamServerToClient<InProcess>/0                                             +6%
BM_PumpStreamServerToClient<InProcess>/1                                             +6%
BM_PumpStreamServerToClient<InProcess>/262144                                        +5%
BM_PumpStreamServerToClient<InProcess>/32768                                         +5%
BM_PumpStreamServerToClient<InProcess>/4096                                          +5%
BM_PumpStreamServerToClient<InProcess>/512                                           +5%
BM_PumpStreamServerToClient<InProcess>/64                                            +5%
BM_PumpStreamServerToClient<InProcess>/8                                             +6%
BM_PumpStreamServerToClient<MinInProcess>/0                                          +6%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/0/1                        +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/0/2                        +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/1/1                        +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/1/2                        +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/262144/1                   +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/262144/2                   +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/32768/1                    +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/32768/2                    +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/4096/1                     +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/4096/2                     +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/512/1                      +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/512/2                      +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/64/1                       +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/64/2                       +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/8/1                        +4%
BM_StreamingPingPong<InProcess, NoOpMutator, NoOpMutator>/8/2                        +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/0/1                     +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/0/2                     +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/1/1                     +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/1/2                     +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/262144/1                +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/262144/2                +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/32768/1                 +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/32768/2                 +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/4096/1                  +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/4096/2                  +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/512/1                   +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/512/2                   +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/64/1                    +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/64/2                    +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/8/1                     +4%
BM_StreamingPingPong<MinInProcess, NoOpMutator, NoOpMutator>/8/2                     +4%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/0                      +6%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/1                      +6%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/262144                 +5%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/32768                  +5%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/4096                   +5%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/512                    +5%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/64                     +5%
BM_StreamingPingPongMsgs<InProcess, NoOpMutator, NoOpMutator>/8                      +6%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/0                   +6%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/1                   +6%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/262144              +5%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/32768               +5%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/4096                +5%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/512                 +5%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/64                  +5%
BM_StreamingPingPongMsgs<MinInProcess, NoOpMutator, NoOpMutator>/8                   +6%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/0/2/1     +4%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/1/2/1     +4%
BM_StreamingPingPongWithCoalescingApi<InProcess, NoOpMutator, NoOpMutator>/8/2/1     +4%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/0/2/1  +4%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/1/2/1  +4%
BM_StreamingPingPongWithCoalescingApi<MinInProcess, NoOpMutator, NoOpMutator>/8/2/1  +4%

Loading

@yashykt yashykt closed this Sep 6, 2018
@yashykt yashykt deleted the statusfix branch Oct 26, 2018
@lock lock bot locked as resolved and limited conversation to collaborators Jan 24, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants