grpc/test/core/bad_client
Soheil Hassas Yeganeh 18b19105f2 Implement TCP_INQ for gRPC in Linux
TCP_INQ is a socket option we added to Linux to report pending bytes
on the socket as a control message.

Using TCP_INQ we can accurately decide whether to continue read or not.
Add an urgent parameter, when we do not want to wait for EPOLLIN.

This commit improves the latency of 1 RPC unary (minimal benchmark)
significantly:

  Before:
    l_50: 61.3584984733
    l_90: 94.8328711277
    l_99: 126.211351174
    l_999: 158.722406029

  After:
    l_50: 51.3546011488 (-16%)
    l_90: 72.3420731581 (-23%)
    l_99: 103.280218974 (-18%)
    l_999: 130.905689996 (-17%)
2019-03-06 22:15:53 -05:00
..
tests Fix bad_client_simple_request test. 2019-02-07 10:21:09 +01:00
BUILD Make package names consistent under test/core 2017-08-31 09:12:51 -07:00
bad_client.cc Implement TCP_INQ for gRPC in Linux 2019-03-06 22:15:53 -05:00
bad_client.h Remove unnecessary check and few more comments 2018-01-30 15:25:05 -08:00
gen_build_yaml.py Promote gpr_test_util to part of grpc_test_util, add a sample to show it works, build.yaml change first 2018-12-06 13:40:12 -08:00
generate_tests.bzl Revert "Revert "Define the tests as grpc_cc_test to automatically test against all po…"" 2018-02-07 11:13:52 -08:00