Jan Tattermusch
8e79705d29
disable fuzzers on windows
5 years ago
Jan Tattermusch
b8a32c0cff
temporarily disable failing tests on windows
5 years ago
Mark D. Roth
ece8fd6642
Change transport connectivity watch API to not be lossy.
5 years ago
Vijay Pai
5d7e4bb301
Stop using deprecated gtest macros
5 years ago
Jan Tattermusch
6ebc1c616f
set uses_polling=False for some bazel tests
5 years ago
Esun Kim
3c6bb96a1f
Add test for static elements
5 years ago
Arjun Roy
b46e3668d3
s/branch/tail_call/ for CH2 on_hdr().
...
on_hdr() checks if a void-return function pointer is null before jumping to it.
If it is null, it returns an error; else it executes that function and returns
success.
This change converts the void-returning function to one that returns a
grpc_error* and thus saves a branch in on_hdr() (since we're branching once by
following the function pointer anyways, we're effectively coalescing these two
branches).
5 years ago
Arjun Roy
2767accc1b
Fixed init-order-fiasco for static slice table.
...
Fixes init-order bug affecting https://github.com/grpc/grpc/issues/19819 which
was first exposed by this commit:
857375a142
5 years ago
Hope Casey-Allen
59564ebd96
Fix warnings to unblock gcc8 support
5 years ago
Arjun Roy
b2cda1e185
Reduced ops for grpc_chttp2_stream_map_find().
...
Several asserts in grpc_chttp2_stream_map_find() can be converted to debug
asserts. This PR also templatizes the internal find() method to have it be
strict in the delete case (which saves some branches).
5 years ago
Yash Tibrewal
2d498d2b6c
Add a few tests for ContextList and BufferList. Also, check that
...
timestamps is non-null before modifying it.
5 years ago
Arjun Roy
b1d73a01f1
Removed duplicate static table from hpack table. Removed an or instruction for
...
every usage of static grpc metadata. Inlined hpack table lookups for static
metadata.
This leads to faster hpack parser creation:
BM_HpackParserInitDestroy 5.32µs ± 1% 0.06µs ± 1% -98.91% (p=0.000 n=18+19)
And slightly faster parsing:
BM_HpackParserParseHeader<RepresentativeClientInitialMetadata, OnInitialHeader>
456ns ± 1% 435ns ± 1% -4.74% (p=0.000 n=18+19)
BM_HpackParserParseHeader<MoreRepresentativeClientInitialMetadata,
OnInitialHeader>
1.06µs ± 2% 1.04µs ± 2% -1.82% (p=0.000 n=19+20)
It also yields a slight (0.5 - 1.0 microsecond) reduction in CPU time for
fullstack unary pingpong:
BM_UnaryPingPong<TCP, NoOpMutator, NoOpMutator>/0/512
[polls/iter:3.0001 ] 23.9µs ± 2%
23.0µs ± 1% -3.63% (p=0.002 n=6+6)
BM_UnaryPingPong<TCP, NoOpMutator, NoOpMutator>/0/32768
[polls/iter:3.00015 ] 35.1µs ± 1%
34.2µs ± 1% -2.57% (p=0.036 n=5+3)
BM_UnaryPingPong<MinTCP, NoOpMutator, NoOpMutator>/8/0
[polls/iter:3.00011 ] 21.7µs ± 3%
21.2µs ± 2% -2.44% (p=0.017 n=6+5)
5 years ago
yang-g
e291396644
Cap deadline to 99999999 seconds on wire
6 years ago
Arjun Roy
7d946633ea
grpc_slice_refcount devirtualization
6 years ago
Mark D. Roth
432c97e1ba
Remove error from connectivity state tracking.
6 years ago
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%)
6 years ago
Mark D. Roth
a04b0646de
Don't use a separate call context for subchannel calls.
6 years ago
Yash Tibrewal
30e1991bf9
Update context list test
6 years ago
yang-g
67742ef63f
Fix BUILD files. Manually edit bzl files
6 years ago
yang-g
e75fc243da
change tests to use the new class instead of grpc_test_init
6 years ago
Yash Tibrewal
77ba25ab72
s/int/uint32_t
6 years ago
Yash Tibrewal
9506d35674
Add a byte counter to chttp2_stream and use that for timestamps
6 years ago
Yash Tibrewal
c7e92f26eb
Reviewer comments
6 years ago
Yash Tibrewal
bab043e865
Cleanup
6 years ago
Guantao Liu
0c18293e55
Fix the test failure with callback-based polling.
6 years ago
Hope Casey-Allen
4cc1cd7baa
Add needed include
6 years ago
Hope Casey-Allen
327c514fe7
Some reorganizing to respond to code review comments
6 years ago
Hope Casey-Allen
5b27941372
Even cleaner implementation that does not modify the grpc_mdelem struct.
6 years ago
Hope Casey-Allen
fbe594beeb
Much cleaner approach that should address code review comments as well
6 years ago
Hope Casey-Allen
97cbec1c98
WIP. Setting md_index to 0 on grpc_linked_mdelem creation
6 years ago
Hope Casey-Allen
4181c8cd37
Zero out linked_mdelem when created in test
6 years ago
Yash Tibrewal
9c5bde5e4e
More commits
6 years ago
adelez
5bdd9a8cb9
Revert "Revert "Add suppressions to sanitizers for bazel builds""
7 years ago
Nicolas Noble
43557fee0b
Revert "Add suppressions to sanitizers for bazel builds"
7 years ago
Adele Zhou
4cd659505c
Add data param to grpc_cc_library
7 years ago
ncteisen
eb2aa9cb3b
Tighten the bar and refactor and offender:
7 years ago
Juanli Shen
3c3f3ad75a
Decrease GRPC_CHTTP2_HPACKC_NUM_VALUES
7 years ago
Sree Kuchibhotla
1dd12c084a
Fix some more formatting issues
7 years ago
Yash Tibrewal
c0cd82faed
Remove unnecessary includes of exec_ctx.h
7 years ago
Mark D. Roth
3d8b32d8b3
Convert byte_stream API to C++.
7 years ago
Mark D. Roth
718c8341ca
Retry support.
7 years ago
Muxi Yan
6c9a87c174
Polish infer_length_after_decode and add test cases
7 years ago
Noah Eisen
4d20a66685
Run clang fmt
7 years ago
Noah Eisen
be82e64b3d
Autofix c casts to c++ casts
7 years ago
Vijay Pai
d4d0a30c6f
Privatize useful.h and avl.h
7 years ago
Jan Tattermusch
8376749faa
fix EventState::done() data race
7 years ago
Mark D. Roth
dbdf495f61
Split lib/support into lib/gpr and lib/gpr++.
7 years ago
Vijay Pai
9423c274cd
Need to include functional to use std::bind
7 years ago
Muxi Yan
38fcd0c6c3
clang-format
7 years ago
Yash Tibrewal
8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed""
7 years ago