Craig Tiller
1c885232e0
Reland te:trailers metadata change with fixes ( #27785 )
...
* Revert "Revert "Reland te: trailers metadata stuff (#27781 )" (#27784 )"
This reverts commit 33fff40174
.
* in which i admit defeat for this round
3 years ago
Craig Tiller
33fff40174
Revert "Reland te: trailers metadata stuff ( #27781 )" ( #27784 )
...
This reverts commit f5ab108ab7
.
3 years ago
Craig Tiller
f5ab108ab7
Reland te: trailers metadata stuff ( #27781 )
...
* Revert "Revert "Add metadata specialization for te: trailers (#27714 )" (#27779 )"
This reverts commit 2039cec4b1
.
* safer register call
3 years ago
Esun Kim
e246811e55
Add (void) to function calls returning absl::Status ( #27761 )
3 years ago
Craig Tiller
2039cec4b1
Revert "Add metadata specialization for te: trailers ( #27714 )" ( #27779 )
...
This reverts commit 7cded136b7
.
3 years ago
Craig Tiller
7cded136b7
Add metadata specialization for te: trailers ( #27714 )
...
* Add metadata specialization for te: trailers
* remove the evidence
* update microbenchmarks
* ugh
* cleanup copy code
* fix asan detected leak
* Automated change: Fix sanity tests
* append
* binder
* fix-cronet
* inproc fixes
* Automated change: Fix sanity tests
* convert cronet encode path
* fixes
* fixes
* review feedback
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
1df153f46e
Revert "Revert "Move metadata setting into HPackParser ( #27545 )" ( #27686 )" ( #27688 )
...
This reverts commit 0e6ced8800
.
3 years ago
Craig Tiller
0e6ced8800
Revert "Move metadata setting into HPackParser ( #27545 )" ( #27686 )
...
This reverts commit f57a1f7d8c
.
3 years ago
Craig Tiller
f57a1f7d8c
Move metadata setting into HPackParser ( #27545 )
...
* forward work to get append, limit check into parser
* further cleanup
* Remove chttp2_incoming_metadata_buffer
* Automated change: Fix sanity tests
* test fixes
* fix cronet
* wip
* first pass mementofication of parsing - libgrpc compiles
* further progress
* fixes
* fixes
* fix leak
* Automated change: Fix sanity tests
* fix leak
* fixes
* x
* improve fuzzer
* init ordering fix
* Update hpack_parser_table.h
* Update hpack_parser.cc
* Update hpack_parser_test.cc
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* i mustache myself why
* fix use after free
* Automated change: Fix sanity tests
* fixes
* eliminate second pass metadata - this is an illegal frame and fails the new parser
* handle mementos with size > sizeof(intptr_t)
* fix
* add parsed metadata header, test
* Automated change: Fix sanity tests
* fix includes
* phase1
* phase2
* Update parsed_metadata.h
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
9872da79a1
Eliminate grpc_metadata_batch_{init,destroy,move} ( #27349 )
...
* Eliminate grpc_metadata_batch_{init,destroy,move}
* fixes
* fixes
* fixes
* fixes
* portability fixes
* fixes
* fix
* fix
* fix
* be explicit about being explicit
3 years ago
Craig Tiller
fd233193ec
Encapsulate metadata aggregates ( #27262 )
...
* Encapsulate metadata aggregates
* Automated change: Fix sanity tests
* add const
* Automated change: Fix sanity tests
* add a comment about an awful api
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
ea389c00c2
Adjust include order per style guide ( #27175 )
...
Introduce clang-format configuration to sort includes closer to our rules.
3 years ago
AJ Heller
d10617edb5
Move resource_user ownership into chttp2 transport/server/connector v2 ( #27032 )
...
Reintroducing PR #26643 , which was reverted in #27029
Fixed a memory leak and added a test that would have caught it (ASAN build): ca0c8c4
3 years ago
Craig Tiller
f5d3ed2db1
Revert "Move resource_user ownership into chttp2 transport/server/connector ( #26643 )" ( #27029 )
...
This reverts commit d1935a65a1
. Will be rolled forward with a fix.
3 years ago
AJ Heller
d1935a65a1
Move resource_user ownership into chttp2 transport/server/connector ( #26643 )
3 years ago
Vijay Pai
0f80378a21
Resolve race between OnReadDone(ok=false) and IsCancelled ( #26245 )
...
* Resolve and test race between OnReadDone(ok=false) and IsCancelled
* Fix retry case
* Fix health check case
* Address reviewer comments.
* ADD TODO requested by markdroth
4 years ago
Esun Kim
ca945a58e9
Introduced grpc_error_handle ( #25902 )
...
- Define grpc_error_handle
- Replace grpc_error* with grpc_error_handle
4 years ago
Yash Tibrewal
7021b72d1f
Revert Revert Xds Status Notifier ( #25718 )
...
* Revert "Revert "xDS status notifier (#25321 )" (#25702 )"
This reverts commit 3c9f3972e3
.
* Remove connection from map when OnClose is not registered
* Reviewer comments
4 years ago
Yash Tibrewal
3c9f3972e3
Revert "xDS status notifier ( #25321 )" ( #25702 )
...
This reverts commit 81e90432e1
.
4 years ago
Yash Tibrewal
81e90432e1
xDS status notifier ( #25321 )
...
* Serving status notification for xds enabled servers
4 years ago
AJ Heller
0e3a02e903
Revert "Remove the `urgent` argument from iomgr tcp read API ( #25494 )" ( #25592 )
...
This reverts commit a3398f9
. Justification: see b/181367644. tl;dr: assuming urgent==false does not hold in all situations.
4 years ago
AJ Heller
a3398f924c
Remove the `urgent` argument from iomgr tcp read API ( #25494 )
...
The urgent argument is a platform-specific flag that leaked into the (ideally) platform-independent HTTP/2 transport layer. In an effort to clean up the cross-platform API surface, it would be helpful if we can remove this argument from the TCP Read api without losing the performance optimization that was introduced along with it (see #18240 ).
4 years ago
Yash Tibrewal
f4e55b85bc
Replace disrespectful term
4 years ago
Esun Kim
53ab235fb8
Fix google-explicit-constructor
4 years ago
Esun Kim
2ff84ed8c2
C++ cast for void*
4 years ago
Michael Wang
c6586f087f
implemented get_local_address accessor for grpc_endpoint
4 years ago
Esun Kim
62ac3f075a
Added call to grpc::testing::TestEnvironment in tests
5 years ago
Esun Kim
b92c3a2879
Changed Closure to TestClosure to avoid name conflict
5 years ago
Yash Tibrewal
79aa21fa71
Reviewer comments
5 years ago
Yash Tibrewal
61020b55f9
Remove GRPC_CLOSURE_LIST_SCHED and remove scheduler field from grpc_closure
5 years ago
Yash Tibrewal
08ba7246c0
Remove GRPC_CLOSURE_RUN and replace with grpc_core::Closure::Run
5 years ago
Yash Tibrewal
3a189d7e08
test changes
5 years ago
Vijay Pai
82e185399d
clang-format
5 years ago
Vijay Pai
6ca827a008
Remove unused parameter warning (18 of 20)
5 years ago
Yash Tibrewal
0a57e9cc69
Fix bm chttp2 transport
5 years ago
Hope Casey-Allen
6dfe27ab08
Fix race in bm_chttp2_transport
5 years ago
Hope Casey-Allen
59564ebd96
Fix warnings to unblock gcc8 support
5 years ago
Yash Tibrewal
56a0153f16
Heap allocate the stream object for other benchmark cases too
6 years ago
Yash Tibrewal
cceca10a8a
Fix data race, heap use-after-free issue in bm_chttp2_transport
6 years ago
Esun Kim
e18ed03c04
Made gRPC inialized after entering main function in microbenchmarks.
6 years ago
Arjun Roy
8ce42f67b2
Shrink arena size by 40 bytes and add additional
...
alignment options (for cache-alignment).
We shrink by:
1) Removing an unnecessary zone pointer.
2) Replacing gpr_mu (40 bytes when using pthread_mutex_t) with
std::atomic_flag.
We also header-inline the fastpath alloc (ie. when not doing a zone
alloc) and move the malloc() for a zone alloc outside of the mutex
critical zone, which allows us to replace the mutex with a spinlock.
We also cache-align created arenas.
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
Vijay Pai
fab05d336c
Dynamic callback requesting, graceful server shutdown, and separate ExecCtx for callbacks
6 years ago
Yash Tibrewal
bab043e865
Cleanup
6 years ago
Soheil Hassas Yeganeh
48e4a81b05
Remeve memset(0) from arena allocated memory.
...
Callers are updated to properly initialize the memory.
This behavior can be overridden using GRPC_ARENA_INIT_STRATEGY
environment variable.
6 years ago
Yash Tibrewal
8d47cd4992
Revert "Revert "Fathom tcp changes""
6 years ago
Jan Tattermusch
97ba943f17
Revert "Fathom tcp changes"
6 years ago
Yash Tibrewal
f0397933b0
Fathom TCP level changes. TracedBuffer for keeping track of all buffers
...
to be traced. Adding tests for Fathom and TracedBuffer. A lot more.
Please read PR description.
6 years ago
ncteisen
40ec89ff67
Support microbenchmarks internally
7 years ago
Mark D. Roth
3d8b32d8b3
Convert byte_stream API to C++.
7 years ago