Vignesh Babu
b92f885756
Adding a max_frame_size argument to grpc_endpoint_write API to allow a sender to control frame sizes ( #29526 )
...
* adding a max_frame_size argument to grpc_endpoint_write API
* fix syntax error
* fix typo
3 years ago
Vignesh Babu
53e382729f
Adding a min progress size argument to grpc_endpoint_read to allow gRPC to use TCP optimizations on the read path ( #29503 )
...
* adding a min progress size argument to grpc_endpoint_read
* fix missing argument error
* adding a static_cast
* reverting changes in tcp_posix.cc
* add missing changes to CFStreamEndpointTests.mm
3 years ago
Craig Tiller
a629c9a03e
Reland resource quota work ( #28017 )
...
* Check if memory owner available prior to polling it
The transport may drop the memory owner during its destruction sequence
* tcp_fix
* Revert "Revert "New resource quota integration (#27643 )" (#28014 )"
This reverts commit 0ea2c37263
.
* clang-format
* fix-path
* fix
3 years ago
Craig Tiller
0ea2c37263
Revert "New resource quota integration ( #27643 )" ( #28014 )
...
This reverts commit 39f0877d25
.
3 years ago
Craig Tiller
39f0877d25
New resource quota integration ( #27643 )
...
* new resource quota integration
* Automated change: Fix sanity tests
* fix
* fix
* fixes
* fixes
* fixes
* Automated change: Fix sanity tests
* fixes
* fixes
* Automated change: Fix sanity tests
* fixes
* fix
* fixes
* windows-fix
* fixes
* fixes
* fix
* fix-asan
* banned
* banned
* fixes
* clang-tidy-fix
* Automated change: Fix sanity tests
* fix-cronet
* review feedback
* review feedback
* Automated change: Fix sanity tests
* fixes
* bug fix
* fixes
* compile fix
* exclude megabyte size payloads from 1byte tests
* windows fix
* start moving ios
* keep moving windows
* Get windows compilation working.
* Automated change: Fix sanity tests
* better
* fixes
* remove slice buffer from memory_allocator.h
* Revert "remove slice buffer from memory_allocator.h"
This reverts commit 234a63b6e3
.
* ugh
* #fixtests
* pthread tls fixes
* Automated change: Fix sanity tests
* fixfixfix
* xxx
* add reset
* review feedback
* fix
* fix
* fixes
* fix
* mac progress
* cpp-impl-of
* rename ptr
* Automated change: Fix sanity tests
* memory-owner-is-a-memory-allocator
* fixes
* fix
* fix from prod
* fix
* Fix issue leading to bad pointers being returned on Windows.
* Automated change: Fix sanity tests
* fix multislice bug
* argh
* hyrums law fixes
* hyrums law fixes
* clang-format
* hyrums law fixes
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
2d16865693
Delete libuv-iomgr implementation and GRPC_UV build option ( #27188 )
...
This has been unmaintained for years, last supported in gRPC-core v1.24.
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
Esun Kim
ca945a58e9
Introduced grpc_error_handle ( #25902 )
...
- Define grpc_error_handle
- Replace grpc_error* with grpc_error_handle
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
Esun Kim
e0d8c498a6
C++ cast for others
4 years ago
Michael Wang
c6586f087f
implemented get_local_address accessor for grpc_endpoint
4 years ago
Mark D. Roth
9404f66f70
Replace most uses of gpr_asprintf() with absl calls.
4 years ago
Yash Tibrewal
3a189d7e08
test changes
5 years ago
Vijay Pai
7aa662b97b
Remove unused-parameter warnings, round 2 (18 of 19)
5 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
xtao
902820a5de
1) fix the asan tests caught leaks;
...
2) fix the tsan tests caught data races;
6 years ago
Yash Tibrewal
bab043e865
Cleanup
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
9c5bde5e4e
More commits
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
Vijay Pai
7fed69b7ad
Use static_cast rather than reinterpret_cast whenever possible
7 years ago
Noah Eisen
4d20a66685
Run clang fmt
7 years ago
Noah Eisen
be82e64b3d
Autofix c casts to c++ casts
7 years ago
Yash Tibrewal
8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed""
7 years ago
Yash Tibrewal
ad4d2dde00
Revert "All instances of exec_ctx being passed around in src/core removed"
7 years ago
Craig Tiller
4ac2b8e585
Enable clang-tidy as a sanity check, fix up all known failures
7 years ago
Yash Tibrewal
34a57d0346
rename all test core files to cc and a lot of C++ style conversions
7 years ago
Yash Tibrewal
0ee7574732
Removing instances of exec_ctx being passed around in functions in
...
src/core. exec_ctx is now a thread_local pointer of type ExecCtx instead of
grpc_exec_ctx which is initialized whenever ExecCtx is instantiated. ExecCtx
also keeps track of the previous exec_ctx so that nesting of exec_ctx is
allowed. This means that there is only one exec_ctx being used at any
time. Also, grpc_exec_ctx_finish is called in the destructor of the
object, and the previous exec_ctx is restored to avoid breaking current
functionality. The code still explicitly calls grpc_exec_ctx_finish
because removing all such instances causes the code to break.
7 years ago
Yuchen Zeng
ab74a8c86e
Add grpc_endpoint_delete_from_pollset_set
7 years ago
Yash Tibrewal
7cdd99c86e
Adding more pointer type conversions
7 years ago
ncteisen
969b46ef73
Add rich closure debug mode
8 years ago
ncteisen
274bbbe6a0
Add rich closure debug mode
8 years ago
Jan Tattermusch
7897ae9308
auto-fix most of licenses
8 years ago
Craig Tiller
ee4b145213
Remove workqueue, covered_by_poller as concepts, get Mac build up
8 years ago
Craig Tiller
339e421b29
Change endpoint interface to declare poller coveredness
8 years ago
ncteisen
4b36a3d9ea
Change error_create API to slice
8 years ago
murgatroid99
1191b7202d
Improve Node and libuv testing and test coverage
...
Allow Node tests to run with or without UV, change default version to 7, add some portability tests. Also make some more core tests work with libuv
8 years ago
Craig Tiller
cda759d658
Add an error to fd_shutdown (and recursively)
...
Allows diagnosing WHY a file descriptor was shutdown prematurely.
8 years ago
Craig Tiller
91031dacb1
Changes to exec_ctx/closure/combiner/workqueue interfaces
...
- make closures know where they should be executed (eg, on a workqueue,
or a combiner, or on an exec_ctx)
- this allows removal of a large number of trampoline functions that
were appearing whenever we used combiners, and should allow for a much
easier interface to combiner locks
8 years ago
Craig Tiller
a947f1c32e
Make resource_quota a real object
8 years ago
Yuchen Zeng
68413c221e
Remove GRPC_SOCKET
8 years ago
Craig Tiller
a59c16c184
Progress towards making grpc_slice_unref_internal take an exec_ctx
8 years ago
Craig Tiller
d41a4a720f
s/gpr_slice/grpc_slice, and move around tests, impls
8 years ago
Yuchen Zeng
e5ec9ac9e2
Add grpc_endpoint_get_socket and GRPC_SOCKET
8 years ago
Craig Tiller
20afa3d7c9
BufferPool --> ResourceQuota
8 years ago