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
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
Noah Eisen
4d20a66685
Run clang fmt
7 years ago
Noah Eisen
be82e64b3d
Autofix c casts to c++ casts
7 years ago
Jan Tattermusch
12ba4b1e05
make grpc_passthru_endpoint_stats refcounted
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
Craig Tiller
e38948a1cd
clang-format
8 years ago
Craig Tiller
85bf34a4a8
Copy slices for in-process transports: its no longer safe to just ref
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
efbd7c2a0f
Bug fixes, tracing for bdp estimation
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
9128716268
Track writes/RPC in microbenchmark
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
afcc8752f3
clang-format
8 years ago
Craig Tiller
20afa3d7c9
BufferPool --> ResourceQuota
8 years ago
Craig Tiller
ef6b97659e
Add tracing, fix some transport bugs wrt buffer_pools
8 years ago
Craig Tiller
61ecb9259b
TCP buffer pool integration done
8 years ago
Craig Tiller
d4673484c7
Update tests
8 years ago
Craig Tiller
5ca7e47493
Merge pull request #6737 from ctiller/delayed-write
...
Delay beginning most writes until we enter poll()
8 years ago
Craig Tiller
70bd4839bc
Allow returning a workqueue somehow associated with an endpoint
9 years ago
Craig Tiller
77c983dc87
clang-format
9 years ago
Craig Tiller
332f1b35d5
Rename functions
9 years ago
Craig Tiller
ddad978996
API fuzzer compiles with new error handling
9 years ago
Craig Tiller
904e0a5086
Fix typo
9 years ago
Craig Tiller
d0b3ae40f7
Fix double delete
9 years ago
Craig Tiller
a687250fd8
Fix msan bug
9 years ago
Craig Tiller
d78ca88da1
Fix bugs in test infra
9 years ago