Craig Tiller
0e6ced8800
Revert "Move metadata setting into HPackParser ( #27545 )" ( #27686 )
...
This reverts commit f57a1f7d8c .
2021-10-12 08:37:00 -07:00
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>
2021-10-11 20:02:29 -07:00
Vy Nguyen
a145013d6d
Temporarily disable benchmarks ( #27629 )
...
benchmark 1.6.0 introduced API breaking changes so we temporarily disabled the benchmarks that are using the old API to avoid breaking.
2021-10-07 14:29:19 -07:00
Craig Tiller
d1e01ac139
Add a test for a (now-illegal) build file construct ( #27602 )
...
* Add a test for a (now-illegal) build file construct
* add to test suite!
* fix
* fix
* fix syntax
2021-10-06 07:43:59 -07:00
Craig Tiller
84d9e7e9fa
Speed up microbenchmark tests ( #27584 )
...
* Speed up microbenchmark tests
* Automated change: Fix sanity tests
* Update grpc_benchmark_config.bzl
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2021-10-05 07:09:02 -07:00
Craig Tiller
b2942f601c
Modify hpack benchmark scenarios ( #27567 )
...
It used to be that we could run the hpack deserializer into an arbitrary
sink - that's about to change and the hpack deserializer will buffer
directly into a map. That being the case, it's really hard to compare
performance of the current and the new system. With this PR, I'm
updating the relevant scenario to be more similar to the eventual
scenario that we plan, so that as the new work finishes up, we can get a
clearer idea of what changes we're really making.
2021-10-04 13:14:43 -07:00
Esun Kim
1c6634ac44
Changed grpc_error_get|set_str to use std string instead of slice ( #27466 )
...
* Changed grpc_error_get|set_str to use std string
* Fix init order in tests with gtest
* Undo gtest-tify credentials_test
2021-10-01 18:58:47 -07:00
Craig Tiller
91a2db9bc2
Make deadline the first metadata trait ( #27468 )
2021-09-28 10:09:04 -07:00
Mark D. Roth
dbade1f5e7
Revert "Revert "pass subchannel address separately instead of as a channel arg ( #27443 )" ( #27489 )" ( #27491 )
...
This reverts commit 20cc6e7414 .
2021-09-28 09:54:07 -07:00
Craig Tiller
9b41852a5e
channel_init --> core configuration system ( #27347 )
...
* channel_init --> core configuration system
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
* fixes
* fixes
* eliminate grpc_base_c
* fixes
* fix merge
* fix
* update visibility
* fixes
* feedback
* fix comment
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2021-09-27 15:51:39 -07:00
Vignesh Babu
20cc6e7414
Revert "pass subchannel address separately instead of as a channel arg ( #27443 )" ( #27489 )
...
This reverts commit 57982f0ec6 .
2021-09-27 10:42:16 -07:00
Mark D. Roth
57982f0ec6
pass subchannel address separately instead of as a channel arg ( #27443 )
...
* pass subchannel address separately instead of as a channel arg
* fix bug
* fix passing address to connector
* clang-format
* fix build of bm_call_create
* revert to C-style semantics for grpc_resolved_address
* fix msan bugs
2021-09-25 07:59:47 -07:00
Craig Tiller
d4407b7e59
Revert "Remove dead code ( #27445 )" ( #27461 )
...
This reverts commit 693f36f91c .
2021-09-23 12:56:40 -07:00
Craig Tiller
693f36f91c
Remove dead code ( #27445 )
...
* Remove dead code
* Automated change: Fix sanity tests
* build
* remove benchmark
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2021-09-22 19:31:00 -07:00
Esun Kim
47586fb36e
Revert "Revert "Added absl::Status support to error_utils ( #27358 )" ( #27418 )" ( #27429 )
...
This reverts commit 933676c56c .
2021-09-21 14:42:57 -07:00
Craig Tiller
933676c56c
Revert "Added absl::Status support to error_utils ( #27358 )" ( #27418 )
...
This reverts commit 9b3f75d322 .
2021-09-21 09:48:57 -07:00
Craig Tiller
b669a3c521
Revert "Revert "a useful change ( #27381 )" ( #27411 )" ( #27412 )
...
This reverts commit 5db17f7350 .
2021-09-20 19:46:11 -07:00
Esun Kim
9b3f75d322
Added absl::Status support to error_utils ( #27358 )
2021-09-20 18:03:17 -07:00
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
2021-09-20 17:25:26 -07:00
Craig Tiller
5db17f7350
Revert "a useful change ( #27381 )" ( #27411 )
...
This reverts commit 11eb70bbed .
2021-09-20 10:30:59 -07:00
Craig Tiller
11eb70bbed
a useful change ( #27381 )
...
* a useful change
* Automated change: Fix sanity tests
* fix
* fix
* QsortCompare it is!
* Automated change: Fix sanity tests
* add missing header
* clang-tidy fixes, tweak clamp to only use <
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2021-09-20 09:13:27 -07:00
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>
2021-09-14 09:45:38 -07:00
Craig Tiller
ea389c00c2
Adjust include order per style guide ( #27175 )
...
Introduce clang-format configuration to sort includes closer to our rules.
2021-09-08 12:14:44 -07:00
Craig Tiller
dc701787e2
Convert HPACK encoder to C++ ( #27226 )
...
* Rebuild HPACK encoder table as C++
* move comment
* incguards
* build
* Automated change: Fix sanity tests
* c++ initialization ftw
* Automated change: Fix sanity tests
* Add missing header
* Add missing header
* Begin converting HPACK encoder to c++
* First pass conversion to c++
* fixes
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2021-09-07 14:28:06 -07:00
Craig Tiller
b062fcd5c6
Ensure consistency of include style for <grpc.* headers ( #27233 )
...
* Add a tool to ensure consistency in how grpc public headers are included
* Apply tool
* add to test suite
* isort
2021-09-02 11:42:33 -07:00
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
2021-08-18 17:04:00 -07:00
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.
2021-08-16 19:07:39 -07:00
AJ Heller
d1935a65a1
Move resource_user ownership into chttp2 transport/server/connector ( #26643 )
2021-08-16 13:50:56 -07:00
Craig Tiller
bbea27de46
Reland HPACK parsing changes ( #26997 )
...
* Revert "Revert "HPACK Table --> C++ (#26851 )" (#26995 )"
This reverts commit 840bcce9c4 .
* fix bad parsing of trailing === in binary metadata
2021-08-13 10:57:42 -07:00
Craig Tiller
840bcce9c4
Revert "HPACK Table --> C++ ( #26851 )" ( #26995 )
...
This reverts commit 83bcb0cf2e .
2021-08-12 11:20:19 -07:00
Craig Tiller
83bcb0cf2e
HPACK Table --> C++ ( #26851 )
...
* Buffer HPACK parsing until the end of a header boundary
HTTP2 headers are sent in (potentially) many frames, but all must be
sent sequentially with no traffic intervening.
This was not clear when I wrote the HPACK parser, and still indeed quite
contentious on the HTTP2 mailing lists.
Now that matter is well settled (years ago!) take advantage of the fact
by delaying parsing until all bytes are available.
A future change will leverage this to avoid having to store and verify
partial parse state, completely eliminating indirect calls within the
parser.
* maybe fixes
* xx
* fix boundary detection
* clang-format
* Revert "xx"
This reverts commit 258d712ed3 .
* fix tests
* add missed check
* fixes
* fix
* update tests
* fix benchmark
* properly unref
* optimize final slice refcounting
* cleanup bm_chttp2_hpack
* start
* new parser progress
* refinement
* get it compiling
* bug-fix
* build files
* clang-tidy
* fixes
* fixes
* fixes
* fix-leaks
* clang-tidy
* comments
* fix merge error
* Revert "Buffer HPACK parsing until the end of a header boundary (#26700 )"
This reverts commit 8bab3e4bf4 .
* streaming hpack parser start
* streaming parser
* clang-format
* Rework HPackTable into C++
* clang-tidy
* fix merge
* actually set the size of the entries array
* better
2021-08-09 16:07:41 -07:00
Craig Tiller
613b90ba93
Revert "Buffer HPACK parsing until the end of a header boundary ( #26700 )" ( #26825 )
...
This reverts commit 8bab3e4bf4 .
2021-07-29 11:22:47 -07:00
Craig Tiller
8bab3e4bf4
Buffer HPACK parsing until the end of a header boundary ( #26700 )
...
HTTP2 headers are sent in (potentially) many frames, but all must be
sent sequentially with no traffic intervening.
This was not clear when I wrote the HPACK parser, and still indeed quite
contentious on the HTTP2 mailing lists.
Now that matter is well settled (years ago!) take advantage of the fact
by delaying parsing until all bytes are available.
A future change will leverage this to avoid having to store and verify
partial parse state, completely eliminating indirect calls within the
parser.
2021-07-28 15:36:51 -07:00
Craig Tiller
d3e5803cb2
Move HPACK parser to C++ ( #26689 )
...
This is a fairly low effort migration of the current codebase into a C++ class, instead of free standing C code.
It builds upon #26657 as a necessary first step.
I've tried to minimize any changes to semantics or logic in this change, except where required to get a minimal amount of encapsulation - which is the major aim of this change.
A future change in this series will buffer slices until all HPACK headers are in memory for a stream prior to decoding -- it's important to have an encapsulated API to the parser before doing so however (hence this CL).
The next change after that will be an almost complete rewrite of the parsing functionality -- since we'll have the total set of header bytes, we'll no longer need to support suspending decoding at arbitrary points. This will allow us to move to a simple recursive descent parser, eliminate a bunch of indirection in this code, and end up in a much more malleable place for when we start doing metadata API changes.
(we likely also end up with some good performance wins!)
2021-07-15 13:51:23 -07:00
Vijay Pai
ea4b68e7a1
Drop experimental tags from core callback API ( #26535 )
2021-06-24 17:20:43 -07:00
Vijay Pai
8aff94558c
De-experimentalize C++ callback API ( #25728 )
...
* De-experimentalize callback API
* Make FromServerContext based on ServerContextBase
* Fix lambda
* Fix headers
* De-experimentalize tests
* clang-format
* Fix consistency checks
* wip
* Fix const-ness of callback client read RPC requests
* Fix golden file
* Give full route_guide callback client example with Hold etc
* Complete example route-guide server
* De-experimentalize test services
* Omit unneeded using
* Remove some uses of non-experimental macro from test
* clang-format examples
* De-experimentalize async stub calls
* Remove experimental namespace use in qps, ubms
* De-experimentalize alarms, generic stubs, and context allocator
* De-experimentalize SetContextAllocator
* clang-format
* Fix conflicts
* Leave obsolete API in place until users can be migrated
2021-05-27 14:55:25 -07:00
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
2021-05-19 14:05:46 -07:00
Esun Kim
ca945a58e9
Introduced grpc_error_handle ( #25902 )
...
- Define grpc_error_handle
- Replace grpc_error* with grpc_error_handle
2021-04-22 12:00:28 -07:00
Mark D. Roth
3f19333ced
Move retry code into its own filter in the DynamicFilter stack ( #25820 )
...
* rename ChannelData to ClientChannel
* make ClientChannel class definition public
* move retry code to its own filter
* move LB call factory method to ClientChannel class
* move dynamic termination filter out of ClientChannel class
* update comments
* remove retry parsing from client channel service config parser
* fix clang-tidy
* fix service_config_test
* clang-format
2021-03-31 15:39:14 -07:00
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
2021-03-15 14:29:06 -07:00
Yash Tibrewal
3c9f3972e3
Revert "xDS status notifier ( #25321 )" ( #25702 )
...
This reverts commit 81e90432e1 .
2021-03-12 08:54:34 -08:00
Yash Tibrewal
81e90432e1
xDS status notifier ( #25321 )
...
* Serving status notification for xds enabled servers
2021-03-08 21:47:13 -08:00
apolcyn
0901c9914b
Remove CAS loops in global subchannel pool and simplify subchannel refcounting ( #25485 )
2021-03-04 20:29:34 -08:00
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.
2021-03-01 22:04:22 -08:00
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 ).
2021-02-24 12:30:14 -08:00
Vijay Pai
af76d0321a
Restore callback microbenchmarks but make them manual for now ( #25491 )
2021-02-19 13:36:11 -08:00
Vijay Pai
0e6db8fbec
Reduce max size of bm_callback_streaming_ping_pong messages to match unary
2021-02-17 09:55:45 -08:00
Vijay Pai
dba8bb59a0
Implement callback CQ at C++ layer using shared thread pool if non-background iomgr
2021-02-16 16:02:23 -08:00
Yash Tibrewal
f4e55b85bc
Replace disrespectful term
2021-02-08 15:29:53 -08:00
Esun Kim
9bd7c4917a
Fix unused-parameter warning
2021-01-19 18:18:09 -08:00
Esun Kim
53ab235fb8
Fix google-explicit-constructor
2020-12-03 15:03:39 -08:00
Esun Kim
e0d8c498a6
C++ cast for others
2020-11-30 17:36:21 -08:00
Esun Kim
2ff84ed8c2
C++ cast for void*
2020-11-30 17:29:15 -08:00
Esun Kim
ec0b88a5d7
Fix google-readability-casting
2020-11-30 17:27:51 -08:00
Esun Kim
75e3e660fd
Fix google-readability-todo
2020-11-25 10:09:42 -08:00
capstan
131579d52d
Roll forward of commit 7883b51: Use abseil's flags in tests.
...
This replaces gflags. Added TODOs where use of `absl::Duration` or `absl::FlagSaver` might be preferred in follow-up cleanup. Fixes #24493 .
This reverts commit da66b7d14e .
NEW:
* Adds references to `absl/flags/declare.h`, new to LTS 2020923.2 imported in commit 5b43440 .
* Works around MSVC 2017 compiler error with large help text on flags by reducing the help text.
2020-11-06 16:07:19 +01:00
Nathan Herring
da66b7d14e
Revert "Abseil Flags"
2020-10-24 15:19:55 -07:00
capstan
7883b5133d
Use abseil's flags in tests.
...
This replaces gflags. Added TODOs where use of `absl::Duration` or `absl::FlagSaver` might be preferred in follow-up cleanup. Fixes #24493 .
2020-10-23 19:36:33 +02:00
Esun Kim
5b375a3728
Fix by misc-definitions-in-headers
2020-10-19 21:56:17 -07:00
Esun Kim
a62a70207c
Merge pull request #24448 from veblush/clang-format-8
...
Upgrade clang-format 8
2020-10-19 09:29:35 -07:00
Esun Kim
84df61b31a
Merge pull request #24453 from veblush/tidy-modernize-make-unique
...
[Clang-Tidy] Enable modernize-make-unique
2020-10-16 16:35:08 -07:00
Esun Kim
e7434d385e
Fix by tidy-modernize-use-override
2020-10-16 14:01:06 -07:00
Esun Kim
6ae8463500
Fix by modernize-make-unique
2020-10-16 13:30:56 -07:00
Esun Kim
34789b2d83
Fix by clang-format-8.
2020-10-16 11:37:18 -07:00
Esun Kim
ece76ee1e8
Fix code by readability-container-size-empty
2020-10-16 09:48:20 -07:00
Esun Kim
91ca04cf6f
Add TestGrpcScope
2020-09-17 12:41:14 -07:00
Mark D. Roth
7f7a6916f6
Merge pull request #23581 from markdroth/server_c++
...
Convert grpc_server to idiomatic C++.
2020-08-03 14:45:53 -07:00
Mark D. Roth
0b61aea1c5
Convert grpc_server to idiomatic C++.
2020-08-03 12:56:29 -07:00
Vijay Pai
cd20a80a1e
Merge pull request #23653 from vjpai/bm_cq
...
Properly follow callback CQ API guarantees rather than existing behavior in ubm
2020-08-03 12:39:17 -07:00
Vijay Pai
94a85b051d
Expand comment to address reviewer feedback
2020-07-31 14:26:17 -07:00
Michael Wang
c6586f087f
implemented get_local_address accessor for grpc_endpoint
2020-07-29 19:39:22 +00:00
Vijay Pai
968e1b40a5
Properly follow callback API guarantees rather than existing behavior
2020-07-28 12:42:20 -07:00
Vijay Pai
9c5a39c6db
Revert "Merge pull request #23361 from vjpai/em_agnostic_core_callback_cq"
...
This reverts commit a46cb5e86a , reversing
changes made to b5d42e75fb .
2020-07-28 09:55:43 -07:00
Vijay Pai
9d79ca6058
C++ify core server
2020-07-20 03:15:18 -07:00
Vijay Pai
7ee2bc6db5
EM-agnostic callback completion queue
2020-07-08 16:12:23 -07:00
Vijay Pai
b92ca15356
Increase size of a test to match internal guidance
2020-07-06 09:51:05 -07:00
Esun Kim
c736cf073c
Added call to grpc::testing::TestEnvironment in more tests
2020-07-01 13:27:08 -07:00
Esun Kim
62ac3f075a
Added call to grpc::testing::TestEnvironment in tests
2020-07-01 11:37:57 -07:00
Esun Kim
165ee5007a
Replaced grpc::string with std::string
2020-06-29 17:56:36 -07:00
Yash Tibrewal
e98eaa5052
Revert "Revert "Add message-size check before message decompression""
2020-06-23 12:19:07 -07:00
Karthik Ravi Shankar
70465c92ec
Merge pull request #23180 from karthikravis/opencensus
...
Move OpenCensus back to ::grpc from ::grpc_impl
2020-06-23 11:31:43 -07:00
Karthik Ravi Shankar
f0d2aff3c7
Merge branch 'master' into opencensus
2020-06-22 17:24:05 -07:00
Vijay Pai
c7f2956b67
Revert "Add message-size check before message decompression"
2020-06-22 16:18:36 -07:00
Yash Tibrewal
0497ad8bb0
Add missing message-size check before decompressing
...
Add and fix tests for limit check before decompression
Code restructuring to allow easy reuse of service config call data
Regenerate projects
Reviewer comments
2020-06-19 14:49:18 -07:00
Karthik Ravi Shankar
7fa6826134
Merge branch 'master' into opencensus
2020-06-10 17:47:16 -07:00
Karthik Ravi Shankar
89763a96fd
Move OpenCensus back to ::grpc from ::grpc_impl
...
Revert - Revert "Revert "Fold opencensus into grpc_impl namespace"" #18396
2020-06-10 17:36:58 -07:00
Esun Kim
92d31d6f99
Remove the flaky flag from bm_opencensus_plugin
2020-05-04 11:41:09 -07:00
Esun Kim
234b356e2f
Fix the flaky bm_opencensus_plugin
2020-04-29 09:35:57 -07:00
Vijay Pai
527509abc4
Unmark flaky on streaming_pump
2020-04-08 10:31:47 -07:00
Vijay Pai
f1979cece2
Disable SockPair fixture
2020-04-08 08:41:54 -07:00
Jan Tattermusch
a791e16983
mark more tests as flaky
2020-03-17 05:32:17 -04:00
Jan Tattermusch
880111fe47
Merge pull request #22355 from jtattermusch/bm_metadata_not_flaky
...
bm_metadata is not flaky anymore
2020-03-16 18:14:25 +01:00
Vijay Pai
b4f0cad4bd
bm_arena needs more time
...
Internal tests show that it needs a large timeout. This has passed 100x without timeout.
2020-03-16 08:12:15 -07:00
Jan Tattermusch
29528fc026
bm_metadata is not flaky anymore
2020-03-16 03:07:25 -04:00
Yash Tibrewal
b40b162cc9
Add missing grpc_slice_unref to bm_metadata
2020-03-13 18:28:16 -07:00
Jan Tattermusch
cbb0ef2717
try marking some offenders as flaky
2020-02-27 22:37:32 -05:00
Jan Tattermusch
543d8796f0
dont build some microbenchmarks on windows
2020-02-26 19:56:49 -05:00
Esun Kim
b92c3a2879
Changed Closure to TestClosure to avoid name conflict
2020-02-18 17:25:55 -08:00
Yash Tibrewal
b18ae4b784
Add notap tag to tests that cause issues timeout issues internally
2020-02-18 12:31:46 -08:00
Jan Tattermusch
5e19408ef5
disable bm_chttp2_transport on msan
2020-02-18 03:20:18 -08:00
Jan Tattermusch
cb6d09ac21
add missing bm_pollset and bm_chttp2_transport targets to bazel build
2020-02-18 02:34:42 -08:00
Vijay Pai
f7d857a8e4
Make threadpool and trickle tests manual only (excessive time/resources)
2020-02-13 10:12:12 -08:00
Vijay Pai
1513f3a7b4
Reduce unneeded sizes and disable tests on mac for resource limits
2020-02-13 09:34:15 -08:00
Vijay Pai
0c0f3f0556
Declare microbenchmarks as tests rather than binaries, fix issues
2020-02-13 09:34:15 -08:00
Vijay Pai
2678afe310
Stop using core server shutdown in microbenchmarks
2020-01-21 14:24:42 -08:00
Lidi Zheng
d5d6914751
Make buildifier sanity test fail-able
2019-12-18 16:16:49 -08:00
Jan Tattermusch
5d352ded8b
disable a few macos bazel tests
2019-11-25 13:35:26 +01:00
Vijay Pai
be6979202b
Revamp server-side C++ callback API, message allocator, and mocking
2019-11-20 16:56:18 -08:00
Yash Tibrewal
79aa21fa71
Reviewer comments
2019-11-13 14:14:02 -08:00
Yash Tibrewal
61020b55f9
Remove GRPC_CLOSURE_LIST_SCHED and remove scheduler field from grpc_closure
2019-11-12 18:23:29 -08:00
Yash Tibrewal
d60b60a837
Reviewer comments
2019-11-08 10:45:50 -08:00
Yash Tibrewal
fe88f14410
Merge branch 'master' into removrun
2019-11-07 15:13:03 -08:00
Esun Kim
3a519a0b64
Replaced grpc_core New & Delete with C++ new & delete
2019-11-06 17:52:26 -08:00
Lidi Zheng
c34bef4ca4
Format all Bazel files with buildifier
2019-11-05 14:03:52 -08:00
Yash Tibrewal
08ba7246c0
Remove GRPC_CLOSURE_RUN and replace with grpc_core::Closure::Run
2019-11-01 16:21:16 -07:00
Yash Tibrewal
3a189d7e08
test changes
2019-10-31 17:09:38 -07:00
Vijay Pai
e35c869aaf
Remove unused-parameter warnings, round 2 (19 of 19)
2019-10-21 09:16:35 -07:00
Yash Tibrewal
780d41224c
Squashed commit of the following:
...
commit 1547cb209a
Author: Yash Tibrewal <yashkt@google.com>
Date: Fri Oct 18 13:12:55 2019 -0700
Revert some other GRPC_CLOSURE_RUN till other issues are fixed
commit 3edeee7ce9
Merge: 22b343e4fb e8f78e7a5d
Author: Yash Tibrewal <yashkt@google.com>
Date: Fri Oct 18 12:26:26 2019 -0700
Merge branch 'master' into combinernew
commit 22b343e4fb
Author: Yash Tibrewal <yashkt@google.com>
Date: Fri Oct 18 12:22:34 2019 -0700
Change some TCP posix closures to GRPC_CLOSURE_RUN
commit 19e60dfe8f
Merge: 153bdcbc97 feae38d3ab
Author: Yash Tibrewal <yashkt@google.com>
Date: Thu Oct 17 11:56:46 2019 -0700
Merge branch 'master' into combinernew
commit 153bdcbc97
Author: Yash Tibrewal <yashkt@google.com>
Date: Thu Oct 17 11:41:14 2019 -0700
Proxy fixture fix
commit c6da80bcce
Merge: 6a32264cdf 98abc22f4c
Author: Yash Tibrewal <yashkt@google.com>
Date: Fri Oct 11 17:05:18 2019 -0700
Merge branch 'master' into combinernew
commit 6a32264cdf
Author: Yash Tibrewal <yashkt@google.com>
Date: Fri Oct 11 17:01:55 2019 -0700
Reviewer comments
commit 6bbd3a1c3c
Author: Yash Tibrewal <yashkt@google.com>
Date: Thu Oct 10 11:55:43 2019 -0700
Fallback cleanup
commit aaa04526a2
Author: Yash Tibrewal <yashkt@google.com>
Date: Thu Oct 10 11:24:18 2019 -0700
Clean up
commit 4266be13d5
Author: Yash Tibrewal <yashkt@google.com>
Date: Thu Oct 10 11:20:05 2019 -0700
Make sure start_ping is called before finish_ping for bdp and keepalive
commit 14107957aa
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 18:56:07 2019 -0700
chttp2 fixes
commit 5643aa6cb3
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 18:25:19 2019 -0700
Remove closure list scheduling from combiners
commit c596449430
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 17:35:54 2019 -0700
ares windows fix
commit 9f933903b9
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 17:23:11 2019 -0700
More fixes
commit 3c3a7d0e9b
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 16:08:07 2019 -0700
Fix errors
commit 56539cc448
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 15:22:28 2019 -0700
Everything compiles
commit 714ec01e4b
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 13:44:18 2019 -0700
src compiles
commit 54dcbd170d
Author: Yash Tibrewal <yashkt@google.com>
Date: Wed Oct 9 13:16:08 2019 -0700
chttp2_transport changes
commit 7a3388b077
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 18:33:55 2019 -0700
resource quota and lb policy
commit 714e4c849f
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 17:23:04 2019 -0700
Further
commit 1d17ad7d44
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 13:34:52 2019 -0700
ares ev driver windows changes
commit 3110c062c5
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 12:47:37 2019 -0700
ares dns changes
commit 0e10bc17ea
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 12:24:45 2019 -0700
Add dns_resolver changes
commit 4a71a911e8
Author: Yash Tibrewal <yashkt@google.com>
Date: Tue Oct 8 12:08:10 2019 -0700
Add fake_resolver changes
commit 8610a64ec9
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 19:31:13 2019 -0700
Remaning one from xds_client
commit 5f22055d0d
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 18:47:28 2019 -0700
One left from xds_client.cc
commit 4b1223f875
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 17:17:12 2019 -0700
modifications for xds.cc
commit a17bbbd840
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 13:06:25 2019 -0700
grpclb.cc changes
commit 3a33ed4762
Merge: 11058748fd 3d363368ca
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 11:24:11 2019 -0700
Merge branch 'combinernew' of github.com:yashykt/grpc into combinernew
commit 3d363368ca
Author: Yash Tibrewal <yashkt@google.com>
Date: Mon Oct 7 11:18:00 2019 -0700
New combiner
2019-10-18 15:07:54 -07:00
Vijay Pai
e8f78e7a5d
Merge pull request #20644 from vjpai/remove_warn_17
...
Remove unused parameter warnings (17 of 20)
2019-10-18 10:32:48 -07:00
Vijay Pai
82e185399d
clang-format
2019-10-17 09:08:21 -07:00
Vijay Pai
0cab2084e6
clang-format
2019-10-17 09:08:04 -07:00
Vijay Pai
6ca827a008
Remove unused parameter warning (18 of 20)
2019-10-17 08:52:05 -07:00
Vijay Pai
406b70629a
Remove unused parameter warning (17 of 20)
2019-10-17 08:52:00 -07:00
Yash Tibrewal
0a57e9cc69
Fix bm chttp2 transport
2019-10-02 16:14:43 -07:00
Soheil Hassas Yeganeh
c9376b4e0b
Use cycle clock instead of clock monotonic to measure call latency.
...
This removes two more getttime syscalls from the hot path, when cycle
clock is enabled.
2019-09-09 10:37:48 -04:00
Arjun Roy
0b06676c9e
hpack encoder optimizations.
...
Removed some cycles and branches from hpack_enc for CH2.
Specifically:
1. Pushed certain metadata key/value length checks to
prepare_application_metadata() in src/core/lib/surface/call.cc.
This means that rather than check all key/val lengths for all metadata, we only
do so for custom added user metadata. Inside CH2, we change the length checks to
debug checks so we can catch if core/filter metadata fails to pass the check.
2. Changed various asserts to debug asserts when able.
3. Refactored some of the header emission code to remove duplicated code.
4. Un-inlined some logging methods.
This results in somewhat faster hpack_encoder performance:
BM_HpackEncoderInitDestroy
222ns ± 0% 221ns ± 0% -0.29% (p=0.000 n=34+34)
BM_HpackEncoderEncodeDeadline
[framing_bytes/iter:9 header_bytes/iter:6 ] 135ns ± 1%
124ns ± 0% -8.05% (p=0.000 n=39+38)
BM_HpackEncoderEncodeHeader<EmptyBatch>/0/16384
[framing_bytes/iter:9 header_bytes/iter:0 ] 34.2ns ± 0%
34.2ns ± 0% -0.01% (p=0.014 n=34+38)
BM_HpackEncoderEncodeHeader<EmptyBatch>/1/16384
[framing_bytes/iter:9 header_bytes/iter:0 ] 34.2ns ± 0%
34.2ns ± 0% -0.04% (p=0.004 n=34+37)
BM_HpackEncoderEncodeHeader<SingleStaticElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.5ns ± 0%
45.9ns ± 0% -3.28% (p=0.000 n=28+38)
BM_HpackEncoderEncodeHeader<SingleInternedKeyElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:6 ] 77.0ns ± 1%
68.3ns ± 1% -11.33% (p=0.000 n=39+40)
BM_HpackEncoderEncodeHeader<SingleInternedElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 1%
45.5ns ± 0% -4.63% (p=0.000 n=39+33)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<1, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.2ns ± 0%
45.3ns ± 0% -3.96% (p=0.000 n=33+34)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<3, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.6ns ± 0% -4.54% (p=0.000 n=38+40)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<10, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.63% (p=0.000 n=39+32)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<31, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 0%
45.6ns ± 1% -4.59% (p=0.000 n=38+39)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<100, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 0%
45.5ns ± 0% -4.64% (p=0.000 n=39+36)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<1, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.3ns ± 0%
45.3ns ± 0% -4.09% (p=0.000 n=38+36)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<3, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 1%
45.6ns ± 0% -4.71% (p=0.000 n=37+40)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<10, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.66% (p=0.000 n=39+32)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<31, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.8ns ± 1%
45.6ns ± 1% -4.62% (p=0.000 n=37+39)
BM_HpackEncoderEncodeHeader<SingleInternedBinaryElem<100, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.7ns ± 0%
45.5ns ± 0% -4.67% (p=0.000 n=38+32)
BM_HpackEncoderEncodeHeader<SingleNonInternedElem>/0/16384
[framing_bytes/iter:9 header_bytes/iter:9 ] 80.5ns ± 1%
74.7ns ± 0% -7.16% (p=0.000 n=38+35)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<1, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:12 ] 105ns ± 1%
99ns ± 0% -5.91% (p=0.000 n=38+34)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<3, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:14 ] 111ns ± 1%
106ns ± 1% -4.86% (p=0.020 n=39+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<10, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:23 ] 135ns ± 0%
130ns ± 0% -3.45% (p=0.020 n=35+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<31, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:46 ] 225ns ± 1%
223ns ± 0% -0.91% (p=0.003 n=37+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<100, false>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:120 ] 467ns ± 0%
472ns ± 0% +1.09% (p=0.003 n=38+2)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<1, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:12 ] 81.6ns ± 1%
74.8ns ± 0% -8.40% (p=0.000 n=37+33)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<3, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:14 ] 82.0ns ± 1%
74.8ns ± 0% -8.80% (p=0.000 n=37+32)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<10, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:21 ] 82.1ns ± 1%
74.9ns ± 0% -8.86% (p=0.000 n=35+34)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<31, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:42 ] 97.6ns ± 2%
91.8ns ± 0% -5.95% (p=0.000 n=35+27)
BM_HpackEncoderEncodeHeader<SingleNonInternedBinaryElem<100, true>>/0/16384
[framing_bytes/iter:9 header_bytes/iter:111 ] 97.2ns ± 1%
91.2ns ± 2% -6.19% (p=0.000 n=37+38)
BM_HpackEncoderEncodeHeader<SingleNonInternedElem>/0/1
[framing_bytes/iter:54 header_bytes/iter:9 ] 230ns ± 0%
221ns ± 0% -3.91% (p=0.000 n=38+37)
BM_HpackEncoderEncodeHeader<MoreRepresentativeClientInitialMetadata>/0/16384
[framing_bytes/iter:9 header_bytes/iter:16 ] 206ns ± 2%
170ns ± 1% -17.51% (p=0.000 n=39+39)
BM_HpackEncoderEncodeHeader<RepresentativeServerInitialMetadata>/0/16384
[framing_bytes/iter:9 header_bytes/iter:3 ] 66.4ns ± 2%
62.5ns ± 1% -5.85% (p=0.000 n=34+39)
BM_HpackEncoderEncodeHeader<RepresentativeServerTrailingMetadata>/1/16384
[framing_bytes/iter:9 header_bytes/iter:1 ] 47.5ns ± 0%
45.9ns ± 1% -3.29% (p=0.000 n=26+38)
2019-09-06 13:43:29 -07:00
Vijay Pai
9bb1247bdb
Merge pull request #16327 from vjpai/keep_running
...
C++ microbenchmarks: update from KeepRunning to range-based for
2019-09-05 11:07:53 -07:00
Arjun Roy
6175294416
Merge pull request #20014 from arjunroy/on_hdr_nobranch
...
s/branch/tail_call/ for CH2 on_hdr().
2019-09-03 12:44:56 -07:00
Hope Casey-Allen
32801fb5eb
Remove build target for microbenchmark
2019-08-29 14:11:05 -07:00
Vijay Pai
1077b3435c
Use range-based for on state rather than state.KeepRunning when possible
2019-08-29 11:27:00 -07:00
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).
2019-08-28 13:06:11 -07:00
Hope Casey-Allen
6dfe27ab08
Fix race in bm_chttp2_transport
2019-08-28 10:07:38 -07:00
Mark D. Roth
0bdeca47b6
Merge pull request #19038 from markdroth/lb_policy_create_channel_api_improvement
...
Remove CreateChannel() method from LB helper API.
2019-08-27 10:54:52 -07:00
Hope Casey-Allen
59564ebd96
Fix warnings to unblock gcc8 support
2019-08-20 16:02:53 -07:00
Mark D. Roth
a23e7ab188
Merge remote-tracking branch 'upstream/master' into lb_policy_create_channel_api_improvement
2019-08-20 07:58:38 -07:00
Arjun Roy
557446a11e
Added specializations for grpc_mdelem_create.
...
In several cases, we create grpc mdelem structures using known-static
metadata inputs. Furthermore, in several cases we create a slice on
the heap (e.g. grpc_slice_from_copied_buffer) where we know we are
transferring refcount ownership. In several cases, then, we can:
1) Avoid unnecessary ref/unref operations that are no-ops (for static
slices) or superfluous (if we're transferring ownership).
2) Avoid unnecessarily comprehensive calls to grpc_slice_eq (since
they'd only be called with static or interned slice arguments,
which by construction would have equal refcounts if they were
in fact equal.
3) Avoid unnecessary checks to see if a slice is interned (when we
know that they are).
To avoid polluting the internal API, we introduce the notion of
strongly-typed grpc_slice objects. We draw a distinction between
Internal (interned and static-storage) slices and Extern (inline and
non-statically allocated). We introduce overloads to
grpc_mdelem_create() and grpc_mdelem_from_slices() for the fastpath
cases identified above based on these slice types.
From the programmer's point of view, though, nothing changes - they
need only use grpc_mdelem_create() and grpc_mdelem_from_slices() as
before, and the appropriate fastpath will be picked based on type
inference. If no special knowledge exists for the slice type (i.e. we
pass in generic grpc_slice objects), the slowpath method will still
always return correct behaviour.
This is good for:
- Roughly 1-3% reduction in CPU time for several unary/streaming
ping pong fullstack microbenchmarks.
- Reduction of about 15-20% in CPU time for some hpack parser
microbenchmarks.
- 10-12% reduction of CPU time for metadata microbenchmarks involving
interned slice comparisons.
2019-07-30 17:07:44 -07:00
yunjiaw26
f14f1dd61d
Merge pull request #19695 from yunjiaw26/bm_threadpool
...
Add threadpool benchmark and build files
2019-07-29 18:38:22 -07:00
Yunjia Wang
8318e578db
SpikyLoad: construct outside
2019-07-29 10:52:32 -07:00
Yunjia Wang
c3c24d089d
Use Template
2019-07-29 10:30:09 -07:00
Yunjia Wang
d87b5285ca
Fix comment
2019-07-24 13:33:24 -07:00
Yunjia Wang
efd6946d21
Reformat
2019-07-23 15:35:50 -07:00
Yunjia Wang
9242fe122d
AddSelf more scenarios
2019-07-23 09:47:26 -07:00
Mark D. Roth
46f706c99b
Revert "Merge pull request #19686 from gnossen/revert_breakage"
...
This reverts commit 1f2398b0d5 , reversing
changes made to 99169d811c .
2019-07-23 07:50:27 -07:00
Yunjia Wang
8278d3e6a5
Resolving comments
2019-07-22 17:24:09 -07:00
Yunjia Wang
847faf407f
Removes unused variable error
2019-07-19 12:10:52 -07:00
Yunjia Wang
85314b3fcc
Re-format
2019-07-19 10:49:35 -07:00
Yunjia Wang
c6bc2b1875
Add threadpool benchmark and build files
2019-07-19 10:23:22 -07:00
Richard Belleville
63b4f3d819
Revert "Merge pull request #19673 from markdroth/channel_grpc_init"
...
This reverts commit 4e21980716 , reversing
changes made to 62b8a783fa .
2019-07-18 13:00:24 -07:00
Mark D. Roth
8cc5b8f680
Defer grpc shutdown until after channel destruction.
2019-07-17 16:35:14 -07:00
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)
2019-07-15 15:39:31 -07:00
Yash Tibrewal
56a0153f16
Heap allocate the stream object for other benchmark cases too
2019-06-14 14:44:49 -07:00
Yash Tibrewal
cceca10a8a
Fix data race, heap use-after-free issue in bm_chttp2_transport
2019-06-13 17:05:51 -07:00
Mark D. Roth
4f3a55b73d
Merge remote-tracking branch 'upstream/master' into lb_policy_create_channel_api_improvement
2019-06-05 13:56:06 -07:00
Mark D. Roth
0f5834b88d
Merge remote-tracking branch 'upstream/master' into lb_policy_create_channel_api_improvement
2019-05-29 15:40:24 -07:00
Karthik Ravi Shankar
196b0aa3a3
Revert "Revert "Start supporting a callback-based RPC under lock""
2019-05-29 13:15:47 -07:00
Karthik Ravi Shankar
b790c24e5c
Revert "Start supporting a callback-based RPC under lock"
2019-05-29 11:20:36 -07:00
Mark D. Roth
477ebef532
Remove CreateChannel() method from LB helper API.
2019-05-28 14:18:15 -07:00
Karthik Ravi Shankar
b18faa6c95
Fix tsan error
2019-05-23 20:08:45 -07:00
Karthik Ravi Shankar
d2c8eb94c9
Fix microbenchmark failures
2019-05-23 18:09:12 -07:00
Karthik Ravi Shankar
3f05ac9584
Merge branch 'master' into callback-rpc-lock
2019-05-22 17:39:08 -07:00
Karthik Ravi Shankar
e1f62278e3
Fix clang error
2019-05-22 13:53:10 -07:00
Karthik Ravi Shankar
4f7f561564
Add synchronization to bm test
...
- since we made the callback run on another thread, add synchronization
in bm tests as well
2019-05-22 10:42:50 -07:00
Karthik Ravi Shankar
40210d3b8a
Move Channel to grpc_impl
2019-05-17 09:12:33 -07:00
Karthik Ravi Shankar
772a74aced
Revert changes to Channel
2019-05-15 14:24:17 -07:00
Na-Na Pang
a02c76dfb9
Cancel predefine number of streaming
2019-05-13 13:29:06 -07:00
Na-Na Pang
87d75d2a88
Add explicit and fix error
2019-05-10 11:23:24 -07:00
Na-Na Pang
7a464a3bc9
Merge remote-tracking branch 'upstream/master'
2019-05-10 11:16:14 -07:00
Karthik Ravi Shankar
476f7cd81f
Merge pull request #18730 from karthikravis/grpc_namespace_channel_new
...
Fold Channel into grpc_impl from grpc namespace
2019-05-09 14:09:21 -07:00
Na-Na Pang
a2daa4ff08
Clean format'
2019-05-09 12:29:05 -07:00
Na-Na Pang
1ea651aee3
Add assertion
2019-05-09 12:22:55 -07:00
Na-Na Pang
9b50fbcaac
Solve conflict
2019-05-08 18:50:06 -07:00
Na-Na Pang
762e58b574
Change client context allocation
2019-05-08 17:34:27 -07:00
Na-Na Pang
070902b871
Merge bm_callback_cq to bm_cq
2019-05-08 15:51:58 -07:00
Na-Na Pang
3fc702510f
Reuse reactor to send new RPC
2019-05-08 10:15:43 -07:00
Na-Na Pang
2d5a9750a0
Manually add echo.proto to pass Portability build test
2019-05-06 16:20:59 -07:00
Na-Na Pang
1ba5f5c701
Modify build file
2019-05-06 14:55:00 -07:00
Na-Na Pang
32e10e618a
address the reference arguments
2019-05-06 10:41:37 -07:00
Na-Na Pang
714e13b426
Delete log
2019-05-06 09:25:46 -07:00
Na-Na Pang
c905f76a5b
Clang format
2019-05-06 09:18:29 -07:00
Na-Na Pang
4198c4fcc6
Merge remote-tracking branch 'upstream/master'
2019-05-03 10:41:12 -07:00
Na-Na Pang
2787dedd70
Modify dependency of callback_test_service
2019-05-03 10:40:49 -07:00
Na-Na Pang
927c2f2c61
Change format
2019-05-02 17:24:54 -07:00
Na-Na Pang
5748665bc5
Add callback completion queue and modify callback streaming ping pong
2019-05-02 17:21:55 -07:00
Esun Kim
e18ed03c04
Made gRPC inialized after entering main function in microbenchmarks.
2019-05-02 16:58:37 -07:00
Na-Na Pang
25128d18c1
Modify unary ping pong to send next rpc in callback function
2019-05-02 15:14:44 -07:00
Na-Na Pang
7d3fdec445
Add microbenchmark for callback completion queue
2019-05-01 11:29:28 -07:00
Na-Na Pang
e70d507abe
Changes based on comment
2019-04-30 16:32:31 -07:00
Karthik Ravi Shankar
e3a0c85960
Merge branch 'master' into grpc_namespace_channel_new
2019-04-30 14:30:03 -07:00
Na-Na Pang
b028141f01
Change streaming ping pong args and add comment
2019-04-30 14:24:40 -07:00
Karthik Ravi Shankar
bc09c70799
Merge pull request #18454 from grpc/grpc_namespace_channel_arguments
...
Bring ChannelArguments to grpc_impl from grpc
2019-04-30 10:16:45 -07:00
Na-Na Pang
8bf138d799
Add copyright
2019-04-26 14:29:57 -07:00
Na-Na Pang
57bc124d3f
Merge remote-tracking branch 'upstream/master'
2019-04-26 12:03:01 -07:00
Na-Na Pang
875d2df399
Modify build file
2019-04-26 10:52:21 -07:00
Na-Na Pang
bbd4eb5028
Add microbenchmark for callback unary ping pong and bidistreaming ping pong
2019-04-26 09:52:12 -07:00
Yash Tibrewal
9345b7e276
s/atleast/at\ least
2019-04-25 17:15:30 -07:00
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.
2019-04-24 16:39:03 -07:00
Mark D. Roth
ce3ff86763
Convert call_combiner to C++.
2019-04-23 15:27:06 -07:00
Karthik Ravi Shankar
858b5cca20
Fix clang_format_code.sh issues and move the internal calls to new name
2019-04-23 11:45:11 -07:00
Nicolas "Pixel" Noble
b9a279c030
Resolving ambiguous call to CreateCustomChannel.
2019-04-22 23:53:53 +02:00
Karthik Ravi Shankar
973fa6950e
Fold Channel into grpc_impl from grpc namespace
2019-04-11 12:04:23 -07:00