donnadionne
2bb20d25a4
Revert "ring_hash LB policy implementation ( #26285 )" ( #26303 )
...
This reverts commit c55c7c065e .
2021-05-19 14:24:52 -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
donnadionne
c55c7c065e
ring_hash LB policy implementation ( #26285 )
...
* ring_hash LB policy (#25697 )
* Ring Hash Policy implementation
* Code review comment fixing
* Fixing code review comments.
* Code review comment fixing
* Fixing reconnect logic
* adding helper method for pick
* Holding on to ref to parent
* first attempt at calling AttemptToConnect
* Fixing state change
* Fixing code review comments
* Fixing the reconnect from channel watcher code
* Fixing the BUILD to include new policy
* Fixing major code review suggestion
* Fixing code review comments
* Fixing code review suggestions
* Initial 2 tests.
* Adding channel id case.
* Fixing code review comments.
* Small change to get the spread of backends
* Add header hashing tests
* Added more tests and debugging
* Fixing Header hash
* Added more tests
* cleanup
* removing debugs
* Fixing code review comments.
* code review fixing
* combining code and match design
* fixing code review comments.
* Fixed IDLE case
* Moving tests
* Fixing code review comments
* Adding more tests according to code review comments.
* Added tests with differetn types of weights
* Adding terminal policy case
* Remove hash_func as there is only 1
* Added nack invalid hash function
* Added NACK cases
* fixing build error
* fixing build
* small warning
* adding regex test
* Adding policy tests
* fixing warning
* fixing warning
* fixing code reivew comments.
* fixing IDLE case
* Code review comments.
* fixing code review comments
* Making a helper function
* fixing reattempt case
* Added afew more tests.
* Adding more tests
* Added backward compatible test
* FIxing the reattempt test
* Clean up
* fixing clang error
* fixing clang error
* Fix logic discovered during code review
* code review comments
* code review comments
* code review comment
* clean up tests
* fixing code review comments
* clean up tests
* Separated test
* Fixing test
* fixing test
* fixing clang error
* Addressing code review suggestions
* Fixing last bit of code review comments
* Fixing flaky tests
* Fixing last bit of code review comments
* clean debugs
* Remove a verbose log
* Relaxing deadline exceeded for 1st RPC until ring is optimized.
Making Hash more efficient for random case.
2021-05-18 16:00:06 -07:00
Mark D. Roth
467c0d742c
fix xds resolver to add XdsClient to channel args even on errors ( #26282 )
2021-05-18 13:55:34 -07:00
donnadionne
f36a31b6aa
Revert "ring_hash LB policy ( #25697 )" ( #26238 )
...
This reverts commit 2aefb26f5d .
2021-05-14 08:52:21 -07:00
donnadionne
2aefb26f5d
ring_hash LB policy ( #25697 )
...
* Ring Hash Policy implementation
* Code review comment fixing
* Fixing code review comments.
* Code review comment fixing
* Fixing reconnect logic
* adding helper method for pick
* Holding on to ref to parent
* first attempt at calling AttemptToConnect
* Fixing state change
* Fixing code review comments
* Fixing the reconnect from channel watcher code
* Fixing the BUILD to include new policy
* Fixing major code review suggestion
* Fixing code review comments
* Fixing code review suggestions
* Initial 2 tests.
* Adding channel id case.
* Fixing code review comments.
* Small change to get the spread of backends
* Add header hashing tests
* Added more tests and debugging
* Fixing Header hash
* Added more tests
* cleanup
* removing debugs
* Fixing code review comments.
* code review fixing
* combining code and match design
* fixing code review comments.
* Fixed IDLE case
* Moving tests
* Fixing code review comments
* Adding more tests according to code review comments.
* Added tests with differetn types of weights
* Adding terminal policy case
* Remove hash_func as there is only 1
* Added nack invalid hash function
* Added NACK cases
* fixing build error
* fixing build
* small warning
* adding regex test
* Adding policy tests
* fixing warning
* fixing warning
* fixing code reivew comments.
* fixing IDLE case
* Code review comments.
* fixing code review comments
* Making a helper function
* fixing reattempt case
* Added afew more tests.
* Adding more tests
* Added backward compatible test
* FIxing the reattempt test
* Clean up
* fixing clang error
* fixing clang error
* Fix logic discovered during code review
* code review comments
* code review comments
* code review comment
* clean up tests
* fixing code review comments
* clean up tests
* Separated test
* Fixing test
* fixing test
* fixing clang error
* Addressing code review suggestions
* Fixing last bit of code review comments
* Fixing flaky tests
* Fixing last bit of code review comments
* clean debugs
* Remove a verbose log
2021-05-13 12:55:23 -07:00
Mark D. Roth
4c40ee3f78
move parse_address and sockaddr_utils out of iomgr directory ( #26077 )
...
* move parse_address and sockaddr_utils out of iomgr directory
* clang-format
* fix python
* fix for import
* fix build file for import
2021-04-30 08:21:58 -07:00
Alisha Nanda
1b26c897c1
Fix build failures in xds_end2end_test ( #26127 )
2021-04-29 13:55:24 -07:00
donnadionne
a994aad0b8
xds_end2end_test test infra: Eds Args refactoring and enhancing WaitForBackend ( #26093 )
...
* Refactoring EdsResourceArgs::Locality to have a vector of Endpoints:
port, health_status, and lb_weight.
As well, Adding RpcOption to WaitForBackend()
* Update WaitForBackend
* Modified WaitForBackend default param
* reuse SeenBackend
* Code review comments
* refactor WaitForAllBackend parameter list
* Fixing tests to ensure they are more strict;
Fixing test code according to code review comments.
* Fixing code review suggestions
* Increasing timeout for StressTest
2021-04-29 11:54:58 -07:00
Lidi Zheng
13e04b4b9c
Reduce xds_end2end_test's error tolerance to 0.05 ( #25738 )
...
* WIP sync API with 1.6k threads doesn't work
* Please don't fail
* Fix the tests
* Spread to DropTest
* Code clean-up and extend delay RPC timeout
* Address comments
* Address comments
* Deflake MSAN
* Make MSAN more robust && normal runs faster
* Address comments
* Remove the clock change in fault injection filter
* Polish comments && stricten the connection timeout
2021-04-28 17:47:09 -07:00
mkruskal-google
2bf75aa68a
Add optional suffix to client-side stub objects ( #25996 )
...
* Adding suffix for stats handling to gRPC
* Fixing typo
* Fixing codegen, adding tests
* Fixing test failures
* Adding nullptr default in StubOptions
* Updating golden test file
* Replacing std::make_unique with absl::make_unique for pre-C++14 compatibility
* Fixing clang format errors
* Reuse stub options for generic stubs
* Cleaning up compiler warnings in GenericStub
2021-04-26 17:19:43 -07:00
Yash Tibrewal
4768210ec8
s/OnServingStatusChange/OnServingStatusUpdate ( #26010 )
...
* s/OnServingStatusChange/OnServingStatusUpdate
* Update python files
2021-04-26 15:36:35 -07:00
Esun Kim
460898f11c
Migrated from grpc_error_string to grpc_error_std_string ( #26068 )
...
* Added grpc_error_std_string
* Migrated to grpc_error_std_string
2021-04-23 16:31:54 -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
donnadionne
89f7e53dbc
Fixing flake in AllServerUnavailbleFailFast by increasing the RPC ( #26015 )
...
timeout from 1 second to 5: this ensures there is enough time for
communication with xDS server to get established.
2021-04-21 10:35:00 -07:00
donnadionne
5bce484c35
Fixing a buildifier warning, helping with future imports. ( #26036 )
2021-04-21 10:34:47 -07:00
Mark D. Roth
feff79abc7
add test-only channel arg to set per-channel xDS bootstrap config ( #25936 )
...
* pass XdsClient to LB policies via channel args
* add channel arg for overriding bootstrap config on a per-channel basis
* change tests to use new channel arg approach -- currently failing for server-side tests
* use the same channel args approach on the server side
* clang-format
* fix CircuitBreakingMultipleChannelsShareCallCounter test
* fix XdsEnabledServerTest test
* add TODO
* clang-format
* generate_projects
* fix clang-tidy
* fix build
* attempt to fix python
2021-04-21 10:16:33 -07:00
AJ Heller
5cda00427d
Remove use of C++20 initializers ( #26028 )
...
Since this codebase only supports C++11 at this point, doing a build
with strict warnings will fail using C++20 initializers.
```
$ bazel build --define=use_strict_warning=true :all //src/core/... //src/compiler/... //test/...
test/cpp/interop/grpclb_fallback_test.cc:154:9: error: designated
initializers are a C++20 extension [-Werror,-Wc++20-designator]
.mutate_fd = TcpUserTimeoutMutateFd,
```
See
https://source.cloud.google.com/results/invocations/f9710ed0-994f-488f-adb8-a7e987f1620d/targets/grpc%2Fcore%2Fpull_request%2Flinux%2Fgrpc_bazel_build/log
2021-04-20 14:37:00 -07:00
Lidi Zheng
735c7047aa
[C++] Add admin and reflection to xds interop binaries ( #25964 )
...
* Add admin and reflection to xds interop binaries
* Prepare for https://github.com/grpc/grpc/pull/25978
* Remove _xds rules
2021-04-19 11:04:42 -07:00
Lidi Zheng
3a19648100
Increase RPCs in fault injection tests ( #25984 )
2021-04-16 14:37:28 -07:00
Lidi Zheng
2210819f85
Remove _xds suffix Bazel rules completely ( #25980 )
...
* Reduce the usage of _xds Bazel rules
* Inject DISABLED_XDS_PROTO_IN_CC to admin_services_end2end_test
* Remove _xds suffix Bazel rules completely
* Remove the _xds rules from imports
* Simplify the ifndef usage in admin_services_end2end_test
2021-04-15 12:50:00 -07:00
Yash Tibrewal
23152e74ce
Enable channelz for xds_interop_client and xds_interop_server ( #25939 )
...
* Enable channelz for xds_interop_client and xds_interop_server
* Regenerate projects
2021-04-13 15:05:07 -07:00
Yash Tibrewal
8028cc874d
Reduce XdsServerFilterChainMatchTest flakiness ( #25956 )
2021-04-13 14:31:07 -07:00
Yash Tibrewal
3409eddcd1
xds-end2end-test server-side LDS updates cleanup ( #25906 )
2021-04-07 12:29:47 -07:00
Lidi Zheng
8eaaa3d7b6
Make ADS timeout increase from 500 to 2000 ( #25844 )
2021-04-01 12:03:55 -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
67886fbffa
xds_end2end_test ipv6 address format fix ( #25837 )
...
* xds_end2end_test ipv6 address format fix
* Update expected error string
2021-03-29 15:40:11 -07:00
Yash Tibrewal
da6cf22e29
Increase the retry count for XdsServerSecurityTest ( #25830 )
2021-03-29 14:43:04 -07:00
Yash Tibrewal
53ba4a101e
Implement FilterChainMatch algorithm ( #25757 )
...
* Implement FilterChainMatch logic
* Add tests for transport protocol too
* Tests for duplicate NACKing
* Introduce ConnectionManager as an interface for config fetchers
* Do not parameterize IncrementIfNonZero
* Some formatting
* Reviewer comments
* Add filter chain match information for duplicate match error
* Reviewer comments
* Some cleanup
* Reviewer comments
* Reviewer comments
* Reviewer comments
* Clang-tidy
2021-03-25 14:12:46 -07:00
Esun Kim
10b17f3739
Added mock_stream_test ( #25103 )
2021-03-25 14:04:39 -07:00
Lidi Zheng
3652ec5db9
Apply the xds-specific Bazel rule to admin API ( #25799 )
2021-03-23 17:55:33 -07:00
donnadionne
4350d18d0f
Removing circuit_breaking and timeout environment variable guard to ( #25793 )
...
enable these features by default.
2021-03-23 17:04:46 -07:00
Lidi Zheng
4baf35f314
Remove fault injection environmental variable guard ( #25792 )
...
* Remove fault injection env guard
* Add the RejectsHttpFilterWithoutConfig test back
2021-03-23 16:49:30 -07:00
Lidi Zheng
b457f43227
Implement C++ Admin Interface API ( #25753 )
...
* Implement C++ Admin Interface API
* Address reviewer's requests
* Remove static asserts for raw pointers
* Make sanity tests happy
* Windows: pacify conflict between ifndef and macros
* Disable admin services test on iOS
* Make iOS happy by:
* Letting grpcpp_admin conditionally depend on grpcpp_csds
* Fix an unexpected side-effect of dependency update
2021-03-23 09:53:12 -07:00
Lidi Zheng
1040fbdb9f
Re-introduce "CSDS Implementation" ( #25762 )
...
* Revert "Revert "CSDS Implementation (#25038 )" (#25745 )"
This reverts commit 98fd4e1e36 .
* Add xDS special Bazel build rules
* Add 2 todos to remove the added rules
2021-03-22 13:14:19 -07:00
Vijay Pai
33d7aaffe8
Fix const-ness of callback client read RPC requests ( #25763 )
...
* Fix const-ness of callback client read RPC requests
* Fix golden file
2021-03-19 01:12:28 -07:00
apolcyn
a98819007d
Revert "Convert grpc_ares_wrapper to C++ ( #25108 )" ( #25761 )
...
This reverts commit 2ee70175bd .
2021-03-18 21:55:14 -07:00
apolcyn
2ee70175bd
Convert grpc_ares_wrapper to C++ ( #25108 )
2021-03-17 13:47:29 -07:00
Lidi Zheng
98fd4e1e36
Revert "CSDS Implementation ( #25038 )" ( #25745 )
...
This reverts commit 27de24a38e .
2021-03-17 13:38:47 -07:00
Esun Kim
d30b04ed7b
Fix status error ( #25731 )
2021-03-17 18:00:44 +01:00
donnadionne
26fd0ce3c9
Generating hash for ring_hash policy ( #25415 )
2021-03-16 18:24:35 -07:00
Lidi Zheng
27de24a38e
CSDS Implementation ( #25038 )
...
* Implement the xDS Config Dump as CSDS in Core
* Revemp the logic of caching and constructing the CSDS response
* Unref created error
* Fix the clang tidy complains
* Resolve comments about symbol preload and Json ctor
* Improve readability
* Merge with new ADS logic && support latest CSDS
* Refactor the version/client_status logic
* Add support for error_state
* Add support for does_not_exist
* Add node information
* Fix the ProtoBuf segfault
* More test cases
* Refactor to use bytes as cache instead of JSON
* Apply clang_tidy's suggestion
* Resolve reviewer's requests
* Tiny stylish fixes && make sanity test happy
* WIP: still working on the matchers
* Update a bunch of matchers
* Improve readability a bit
* Resolve reviewer's suggestions
* Resolve reviewer's comments
* Make Unpack fail fast
2021-03-16 18:17:37 -07:00
Yash Tibrewal
a622fe2c97
xDS LDS parsing changes: NACK on use_original_dst ( #25687 )
...
* xDS LDS parsing changes: NACK on use_original_dst
* Reviewer comments
* Unused variable
2021-03-16 10:36:04 -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
Yonathan Randolph
a985978d82
grpc_cli: allow multiple colon-separated paths in --proto_path ( #24187 )
...
Co-authored-by: Yash Tibrewal <yashkt@google.com>
Co-authored-by: AJ Heller <hork@google.com>
2021-03-12 16:52:48 -08:00
Yash Tibrewal
3c9f3972e3
Revert "xDS status notifier ( #25321 )" ( #25702 )
...
This reverts commit 81e90432e1 .
2021-03-12 08:54:34 -08:00
Mark D. Roth
d2c2d66a03
xds: Ignore HTTP filters if LDS resource is v2. ( #25694 )
2021-03-11 17:05:16 -08:00
Lidi Zheng
e34b0a73c6
Fix a typo in fault injection ( #25693 )
2021-03-11 14:47:39 -08:00
Yash Tibrewal
e7536952a3
Filters parsing logic for servers ( #25609 )
...
* Filters parsing logic for servers
2021-03-10 21:30:37 -08:00
Yash Tibrewal
0e0bc355ce
xDS changes for server listener resource name template ( #24965 )
...
* xDS: Server listener resource name template changes
* Reviewer comments
2021-03-10 15:35:41 -08:00