Mark D. Roth
81a4ea444e
xds: remove legacy EDS-only workflow ( #28274 )
...
* xds: remove legacy EDS-only workflow
* remove unused constants
* remove unused data member
2021-12-06 08:00:15 -08:00
Yash Tibrewal
3689072979
xDS: Add graceful shutdown for old connections on listener resource update ( #28154 )
...
* xDS: Add graceful shutdown for old connections on listener resource update
* Add TODOs for review
* Reviewer comments
* Reviewer comments
* Fix merge
* Fix comment
* s/GRPC_ARG_DRAIN_GRACE_TIME_MS/GRPC_ARG_SERVER_CONFIG_CHANGE_DRAIN_GRACE_TIME_MS
2021-12-02 15:42:47 -08:00
Mark D. Roth
9722651156
xds_end2end_test: remove num_balancers from test suite and remove dependence on fake resolver for xDS channel ( #28245 )
...
* xds_end2end_test: remove num_balancers from test suite
* fix clang-tidy
2021-12-01 16:28:15 -08:00
Yash Tibrewal
25446c468a
Support RDS updates on the server ( #27851 )
...
* Port changes from #27388
* Reviewer comments
* Fix resource timeout issue
* Cleanup
* Fix clang-tidy
* Revert benchmark
* Restructure
* clang-tidy
* Automated change: Fix sanity tests
* Partial commit
* Reviewer comments
* Fixes
* Reviewer comments
* Reviewer comments
* Reviewer comments
* Reviewer comments
* clang-format
* Fix FaultInjection tests
* clang-tidy
Co-authored-by: yashykt <yashykt@users.noreply.github.com>
2021-11-18 16:10:31 -08:00
Esun Kim
11f440775b
Fix xds_end2end_test dyld ( #28133 )
2021-11-18 16:08:41 -08:00
Mark D. Roth
1050eedb87
enable clang-tidy readability-static-definition-in-anonymous-namespace check ( #28033 )
2021-11-17 07:48:43 -08:00
Mark D. Roth
fff84402ac
Second attempt: XdsClient: fix resource timeout behavior ( #28088 )
...
* Revert "Revert "XdsClient: fix resource timeout behavior (#27860 )" (#28032 )"
This reverts commit 817eed0928 .
* use the right status code enum
2021-11-15 14:53:15 -08:00
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
2021-11-15 08:23:51 -08:00
Craig Tiller
817eed0928
Revert "XdsClient: fix resource timeout behavior ( #27860 )" ( #28032 )
...
This reverts commit 7fdb40d8b8 .
2021-11-12 19:58:16 -08:00
Mark D. Roth
7fdb40d8b8
XdsClient: fix resource timeout behavior ( #27860 )
...
* XdsClient: fix resource timeout behavior
* fix clang-tidy
* more clang-tidy fixes
* yet more clang-tidy
2021-11-12 12:17:45 -08:00
Craig Tiller
0ea2c37263
Revert "New resource quota integration ( #27643 )" ( #28014 )
...
This reverts commit 39f0877d25 .
2021-11-11 14:26:19 -08:00
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>
2021-11-10 22:53:04 -08:00
ZhenLian
2e14f6fa70
Support Custom Post-handshake Verification in TlsCredentials ( #25631 )
...
* custom verification refactoring - post-handshake verification
2021-11-10 13:45:52 -08:00
Yash Tibrewal
00e8a2d085
xds_end2end_test: Only start backends when needed ( #27911 )
...
* xds_end2end_test: Fix flakiness on WaitForLdsNack
* xds_end2end_test: Only start the server when we want
* Revert WaitForNack changes
* Fixes
* Fix CsdsShortAdsTimeoutTest
* Fix sanity
2021-11-04 14:35:25 -07:00
Mark D. Roth
3bde8305cc
Second attempt: Don't build RLS on mobile ( #27878 )
...
* Revert "revert changes to not build RLS on mobile (#27875 )"
This reverts commit 73ad459c51 .
* new approach using multiple select() calls
2021-11-01 10:26:01 -07:00
Mark D. Roth
73ad459c51
revert changes to not build RLS on mobile ( #27875 )
...
* Revert "fix mobile builds to properly exclude xDS (#27855 )"
This reverts commit 64d026e234 .
* Revert "don't build RLS on mobile (#27838 )"
This reverts commit 2a69c525b8 .
2021-10-29 12:00:00 -07:00
Mark D. Roth
08c7b254bd
provide more slack in RLS end2end tests ( #27842 )
2021-10-27 15:49:54 -07:00
Mark D. Roth
2a69c525b8
don't build RLS on mobile ( #27838 )
...
* don't build RLS on mobile
* buildifier
* fix build rules to avoid "Illegal ambiguous match" bazel error
2021-10-27 15:46:00 -07:00
Mark D. Roth
06b5061d35
change CSDS to populate new generic_xds_configs field ( #27794 )
2021-10-26 13:24:27 -07:00
Yash Tibrewal
9ac9a013fc
Update RDS parsing for use on servers ( #27715 )
...
* Update RDS parsing for use on servers
* Unused variable
* Reviewer comments
* Automated change: Fix sanity tests
* Fix tests
* Reviewer comments
* Reviewer comments
* clang-tidy
* Reviewer comments
* Fix test
* Reviewer comments
* Reviewer comments
Co-authored-by: yashykt <yashykt@users.noreply.github.com>
2021-10-26 00:32:35 -07:00
Mark D. Roth
5406048ef6
Second attempt: RLS LB policy ( #27748 )
...
* allow connectivity state watching to work on lame channels
* Revert "Revert RLS LB policy (#27738 )"
This reverts commit 4567af504e .
* fix build
* fix lame_client_test
2021-10-20 07:41:07 -07:00
Craig Tiller
f1f3ac7f02
Revert "Revert "allow connectivity state watching to work on lame channels ( #27747 )" ( #27766 )" ( #27774 )
...
This reverts commit 790ce5c97f .
2021-10-19 15:28:31 -07:00
Craig Tiller
790ce5c97f
Revert "allow connectivity state watching to work on lame channels ( #27747 )" ( #27766 )
...
This reverts commit a2bd7b8440 .
2021-10-19 08:16:29 -07:00
Mark D. Roth
d6a0c0b8b5
xds_end2end_test: allow setting Listener to use in SetRouteConfiguration() ( #27756 )
...
* xds_end2end_test: allow setting Listener to use in SetRouteConfiguration()
* clang-format
2021-10-19 07:36:54 -07:00
Mark D. Roth
a2bd7b8440
allow connectivity state watching to work on lame channels ( #27747 )
...
* allow connectivity state watching to work on lame channels
* fix build
* fix lame_client_test
2021-10-18 14:47:47 -07:00
Mark D. Roth
4567af504e
Revert RLS LB policy ( #27738 )
...
* Revert "fix for import of RLS LB policy (#27736 )"
This reverts commit cfcdbc4905 .
* Revert "RLS LB policy (#27352 )"
This reverts commit 84ddc3289f .
2021-10-15 12:19:57 -07:00
Mark D. Roth
cfcdbc4905
fix for import of RLS LB policy ( #27736 )
2021-10-15 07:56:48 -07:00
Mark D. Roth
84ddc3289f
RLS LB policy ( #27352 )
...
* RLS LB policy plugin implementation
* Add RLS tests
* rls proto
* generate projects
* Fix adding child policy to child policy map
* Fix issues
* Fix rotten bits
* generate projects
* revert some strange changes
* First batch of fixes
* second batch of addressing comments
* generate_projects
* 3rd batch of fixes
* generate_projects
* 4th batch of fix
* 5th batch of fix
* Empty commit to trigger github PR refresh
* Add insecure build
* generate project
* update picker in a closure
* mutex guard audit
* clang-format
* Aggregate child policy states
* Use OrphanablePtr on ChildPolicyOwner()
* More fixes on comments
* Remove include grpc_security from rls.cc
* Fix key builder test as we removed RlsFindPathFromMetadata
* Update rls proto and add multi-target capability
* code changes to fix build after merging master
* remove support for insecure builds
* WIP
* add LB policy metadata lookup API
* add API for creating errors from C++ strings
* add missing include
* finished updating JSON parsing
* use DualRefCounted<> for ChildPolicyWrapper
* use grpc_core::Mutex instead of std::recursive_mutex
* add lock annotations and fix some lifetime issues
* misc fixes and cleanups
* simplify child policy connectivity state machine
* add comment about hopping into ExecCtx
* don't use wait_for_ready for RLS call
* extraKeys and constantKeys support
* add lock annotations for child policy wrapper connectivity state
* improve logging
* simplify child policy state handling in picker
* use C++ style comments
* remove rls_config.proto, since it's not needed
* rewrote tests
* fix build
* fix copyright headers
* clang-format
* appease clang-tidy
* remove unnecessary dependendency on grpclb
* buildifier
* remove illegal term
* remove unneeded includes
* clang-format
* fix clang-tidy
* fix build
* move class declaration into .cc file
* clang-tidy again
* fix build
* reorganize code and misc cleanups
* clang-format
* fixed a bunch of asan bugs; still some left to debug
* fix asan problem
* make test work on IPv6-only machines
* move LRU list handling into Cache::Entry and add lock annotations
* use preincrement instead of postincrement
* fix deadlock
* add more FIXMEs
* clean up backoff timer logic
* fix build from merge
* clang-format
* fix include path to work on podspec builds
* clean up picker logic
* clang-format
* update rls.proto
* populate reason and stale_header_data in RLS request
* improve logging and fix some cache size type issues
* clang-format
* add some TODOs about a better way to expose channel creds to LB policies
* centralize handling of channel's default authority
* clang-format
* fix backup poller bug
* fix handling of call creds and authority on RLS channel
* remove unused params
* clang-format
* use two-phase update for child policies to avoid deadlocks
* fix portability issue
* minor cleanups
* update for change in grpc_error_get_status() API
* change test to store RLS requests and responses in proto form
* clang-format
* account for test slowdown factor in timeouts
* fix tsan failure and channelz linkage
* fix RLS authority death test
* fix test to not try to connect to target that should not work
* remove illegal term
* cacheSizeBytes is a required field
* add missing BUILD deps from merge
* add tests for connectivity state reporting and fix bugs found
* fix BUILD sanity
* buildifier
* fix BUILD package path
* fix bugs related to child policy lifetime and updates
* remove unnecessary srand() call from grpc_init()
* add test for two cache entries with the same target
* update rls.proto
* change RLS config parser test to support GRPC_ERROR_IS_ABSEIL_STATUS
* update upb codegen
* fix include path
* add env var guard
* avoid duplication of CountedService
* generate_projects
* add upper limit for cacheSizeBytes
* fix build
Co-authored-by: Muxi Yan <mxyan@google.com>
2021-10-14 12:53:46 -07:00
Mark D. Roth
6339b03ada
Revert "Revert "start splitting up xds_end2end_test ( #27702 )" ( #27725 )" ( #27726 )
...
This reverts commit 9177c5324a .
2021-10-14 11:41:45 -07:00
Mark D. Roth
464c1c519f
switch to new location of TypedStruct and ORCA protos ( #27700 )
...
* upgrade xDS protos
* switch to new location of TypedStruct and ORCA protos
* fix sanity
2021-10-14 10:28:24 -07:00
Mark D. Roth
9177c5324a
Revert "start splitting up xds_end2end_test ( #27702 )" ( #27725 )
...
This reverts commit 69a978231b .
2021-10-14 08:47:17 -07:00
Mark D. Roth
69a978231b
start splitting up xds_end2end_test ( #27702 )
...
* move test xDS server to its own library
* move xds_end2end_test to xds subdir, and refactor CountedService
* add TODO
* fix sanity
2021-10-13 13:11:53 -07:00
Mark D. Roth
2b813d2bff
grpclb: implement subchannel caching ( #27657 )
...
* grpclb: implement subchannel caching
* code review changes
* fix clang tidy
* code review changes
2021-10-13 12:14:00 -07:00
Yash Tibrewal
a61bb8ed5b
Move service config code out of client_client to its own target ( #27683 )
...
* Move service config code out of client_client to its own target
* Fix BUILD
* Fix test build
* Reviewer comments
* Reviewer comments
* Automated change: Fix sanity tests
* Reviewer comments
Co-authored-by: yashykt <yashykt@users.noreply.github.com>
2021-10-12 18:30:04 -07:00
Ashitha Santhosh
a1db97be90
Revert "Revert "Revert "Revert "File watcher authorization policy provider implementation"" ( #27605 )" ( #27644 )" ( #27645 )
...
This reverts commit b8e01f73a0 .
2021-10-08 15:52:13 -07:00
AJ Heller
b8e01f73a0
Revert "Revert "Revert "File watcher authorization policy provider implementation"" ( #27605 )" ( #27644 )
...
This reverts commit 5912aedb2b .
2021-10-07 16:45:30 -07:00
Esun Kim
ec4c61a3ae
Various fixes on absl::Status migration ( #27557 )
2021-10-07 14:49:59 -07:00
Ashitha Santhosh
5912aedb2b
Revert "Revert "File watcher authorization policy provider implementation"" ( #27605 )
...
* Revert "Revert "File watcher authorization policy provider implementation (#26779 )" (#27591 )"
This reverts commit a1ad74f7af .
* Remove license comment
2021-10-07 09:54:23 -07:00
Mark D. Roth
3d83dd3776
Revert "Revert "centralize handling of channel's default authority ( #27544 )" ( #27616 )" ( #27624 )
...
This reverts commit 0611f7c9b3 .
2021-10-06 12:15:55 -07:00
Mark D. Roth
0611f7c9b3
Revert "centralize handling of channel's default authority ( #27544 )" ( #27616 )
...
This reverts commit f0a0628795 .
2021-10-06 07:26:24 -07:00
Mark D. Roth
f0a0628795
centralize handling of channel's default authority ( #27544 )
...
* centralize handling of channel's default authority
* clang-format
* fix backup poller bug
2021-10-05 11:57:47 -07:00
Craig Tiller
a1ad74f7af
Revert "File watcher authorization policy provider implementation ( #26779 )" ( #27591 )
...
This reverts commit 310accd077 .
2021-10-05 09:12:08 -07:00
Craig Tiller
ce0aba2577
Increase XDS e2e shard count ( #27582 )
...
Provides a 40% reduction in runtime for this test internally, and since
it's on our critical path for landing changes, this is significant.
2021-10-04 17:22:13 -07:00
Ashitha Santhosh
310accd077
File watcher authorization policy provider implementation ( #26779 )
...
* File watcher authorization policy provider implementation
2021-10-04 14:22:45 -07:00
Lidi Zheng
9cd68439a2
Change the time-getting logic in xds test to what ExecCtx does ( #27467 )
2021-09-24 10:38:15 -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
Esun Kim
9b3f75d322
Added absl::Status support to error_utils ( #27358 )
2021-09-20 18:03:17 -07:00
donnadionne
1caff522e4
Adding a log to make logging in WaitForAllBackends and WaitForBackend ( #27365 )
...
consistent.
This helps to uncover a case where the first test in the shard seems to
encounter longer delays than the rest of the tests.
2021-09-20 11:48:43 -07:00
Alisha Nanda
0a502d8f2e
Fix race between Read and ServerContext::IsCancelled in Sync API ( #27056 )
...
* Fix OOM issues in qps tests
* Add more verbose logging.
* Fix clang error
* Fix race between IsCancelled and Read
* Fix build errors from using bool in C code
2021-09-15 12:29:02 -07:00
donnadionne
10f218030d
xDS retry policy should be considered present even if there are no supported policies in retry_on ( #27315 )
...
* Ensure that per route retry policy (even when there are no supported
retry_on statuses) still takes precedence over virtual host level retry
policy.
Added a test to guard this case.
* Taking care of code review comments and removing unnecessary block
2021-09-13 18:13:45 -07:00
Lidi Zheng
15184d30ad
Fix injected abort error not recorded after injected delay ( #27215 )
...
* Fix injected abort error not recorded after injected delay
* Add the abort after delay test case
* Make Kokoro's clang_format happy
2021-09-13 09:52:20 -07:00
Mark D. Roth
3763be8796
add APIs for creating errors from C++ strings ( #27310 )
...
* add API for creating errors from C++ strings
* add missing include
2021-09-10 16:15:36 -07:00
Yash Tibrewal
72171a3326
De-experimentalize XdsCredentials and XdsServerCredentials API ( #26544 )
...
* De-experimentalize XdsCredentials and XdsServerCredentials API
* Use GRPC_DEPRECATED
2021-09-09 16:22:25 -07:00
Yash Tibrewal
362aff3458
xDS: Remove environmental variable guard for security ( #27290 )
2021-09-09 16:21:15 -07:00
Yash Tibrewal
7fd731f704
De-experimentalize XdsServerBuilder ( #27296 )
2021-09-09 14:14:11 -07:00
Yash Tibrewal
1a009cf4e5
xDS Security: Use new way to fetch certificate provider plugin instance config ( #27264 )
...
* xDS Security: Use new way to fetch certificate provider plugin instance
config
* Reviewer comments
* Additional fields to NACK
* Move NACKing tests for tls_certificates and tls_certificate_sds_securet_configs to client-side
2021-09-09 14:12:05 -07:00
Yash Tibrewal
f26c107651
xDS server serving status: Use a struct to allow more fields to be added in the future ( #27242 )
2021-09-09 11:11:57 -07:00
Mark D. Roth
f3497eb790
implement improved xDS NACK semantics ( #27276 )
...
* refactor xDS response parsing
* fix build
* implement improved xDS NACK semantics
* fix clang-tidy
* fix test
2021-09-08 13:37:07 -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
Mark D. Roth
e468b00c56
refactor xDS response parsing ( #27272 )
...
* refactor xDS response parsing
* fix build
2021-09-08 07:57:38 -07:00
Mark D. Roth
2cb3831c83
fix retry code to fail batches instead of creating attempt if previously cancelled from surface ( #27217 )
...
* fix retry code to fail batches instead of creating attempt if previously cancelled from surface
* add xDS end2end tests covering the FI use-case that triggered the bug
* fix memory leak
2021-09-01 15:47:16 -07:00
Yash Tibrewal
cb2e7554a3
xds_end2end_test: Fix UnsupportedHttpFilter test on aws ( #27147 )
2021-08-27 09:10:46 -07:00
Ta-Wei Tu
7dd1da9e1d
Break after WriteLast() ( #27165 )
...
If we continue to call `Write()` after `WriteLast()` (because client is still sending us data and thus `Read()` returns `true`), the buffer might become invalid and results in assertion failures.
2021-08-27 23:19:12 +08:00
Ashitha Santhosh
1ff1f8fd83
SDK authorization filter. ( #26468 )
...
* SDK authorization filter.
2021-08-25 21:00:35 -07:00
donnadionne
59fc02a94b
Enabling Ring Hash by default. ( #27111 )
2021-08-24 19:59:19 -07:00
Yash Tibrewal
6da9eb9f3f
xDS PSM Server Security: Nack unsupported require_sni and ocsp_staple_policy values ( #26878 )
...
* Nack unsupported require_sni and ocsp_staple_policy values
* Reviewer comments
2021-08-24 10:50:08 -07:00
AJ Heller
6ba4a92af7
Reorder gtest/gmock headers ( #27070 )
...
Per the style guide (or spirit thereof), these should be placed with the other external/third_party headers.
2021-08-20 14:36:08 -07:00
Yash Tibrewal
0ab13090e7
Nack certain unsupported fields in CertificateValidationContext ( #26880 )
...
* Nack certain unsupported fields in CertificateValidationContext
* Regenerate projects
* Reviewer comments
2021-08-20 11:03:20 -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
AJ Heller
4ba3fa52b9
Clean up some instances of -Wunreachable-code-aggressive ( #27054 )
...
See https://github.com/grpc/grpc/pull/26951 for why this is not enforced
at the moment.
2021-08-18 11:43:46 -07:00
AJ Heller
58f8f5ced3
Add macro to define gtest death_test_style using an older syntax ( #27042 )
...
This temporarily unblocks a related gtest upgrade. The ultimate goal is
to upgraade our gtest dependencies, but I don't have the cycles to
manage a potentially messy migration until at least next week. This PR
is coordinated with an internal change.
2021-08-17 17:12:28 -07:00
Yash Tibrewal
533f02642d
Disable xds_credentials_test on iOS ( #27043 )
2021-08-17 13:33:05 -07:00
Mark D. Roth
9f782faa34
xds: remove env var protection for retries ( #27039 )
2021-08-17 13:23:25 -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
Tamir Duberstein
34338e5798
Avoid undefined behavior in pthread TLS ( #26999 )
...
See code commentary for an explanation.
Add an additional constructor to allow `log_linux.cc` to compile with
GPR_PTHREAD_TLS. Without it:
```
../../third_party/grpc/src/core/lib/gpr/log_linux.cc:78:33: error: no viable conversion from 'int' to 'grpc_core::PthreadTlsImpl<long>'
static GPR_THREAD_LOCAL(long) tid = 0;
^ ~
../../third_party/grpc/src/core/lib/gpr/tls.h:64:3: note: candidate constructor not viable: no known conversion from 'int' to 'const grpc_core::PthreadTlsImpl<long> &' for 1st argument
PthreadTlsImpl(const PthreadTlsImpl&) = delete;
^
1 error generated.
```
2021-08-12 19:25:38 -07:00
Tamir Duberstein
00c03c55ff
Implement type safety for TLS ( #26942 )
...
* Implement type safety for TLS
This is mostly free when compiler support is available, but requires
careful templating when implemented using pthread.
Significantly slimmed the tls.h interface; it now only defines the "TLS
keyword" for each supported compiler, delegating enforcement of correct
usage (i.e. must be static) to the compiler itself.
Implemented implicit conversion for the pthread wrapper so it can be
used (mostly) the same as native support. Notable exception to this is
that static_cast<void*> is needed when printing a pointer stored in TLS
as %p.
* Use GPR_THREAD_LOCAL macros consistently
2021-08-11 13:24:26 -07:00
Yash Tibrewal
404e56b2d9
Fix XdsEnabledServerTest ( #26956 )
2021-08-10 10:47:12 -07:00
Tamir Duberstein
3fd01fabae
Add thread safety annotations ( #26871 )
...
This exposes a bug in clang, reported upstream as
https://bugs.llvm.org/show_bug.cgi?id=51368 .
The clang bug is mitigated using a fake scoped lock; that allows the
current code to compile while also serving as a change detector to
prevent it from going stale; if the compiler bug is fixed, the compiler
will see an overlapping locking requirement, and reject this code, which
will prompt a human being to remove this workaround.
2021-08-06 15:44:22 -07:00
Yash Tibrewal
29d220a0ef
Re-experimentalize XdsServerBuilder ( #26892 )
...
* Re-experimentalize XdsServerBuilder
* Fix compiler issue
2021-08-06 10:29:28 -07:00
Tamir Duberstein
013e67a029
Deprecate grpc{_core,::internal}::WaitUntil ( #26866 )
...
It is not possible for such a function to be implemented in a way that
is understood by annotalysis. Mark it deprecated and replace instances
of its use with direct mutex/condvar usage.
Add a bunch of missing thread safety annotations while I'm here.
2021-08-04 17:03:25 -07:00
Mark D. Roth
639b7acdfa
fix client_lb_end2end_test ClientLbPickArgsTest.Basic flakiness ( #26868 )
...
* fix client_lb_end2end_test ClientLbPickArgsTest.Basic flakiness
* clang-format
2021-08-04 09:46:47 -07:00
Tamir Duberstein
86c9de8231
Remove `grpc_core::WaitUntilWith{Deadline,Timeout}` ( #26867 )
...
These functions are essentially unused.
2021-08-03 15:46:36 -07:00
Mark D. Roth
6b71ec3704
LB policy API improvements ( #26481 )
...
* LB policy API improvements
* clang-format
* fix build
* a bit more cleanup
* use absl::variant<> for pick result
* fix retry_lb_drop test
* clang-format
* fix grpclb_end2end_test
* fix xds_end2end_test
* try to make variant code a bit cleaner
* clang-format
* fix memory leak
* fix build
* clang-format
* fix error refcount bug
* remove PickResult factory functions
* clang-format
* add ctors to structs
* clang-format
* fix clang-tidy
* update comments
* move LB recv_trailing_metadata callback instead of copying it
* use Match() instead of providing PickResult::Handle()
* don't use Match() for now, since it breaks lock annotations
* update retry_lb_fail test
2021-08-03 09:43:07 -07:00
Yash Tibrewal
49b5f9c420
Fix XdsServerSecurityTest ( #26817 )
2021-07-29 13:28:18 -07:00
donnadionne
7eaf37bce5
Adding retry policy ( #26566 )
2021-07-23 12:17:17 -07:00
Mark D. Roth
3104a9964c
xds: validate that terminal filters come at the end of the filter chain ( #26742 )
...
* xds: validate that terminal filters come at the end of the filter chain
* clang-format
2021-07-23 08:06:58 -07:00
Craig Tiller
4f9828fe0b
Remove unnecessary include ( #26761 )
2021-07-22 16:19:34 -07:00
Mark D. Roth
246c57829b
xds: notify watchers when NACKing resource updates ( #26757 )
...
* xds: notify watchers when NACKing resource updates
* check status of failed RPC when waiting for NACK
2021-07-22 13:12:19 -07:00
Alisha Nanda
d73ec07fe7
Fix small typo in xds end2end test ( #26685 )
2021-07-14 10:53:55 -07:00
Yash Tibrewal
c52005c161
NACK xDS updates when certificate provider instace names are unrecognized ( #26614 )
...
* NACK xDS updates when certificate provider instace names are unrecognized
* Reviewer comments
* Reviewer comments
* Clang format
* Fix compilation error
2021-07-11 22:10:04 -07:00
Lidi Zheng
b97693d572
[Roll Forward] Tighten the error tolerance requirement by 100x ( #26626 )
...
* Tighten the error tolerance requirement by 10x
* Make it 5 sigma instead of 4.5
* Rewrap comments
* Loosen the max concurrent requests in certain test cases
2021-07-09 10:33:43 -07:00
Yash Tibrewal
670a26caef
NACK xDS updates where transport_name is not recognized ( #26612 )
...
* NACK xDS updates where transport_name is not recognized
* Reviewer comments
2021-07-08 11:14:07 -07:00
Yash Tibrewal
095045b31c
NACK xds updates requiring client certificates when no validation certificate provider instance is mentioned ( #26613 )
2021-07-07 13:22:13 -07:00
Yash Tibrewal
8b5fbf8900
TLS Security Connector: Add an always-fail-handshaker when certificates are not ready ( #26561 )
...
* TLS Security Connector: Add an always-fail-handshaker when certificates are not ready
* Reviewer suggestion
* Add test
2021-07-04 12:39:29 -07:00
Yash Tibrewal
4daedf0233
De-experimentalize XdsServerBuilder ( #26543 )
2021-07-02 19:33:15 -07:00
Lidi Zheng
f198fb5b41
Revert "Tighten the error tolerance requirement by 100x ( #26588 )" ( #26593 )
...
This reverts commit f835f3f97c .
2021-07-01 16:21:12 -07:00
Lidi Zheng
f835f3f97c
Tighten the error tolerance requirement by 100x ( #26588 )
...
* Tighten the error tolerance requirement by 10x
* Make it 5 sigma instead of 4.5
* Rewrap comments
2021-07-01 09:48:37 -07:00
Mark D. Roth
34bf26357b
Change StringMatcher to not support case-insensitive regex matching. ( #26567 )
...
* Change StringMatcher to not support case-insensitive regex matching.
* clang-format
* clang-tidy
2021-06-29 09:25:33 -07:00
Vijay Pai
cf1ebf7387
Remove experimental tag from uses of the C++ callback API ( #26495 )
2021-06-20 00:47:07 -07:00
Yash Tibrewal
bb994526ba
Fix ExistingRpcsOnResourceDeletion flakiness ( #26419 )
2021-06-02 18:48:44 -07:00
Lidi Zheng
a36199b2d5
Tighten the probability requirement from 99.99% to 99.995% ( #26408 )
...
* Tighten the probability requirement from 99.99% to 99.995%
* Update comments
2021-06-01 17:14:00 -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
153bc67f45
Revert "Revert "Revert "Revert "Expose trailers-only response status through C++ callback API"" ( #26365 )" ( #26375 )" ( #26379 )
...
This reverts commit 259a74c0e6 .
2021-05-27 09:16:05 -07:00
Yash Tibrewal
259a74c0e6
Revert "Revert "Revert "Expose trailers-only response status through C++ callback API"" ( #26365 )" ( #26375 )
...
This reverts commit 66253c521a .
2021-05-26 22:20:23 -07:00
donnadionne
e22fefb39a
Ring hash implementation ( #26356 )
...
* Ring hash implementation
* Fixing an error caught during import:
ipv6 addresses need small modifications when creating the ring entry.
* fixing an error
* removing debugs
* Remove unnecssary hashing
* small cleanup
2021-05-26 00:03:42 -07:00
Vijay Pai
66253c521a
Revert "Revert "Expose trailers-only response status through C++ callback API"" ( #26365 )
...
* Revert "Revert "Expose trailers-only response status through C++ callback API (#26249 )" (#26363 )"
This reverts commit 05c3b30ea0 .
* Move the trailers_only check from ClientContext to ClientReactor
* Remove unneeded change in client_context.cc
2021-05-25 17:43:21 -07:00
Yash Tibrewal
05c3b30ea0
Revert "Expose trailers-only response status through C++ callback API ( #26249 )" ( #26363 )
...
This reverts commit 393bae7e88 .
2021-05-25 13:44:10 -07:00
Mark D. Roth
edae7450f5
fix LOGICAL_DNS semantics ( #26147 )
...
* WIP: fix LOGICAL_DNS semantics
* fix tests and address FIXME
* clang-format
* add "dns:" prefix before creating resolver
2021-05-24 09:59:20 -07:00
Vijay Pai
393bae7e88
Expose trailers-only response status through C++ callback API ( #26249 )
...
* Expose trailers-only response status through callback API
* Fix change-detector test
* Address reviewer comment about trailers_only headers
* Add TODO requested by markdroth
* Move variable in struct to improve space efficiency
* Don't instantiate ExecCtx in channel_args destructor unless needed
2021-05-21 14:42:41 -07:00
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
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
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
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
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
Lidi Zheng
98fd4e1e36
Revert "CSDS Implementation ( #25038 )" ( #25745 )
...
This reverts commit 27de24a38e .
2021-03-17 13:38:47 -07: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
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
Yash Tibrewal
8d95aad50c
Channelz security changes - Follow up from #25593 ( #25624 )
2021-03-10 10:36:11 -08:00
Esun Kim
a41a206b8c
Fix readability-const-return-type,readability-delete-null-pointer,readability-simplify-boolean-expr ( #25628 )
2021-03-09 21:30:35 -08:00
Lidi Zheng
3b067c9f3f
Implement xDS client-side fault injection filter ( #24354 )
...
* Refactored with dynamic filters
* Error-tolerance tuned
* Fix leak of grpc_error and data race of canceller
* Adopt the latest xDS HTTP filter framework
* Fix fault injection tests' conflict with router filter
* Test alternative setup (override, no-override) without copy
* Refactor file strcutures of fault injection filter
* Rewrite the Json parsing/assembling logic again
* Added logic for aborting streaming RPC && resolve comments
2021-03-09 13:14:21 -08:00
Mark D. Roth
5d3fe59a5f
xds: Fix handling of HTTP filter that does not set typed_config. ( #25651 )
...
* xds: Fix handling of HTTP filter that does not set typed_config.
* same change for typed_per_filter_config
2021-03-09 12:37:47 -08:00
Yash Tibrewal
1c59e178f2
Some environments support only IPv6 addresses - followup from #25321 ( #25656 )
2021-03-09 10:32:10 -08:00
Yash Tibrewal
81e90432e1
xDS status notifier ( #25321 )
...
* Serving status notification for xds enabled servers
2021-03-08 21:47:13 -08:00
Richard Belleville
d9903aa44e
Format Channelz Address.TcpIpAddress.address as packed bytes ( #25629 )
...
* Move address packing to Core
* Format
* Use absl::Base64Escape
* Update src/core/lib/channel/channelz.cc
Co-authored-by: Yash Tibrewal <yashkt@google.com>
Co-authored-by: Yash Tibrewal <yashkt@google.com>
2021-03-08 17:11:58 -08:00
Yash Tibrewal
a214b52998
Disable channelz_service_test for iOS ( #25639 )
2021-03-05 14:27:30 -08:00
Esun Kim
377fe6095a
Upgrade clang-tidy and clang-format to 11 ( #25590 )
...
* Upgrade clang-tidy and clang-format to 11
* Reformat code
* Fix abseil-string-find-str-contains
* Fix modernize-make-unique
2021-03-04 11:54:30 -08:00
Yash Tibrewal
abf1e9a3c9
Add missing security field to channelz Socket ( #25593 )
...
* Add missing security field to channelz Socket
2021-03-03 23:29:50 -08:00
Jan Tattermusch
65454866da
use linkstatic for libraries that contain main() ( #25517 )
2021-02-27 07:01:48 +01:00
Mark D. Roth
49601b0334
Second attempt: xDS HTTP filter support for gRPC client ( #25558 )
...
* Revert "Revert "xDS HTTP filter support for gRPC client" (#25555 )"
This reverts commit 785a128a83 .
* xds_end2end_test: avoid flakes from lingering shutdown from previous test
2021-02-26 07:39:27 -08:00
Mark D. Roth
d482f1268a
xds_end2end_test: avoid flakes from lingering shutdown from previous test ( #25561 )
2021-02-26 00:29:37 -08:00
Mark D. Roth
013e339761
xds_end2end_test: improve TestType API ( #25557 )
2021-02-25 10:55:34 -08:00
donnadionne
785a128a83
Revert "xDS HTTP filter support for gRPC client" ( #25555 )
...
This reverts commit b2164837a8 .
2021-02-25 07:18:43 -08:00
donnadionne
1835f00ef1
Revert "Revert "Made grpc_core::Mutex compatible to absl::Mutex" ( #25537 )" ( #25549 )
...
This reverts commit 8e268dcec8 .
2021-02-24 16:49:34 -08:00
donnadionne
8e268dcec8
Revert "Made grpc_core::Mutex compatible to absl::Mutex" ( #25537 )
...
* Revert "Made grpc_core::Mutex compatible to absl::Mutex"
This reverts commit 0b53341328 .
* Revert "Added thread annotation (#25486 )"
This reverts commit 9d897cb1a5 .
* Revert "Fix a race in resolve_address and resolve_address_posix tests"
This reverts commit 6d8e7d3819 .
* Restore 25398
* restore 25398
2021-02-24 10:32:49 -08:00
Lidi Zheng
fd6f0183e8
Merge pull request #25484 from lidizheng/fix-typo-in-bootstrap
...
Fix a typo in xDS bootstrap parsing
2021-02-17 17:58:09 -08:00
Lidi Zheng
2efd2d5216
Fix a typo in xDS bootstrap parsing
2021-02-17 16:10:34 -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
Esun Kim
8b2bd69ef3
Merge pull request #25387 from veblush/mutex-cpp
...
Made grpc::internal::Mutex compatible to absl::Mutex
2021-02-12 11:55:44 -08:00
Esun Kim
6468d8a69d
Make grpcpp/mutex compatible absl/mutex
2021-02-11 15:02:42 -08:00
Mark D. Roth
b2164837a8
xDS HTTP filter support for gRPC client
2021-02-11 13:17:15 -08:00
Esun Kim
8efa9f9142
Merge pull request #25404 from veblush/mutex-api2
...
Fix-forward: Made grpc_core::Mutex compatible to absl::Mutex
2021-02-11 10:19:33 -08:00
Yash Tibrewal
7c8defd5c9
Merge pull request #25377 from yashykt/removedisrespecfulterm2
...
Replace disrespectful term
2021-02-10 15:20:27 -08:00
Esun Kim
0b53341328
Made grpc_core::Mutex compatible to absl::Mutex
2021-02-10 09:56:55 -08:00
Esun Kim
6dc1748f6c
Revert "Made grpc_core::Mutex compatible to absl::Mutex"
2021-02-10 07:53:02 -08:00
Yash Tibrewal
15779f7b91
Merge pull request #25380 from yashykt/removedisrespecfulterm3
...
Replace disrespectful words
2021-02-09 12:07:25 -08:00
Esun Kim
6f339894f1
Merge pull request #25325 from veblush/mutex-api
...
Made grpc_core::Mutex compatible to absl::Mutex
2021-02-08 23:08:39 -08:00
Esun Kim
6a1518bd22
Made grpc_core::Mutex compatible to absl::Mutex
2021-02-08 16:15:53 -08:00
Yash Tibrewal
f4e55b85bc
Replace disrespectful term
2021-02-08 15:29:53 -08:00
Yash Tibrewal
7a5288d2a0
Replace disrespectful words
2021-02-08 14:29:18 -08:00
Donna Dionne
cdd8a4ba87
Change xds_cluster_resolver LB policy config to support combined
...
locality and endpoint picking policies
2021-02-04 22:42:52 -08:00
Mark D. Roth
4dc84aea46
Merge pull request #25329 from markdroth/xds_ads_parsing
...
xds: Change ADS parsing to not stop at the first error
2021-02-03 14:59:29 -08:00
Mark D. Roth
044ea22d41
Merge pull request #25338 from markdroth/xds_v3
...
xds: Remove env-var protection for xDS v3 support.
2021-02-03 14:52:32 -08:00
Mark D. Roth
0f9af3c045
xds: Change ADS parsing to not stop at the first error
2021-02-03 12:27:44 -08:00
Mark D. Roth
30086244c1
Merge pull request #25335 from markdroth/xds_test_fix
...
Fix fake xDS server bug that caused unnecessary round trips in NACK tests
2021-02-03 12:26:48 -08:00
Mark D. Roth
bfd230c29c
xds: Remove env-var protection for xDS v3 support.
2021-02-03 11:23:45 -08:00
Mark D. Roth
60204d9e16
Fix fake xDS server bug that caused unnecessary round trips in NACK tests.
2021-02-03 08:29:06 -08:00
Donna Dionne
07d51a4d12
Fixing Logical DNS case:
...
override child policy with pick_first
set ignore_reresolution to false
ensure ExitIdleLock happens at every level of policy
2021-02-02 10:39:38 -08:00
Yash Tibrewal
88086a57a4
Fix xds_end2end_test for ipv6 only platforms
2021-01-28 13:44:48 -08:00
Mark D. Roth
e6c5554b0e
Merge pull request #25283 from markdroth/xds_nack_fix
...
Fix NACK detection in test xDS server.
2021-01-28 07:28:50 -08:00
Mark D. Roth
958c8e15f7
Fix NACK detection in test xDS server.
2021-01-27 11:53:52 -08:00
Esun Kim
be761cd430
Fixed sign-compare warnings
2021-01-27 11:16:18 -08:00
Donna Dionne
19b1f8f64a
Cds Watchers changes to support aggregate Cds and Logical DNS Cds.
2021-01-21 14:25:50 -08:00
Esun Kim
669e859f7a
Fix more unused-parameter warning
2021-01-21 10:30:16 -08:00
Esun Kim
9eae29f8e9
Merge pull request #25134 from veblush/fix-unused-parameter
...
Fix unused parameter warnings
2021-01-21 10:08:09 -08:00
donnadionne
d0f46266c5
Merge pull request #25178 from donnadionne/present
...
Add Missing test case: present match
2021-01-20 16:15:46 -08:00
Mark D. Roth
5b5e3f84a1
Merge pull request #25214 from markdroth/xds_bootstrap_env_var
...
Add ability to read xDS bootstrap config from an env var.
2021-01-20 14:34:59 -08:00
Zhouyihai Ding
6f6bdd03e6
Merge pull request #25175 from ZhouyihaiDing/callback_add_context
...
Support ServerContext for callback API
2021-01-20 11:52:02 -08:00
Mark D. Roth
42f123efbe
Add ability to read xDS bootstrap config from an env var.
2021-01-20 11:00:27 -08:00
Esun Kim
0db0ab052d
Update by review
2021-01-20 10:44:14 -08:00
ZhouyihaiDing
a584bc4f02
Support ServerContext for callback API
2021-01-19 22:00:10 -08:00
Esun Kim
9bd7c4917a
Fix unused-parameter warning
2021-01-19 18:18:09 -08:00
Yash Tibrewal
d007862824
Merge pull request #25154 from yashykt/xdsend2endtestflakefix
...
Fix xds_end2end_test flakiness
2021-01-19 13:03:24 -08:00
Yash Tibrewal
0406f3ba42
Fix xds_end2end_test msan flake
2021-01-19 11:18:21 -08:00
Yash Tibrewal
be34f56895
Merge pull request #25179 from yashykt/xdsend2endtestfix
...
Fix end2end test for ipv6 only platforms
2021-01-17 13:42:11 -08:00
Yash Tibrewal
60891587bb
Fix end2end test for ipv6 only platforms
2021-01-15 18:35:48 -08:00
Donna Dionne
83d6d96c86
Add Missing test case: present match
...
Interop reported an error for a present match and it is discovered this
case is missing from unit test. We have test for present (false) and we
have special case test but we don't have the normal present (true) test.
We also had a bug in a our code:
if (!value.has_value()) {
if (header_matcher.type ==
XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::PRESENT) {
return !header_matcher.present_match;
} else {
// For all other header matcher types, we need the header value to
// exist to consider matches.
return false;
}
}
switch (header_matcher.type) {
case XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::EXACT:
return value.value() == header_matcher.string_matcher;
case XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::REGEX:
return RE2::FullMatch(value.value().data(), *header_matcher.regex_match);
case XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::RANGE:
int64_t int_value;
if (!absl::SimpleAtoi(value.value(), &int_value)) {
return false;
}
return int_value >= header_matcher.range_start &&
int_value < header_matcher.range_end;
case XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::PREFIX:
return absl::StartsWith(value.value(), header_matcher.string_matcher);
case XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::SUFFIX:
return absl::EndsWith(value.value(), header_matcher.string_matcher);
default:
return false;
}
Note if header has value, we will go into the swtich but there is no case
XdsApi::Route::Matchers::HeaderMatcher::HeaderMatcherType::PRESENT,
which means we would have gone into default and decleared not a match.
The same day this bug was discovered by interop test, https://github.com/grpc/grpc/pull/25122
was submitted and the refactoring fixed the bug.
Nevertheless, I added the test case for the future.
2021-01-15 17:50:29 -08:00
donnadionne
d17ef6be04
Merge pull request #25139 from donnadionne/switch_bug
...
Fixing TryNextPrioirtyLocked to ensure we properly try higher priorities when lower ones fail
2021-01-15 17:09:55 -08:00
Ashitha Santhosh
4ca878799b
Refactor [String/Header/Path]matchers in xds_api.
2021-01-15 12:32:54 -08:00
Donna Dionne
4715bbc220
Fixing TryNextPrioirtyLocked to ensure we properly try higher priorities when lower ones fail
2021-01-14 16:07:42 -08:00
Yash Tibrewal
ac4f4de196
xDS server config fetcher
2021-01-14 14:27:51 -08:00
Mark D. Roth
8ddbc50272
change xDS certificate provider to contain a map by cluster
2021-01-12 10:51:50 -08:00
Donna Dionne
5c1834e8db
A previous fix which changed grpc_cycle_counter_to_millis_round_down/up
...
was not the correct fix and caused window test issues.
The correct fix is to ensure the test uses the same time apis as the
product code: grp_get_cycle_counter (which is platform dependent) to get
current time.
Tested both in open source and patched into google3 to ensure successful
import:
https://critique-ng.corp.google.com/cl/349981071/analysis
2021-01-06 18:26:54 -08:00
Mark D. Roth
1bc2d7d1a6
Remove StringLess and src/core/lib/gprpp/map.h.
2021-01-05 09:47:42 -08:00
Yash Tibrewal
9c043baf49
Allow the channelz service test to get different listen socket sizes
2020-12-21 12:57:10 -08:00
Mark D. Roth
55154ce24c
Merge pull request #25032 from markdroth/xds_weighted_cluster_weight_0_fix
...
xds: Ignore WeightedCluster entries with weight 0.
2020-12-21 08:32:25 -08:00
Mark D. Roth
a38d6c641f
xds: Ignore WeightedCluster entries with weight 0.
2020-12-17 16:00:47 -08:00
Yash Tibrewal
4105d2ce20
XdsServerBuilder, config fetching per resolved address and delaying bind/listen till fetch is complete
2020-12-16 12:15:52 -08:00
Donna Dionne
4f8ed98f3e
Xds cluster resolver
...
Implemented new xds cluster resolver config
Separated policy and discovery mechanism
2020-12-14 16:05:15 -08:00
Yash Tibrewal
c9e99945ec
Add SANs matching for xDS credentials
2020-12-08 15:15:39 -08:00
ZhenLian
551009be68
Merge pull request #24805 from ZhenLian/zhen_dynamic_file_reloading_7
...
refactor PemKeyCertPair to take absl::string_view
2020-12-08 10:27:58 -08:00
Adam J Heller
91c4cbd51b
Merge pull request #24701 from drfloob/null-byte-uri-components
...
Convert URI parser to C++
2020-12-07 15:30:31 -08:00
AJ Heller
880a854f0e
Convert URI parser to C++ #24701
2020-12-07 12:13:22 -08:00
ZhenLian
de4e8a4680
refactor PemKeyCertPair
2020-12-07 12:10:45 -08:00
Mark D. Roth
8c12cc80e8
Merge pull request #24919 from markdroth/client_channel_remove_get_subchannel_call
...
Remove grpc_client_channel_get_subchannel_call().
2020-12-07 09:27:49 -08:00
Mark D. Roth
e4faf1945d
Remove grpc_client_channel_get_subchannel_call().
2020-12-05 15:44:50 -08:00
Esun Kim
53ab235fb8
Fix google-explicit-constructor
2020-12-03 15:03:39 -08:00
Esun Kim
6c440e820b
Merge pull request #24841 from veblush/tidy-google-readability-casting
...
[Clang-Tidy] google-readability-casting
2020-12-03 14:49:45 -08:00
Mark D. Roth
0a84a1d0c7
Merge pull request #24813 from markdroth/client_channel_split1
...
Use separate mutexes and call queues for resolution and load balancing
2020-12-03 14:40:07 -08:00
Mark D. Roth
a9d30fece6
Use separate mutexes and call queues for resolution and load balancing
2020-12-03 11:19:35 -08:00
Yash Tibrewal
a6d9e49f27
Merge pull request #24843 from yashykt/insecureservercreds
...
Experimental API for xDS server credentials
2020-12-03 03:05:34 -08:00
Yash Tibrewal
096b2324e1
Experimental API for XdsServerCredentials
2020-12-01 12:47:52 -08:00
Yash Tibrewal
b08861b60f
Register certificate provider factories after init
2020-12-01 12:17:12 -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
Yash Tibrewal
f635d9deeb
xds_end2end_test cleanup from #24643
2020-11-30 16:10:27 -08:00
Yash Tibrewal
d7907e6ba1
Merge pull request #24835 from yashykt/filewatcherprovider
...
Update file watcher certificate provider factory with provider implementation
2020-11-30 15:42:31 -08:00
Esun Kim
75e3e660fd
Fix google-readability-todo
2020-11-25 10:09:42 -08:00
Yash Tibrewal
82b158f249
Update file watcher certificate provider factory with provider implementation
2020-11-24 23:48:18 -08:00
Esun Kim
c028e2f5cd
Fix bugprone-integer-division
2020-11-24 13:15:31 -08:00
Yash Tibrewal
ee2480abbd
Add missing check_config release
2020-11-24 00:22:37 -08:00
Yash Tibrewal
33b4911a50
xDS client security integration
2020-11-20 17:37:27 -08:00
Mark D. Roth
07016f8191
Move resource generation out of ADS impl and into test suite class.
2020-11-13 16:14:43 -08:00
Donna Dionne
2dc58be3b5
Protect timeout feature under a flag and added testing.
2020-11-10 11:15:54 -08:00
Yang Gao
4ac9c6f755
Merge pull request #24693 from yang-g/remove_log
...
Remove hack for Xcode 10
2020-11-09 10:59:25 -08:00
Mark D. Roth
27e1c1c56d
clang-tidy: enable google-readability-braces-around-statements
2020-11-06 13:41:44 -08:00
yang-g
ec074a0df9
Remove hack for Xcode 10
2020-11-06 11:16:51 -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
Esun Kim
38472186b1
Disable XdsRoutingApplyXdsTimeout under Asan too
2020-10-29 12:00:36 -07:00
Richard Belleville
2ad3c0a041
Revert "Merge pull request #24568 from veblush/test-xds-abseil"
...
This reverts commit 9083de5017 , reversing
changes made to 913760a6a9 .
2020-10-28 15:22:20 -07:00
Richard Belleville
acb198b961
Merge pull request #24585 from gnossen/fix_unused_return_value
...
Avoid internal build failure
2020-10-28 10:11:34 -07:00
Esun Kim
dc9ef8fc39
Enable XdsRoutingApplyXdsTimeout again under TSAN
2020-10-27 19:48:48 -07:00
Richard Belleville
6ec512d0f1
Avoid internal build failure
2020-10-27 16:08:11 -07:00
Nathan Herring
da66b7d14e
Revert "Abseil Flags"
2020-10-24 15:19:55 -07:00
Esun Kim
3528a40fe5
Merge pull request #24506 from Capstan/absl-flags
...
Abseil Flags
2020-10-23 21:07:21 -07:00
Yang Gao
01596014af
Merge pull request #24521 from yang-g/ip46
...
Check localhost is resolved to ipv4 or ipv6 and update test accordingly.
2020-10-23 16:30:17 -07:00
yang-g
8456e2138a
Check localhost is resolved to ipv4 or ipv6 and update test accordingly.
2020-10-23 14:38:36 -07:00
Esun Kim
2089785b62
Disable XdsRoutingApplyXdsTimeout test under TSAN
2020-10-23 13:50:20 -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
Mark D. Roth
ededb8e173
Merge pull request #24516 from markdroth/xds_nack_status
...
xds: Set status code to INVALID_ARGUMENT when NACKing.
2020-10-22 13:46:02 -07:00
Mark D. Roth
1f95593de7
xds: Set status code to INVALID_ARGUMENT when NACKing.
2020-10-21 14:09:50 -07:00
Yash Tibrewal
02ca015b13
Experimental support and tests for CreateCustomInsecureChannelWithInterceptorsFromFd
2020-10-21 13:34:26 -07:00
Mark D. Roth
8e84e63a83
Merge pull request #24481 from markdroth/xds_circuit_breaking_global_atomic
...
Use a global atomic for circuit breaking call counter.
2020-10-20 14:22:54 -07:00
Esun Kim
aae4f4cf18
Fix by misc-unused-using-decls
2020-10-19 18:12:11 -07:00
Mark D. Roth
b607080400
Use a global atomic for circuit breaking call counter.
2020-10-19 15:15:32 -07:00
Esun Kim
bba8facb4a
Merge pull request #24456 from veblush/tidy-readability-redundant-smartptr-get
...
[Clang-Tidy] readability-redundant-smartptr-get
2020-10-19 09:54:15 -07:00
Mark D. Roth
1bb28c90b2
Merge pull request #24436 from markdroth/xds_resource_version
...
Fix xDS resource type version to persist across stream restarts.
2020-10-19 08:41:50 -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
946ed32bac
Merge pull request #24454 from veblush/tidy-modernize-use-override
...
[Clang-Tidy] modernize-use-override
2020-10-16 16:33:29 -07:00
Mark D. Roth
bce7bc78ab
Fix xDS resource type version to persist across stream restarts.
2020-10-16 14:55:28 -07:00
Mark D. Roth
dbe76ce6fd
Merge pull request #24434 from markdroth/xds_resource_version_test
...
Fix ADS server resource type version logic and refactor code.
2020-10-16 14:52:42 -07:00
Esun Kim
3fef4e7435
Fix by readability-redundant-smartptr-get
2020-10-16 14:16:42 -07:00
Esun Kim
e7434d385e
Fix by tidy-modernize-use-override
2020-10-16 14:01:06 -07:00
donnadionne
ad66015c85
Merge pull request #24328 from donnadionne/timeout
...
Setting timeout in method config.
2020-10-16 13:43:25 -07:00
Esun Kim
6ae8463500
Fix by modernize-make-unique
2020-10-16 13:30:56 -07:00
Esun Kim
f3cedfd357
Merge pull request #24437 from veblush/clang-tidy-abseil
...
[Clang-Tidy] Enable abseil-*
2020-10-16 12:21:51 -07:00
Donna Dionne
a3ce1f745a
Setting timeout in method config.
2020-10-16 11:37:52 -07:00
Mark D. Roth
63546c0faf
Fix ADS server resource type version logic and refactor code.
2020-10-16 11:18:49 -07:00
Esun Kim
ece76ee1e8
Fix code by readability-container-size-empty
2020-10-16 09:48:20 -07:00
Esun Kim
a51fe3e675
Fix abseil-* clang-tidy errors
2020-10-16 09:39:41 -07:00
Esun Kim
09ace01cc1
Merge pull request #24193 from veblush/clang-tidy
...
Improve clang tidy to use compilation DB
2020-10-15 15:46:13 -07:00
Donna Dionne
5a25a427b5
Protecting the circuit breaking (drop action) using environment
...
variable. All the logic of refcounting are left but will not result in
any actions. Test added to test protected case.
2020-10-13 10:04:13 -07:00
Esun Kim
6d6648c7e1
Fix clang-tidy errors
2020-10-13 09:51:31 -07:00
Mark D. Roth
50ed78d1f9
Merge pull request #24395 from markdroth/xds_load_stats_refs
...
Use a single instance of the drop and locality stats objects.
2020-10-12 16:47:06 -07:00
Mark D. Roth
a6954fe39e
Use a single instance of the drop and locality stats objects.
2020-10-12 14:14:52 -07:00
Mark D. Roth
caf798e9ab
xds: Add support for case_sensitive option in RouteMatch.
2020-10-09 14:49:23 -07:00
Yash Tibrewal
4013fd9dc9
Merge pull request #24313 from yashykt/xdscredscpp
...
C++ API to create Xds channel credentials
2020-10-08 22:27:21 -07:00
Yash Tibrewal
c52cb09f47
Add experimental XdsCredentials with support for insecure channel_credentials and security_connector
2020-10-08 20:37:47 -07:00
Esun Kim
8e9e895ffc
Replace grpc_shutdown_blocking with grpc_shutdown
2020-10-08 10:57:05 -07:00
Vijay Pai
37a09aaae3
Remove unused experimental stub format
2020-10-06 17:41:20 -07:00
Mark D. Roth
799e805e8a
Move locality load reporting to EDS policy.
2020-10-02 11:16:01 -07:00
Mark D. Roth
8c142a1d8c
Merge pull request #24299 from markdroth/xds_test_crash_fix
...
Don't try to use global xds channel args after they've been destroyed.
2020-10-01 09:59:17 -07:00
Mark D. Roth
dcc94158ac
Don't try to use global xds channel args after they've been destroyed.
2020-10-01 07:10:32 -07:00
Donna Dionne
ea4cb41bd2
Remove unused variable.
2020-09-30 10:08:56 -07:00
Mark D. Roth
537467eb0e
Merge pull request #24258 from markdroth/service_config_parser_channel_args
...
Allow channel args to modify service config parsing behavior.
2020-09-30 08:17:46 -07:00
Donna Dionne
e7d7b7de86
xDS circuit breaking support
2020-09-29 14:47:39 -07:00
Mark D. Roth
b62d5c7eaa
Allow channel args to modify service config parsing behavior.
2020-09-29 13:13:26 -07:00
Mark D. Roth
efb38591ac
Merge pull request #24239 from markdroth/xds_client_shared
...
Share XdsClient between channels
2020-09-28 08:07:02 -07:00
Mark D. Roth
1ba51dcb1a
Share XdsClient between channels.
2020-09-27 15:26:28 -07:00
Mark D. Roth
2fe1a5cd0a
Add missing const_cast<>.
2020-09-25 10:00:32 -07:00
Mark D. Roth
5e30156069
Merge pull request #24201 from markdroth/xds_client_no_parent_channel_args
...
Stop propagating parent channel args into xDS channel.
2020-09-25 07:49:25 -07:00
Esun Kim
1c7d5b5299
Fix MSAN adjustment
2020-09-23 18:22:10 -07:00
Mark D. Roth
7baf55e473
Stop propagating parent channel args into xDS channel.
2020-09-23 15:09:07 -07:00
Mark D. Roth
6ea7e4dd16
Fix channel to apply new ConfigSelector even if ServiceConfig hasn't changed.
2020-09-18 18:05:37 -07:00
Mark D. Roth
f7a72b040d
Pass address to CreateSubchannel() and expose attributes in SubchannelInterface.
2020-09-17 14:51:25 -07:00
Mark D. Roth
a11e4df082
Merge pull request #24114 from markdroth/config_selector_error_handling2
...
Simplify service config processing and fix config selector handling.
2020-09-16 15:04:59 -07:00
Mark D. Roth
4bb00c25c0
Fix cut-and-paste error and change test to catch this kind of bug.
2020-09-16 10:12:12 -07:00
Mark D. Roth
84c8f7051a
Simplify service config processing and fix config selector handling.
2020-09-15 16:49:52 -07:00
Mark D. Roth
5107e65a93
Stop setting PROXYLESS_CLIENT_HOSTNAME node metadata in LRS request.
2020-09-15 14:55:17 -07:00
Donna Dionne
fa4f131a85
Increasing failover time to avoid errors like
...
I0914 19:15:38.606657832 40 priority.cc:658] [priority_lb 0x611000009b40] child child2 (0x613001702bc0): failover timer fired, reporting TRANSIENT_FAILURE
Should prevent flakes in InitialUnavailable tests
Note: test had to be modified to reproduce more easily, will monitor the
test after this fix to ensure problem does not appear again.
2020-09-15 10:47:54 -07:00
Mark D. Roth
ae0cc5052b
Merge pull request #24150 from markdroth/xds_eds_duplicate_update_fix
...
Fix EDS update equality check.
2020-09-15 07:32:52 -07:00
Mark D. Roth
414405d6ae
Fix EDS update equality check.
2020-09-14 16:40:56 -07:00
Donna Dionne
5c242f0577
Fixing flake in DeadUpdate
...
It is observed that ADS is shutdown, but it's possible that
a request still comes in.
This request should not update the ADS resource_type_response_state_ as
they were cleared by the shutdown.
This fix ensures this.
2020-09-13 12:51:37 -07:00
Donna Dionne
ffb560090a
Moving XDS Routing functionalities from LB policy into XdsConfigSelector
2020-09-11 15:44:10 -07:00
Donna Dionne
2d10cd4d26
Ensure SendRpc is not called without checking return value; use
...
CheckRpcSendOk to wrap it.
2020-09-09 17:37:00 -07:00
Donna Dionne
1b1a41df5d
New Tests to guard against regression when routing and weighted target
...
logic are moved from policies to XdsConfigSelector:
1. Cluster update test: we never had a test that explicitly updated
clusters multiple times.
2. A cluster update test that includes long running RPCs, in particular,
RPCs not yet committed.
2020-09-08 12:20:56 -07:00
Mark D. Roth
5adf794eec
Increase polling timeout for NoMatchedDomain test.
2020-08-25 07:18:52 -07:00
Mark D. Roth
91b698d232
Revert "Merge pull request #23969 from grpc/revert-23918-xds_virtual_host_validation"
...
This reverts commit 13b5f0b625 , reversing
changes made to 9ea2d7c89d .
2020-08-25 07:03:28 -07:00
donnadionne
4cb21ff819
Revert "xds: Don't identify the needed VirtualHost at validation time."
2020-08-24 21:46:00 -07:00
Mark D. Roth
b0a8b4606c
xds: Don't identify the needed VirtualHost at validation time.
2020-08-21 11:39:35 -07:00
Mark D. Roth
9a39f172a6
xds: NACK if response includes duplicate resource names.
2020-08-20 16:17:57 -07:00
Jan Tattermusch
afda101854
cleanup bazel commands in test scripts (for non-RBE invocations)
2020-08-20 12:22:09 +02:00
Donna Dionne
dc7f926b9e
Fixing the transient failure that occurs during the case
...
where CDS response missing a resource that we have newly requested
(the resource will likely be contained in subsequent responses).
2020-08-19 10:25:02 -07:00
Mark D. Roth
bd73844208
Move parse_address library from client_channel to iomgr.
2020-08-18 11:23:06 -07:00
Yash Tibrewal
bef69db1a6
A bit of cleanup
2020-08-17 16:24:40 -07:00
Vijay Pai
c2d2220ba5
Make MaybeExpect guarantee at-most-once and allow Verify reuse
2020-08-14 10:30:48 -07:00
Karthik Ravi Shankar
cfd1069ae0
Fix formatting
2020-08-13 14:25:43 -07:00
Karthik Ravi Shankar
242b1b87f8
Merge branch 'master' into flaky-fix
2020-08-13 14:25:27 -07:00
Vijay Pai
6040d621bd
Fix destruction order bug in nested lock test
2020-08-12 09:44:49 -07:00
Karthik Ravi Shankar
218c5fd235
Mark client_crash_test as flaky
...
This test fails under asan.
2020-08-11 16:00:13 -07:00
Mark D. Roth
d926e1ca47
Move XdsClient code out of client_channel tree.
2020-08-07 08:21:09 -07:00
Yash Tibrewal
d35c1c13cd
Merge pull request #23636 from yashykt/settingsdeadline
...
Receive SETTINGS frame on clients before declaring subchannel READY
2020-08-03 14:04:02 -07:00
Yash Tibrewal
e310d4366c
Receive SETTINGS frame on clients before declaring subchannel READY
2020-07-31 02:01:40 -07:00
ashithasantosh
cd9a127502
Merge pull request #23489 from michaelywg/endpoint_local_accessor
...
modified grpc_endpoint vtable and implementations
2020-07-30 13:54:16 -07:00
Esun Kim
79adbe59d5
Merge pull request #23673 from veblush/msan-fix
...
Add TestEnvironment to tests
2020-07-29 21:20:59 -07:00
Esun Kim
f2374fb591
Add TestEnvironment to tests
2020-07-29 19:29:55 -07:00
Donna Dionne
33c128e99e
Fixing a flaky test in ClientLoadReportingWithDropTest
2020-07-29 17:27:23 -07:00
Mark D. Roth
60283a1085
Merge pull request #23582 from markdroth/grpclb_authority
...
Remove TargetAuthorityTable in favor of a per-address channel arg.
2020-07-29 15:18:13 -07:00
Michael Wang
c6586f087f
implemented get_local_address accessor for grpc_endpoint
2020-07-29 19:39:22 +00:00
Vijay Pai
5488e7b5cd
Merge pull request #23478 from grpc/vjpai-patch-1-1
...
Avoid unused variables
2020-07-28 12:51:49 -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
bcb6530717
Revert "Merge pull request #23430 from vjpai/remove_do_not_test"
...
This reverts commit 08d737abf8 , reversing
changes made to 6dc44b33c7 .
2020-07-28 09:55:17 -07:00
Mark D. Roth
181781387d
xDS v3 support
2020-07-23 10:20:55 -07:00
Mark D. Roth
c35a37d6c2
Remove TargetAuthorityTable in favor of a per-address channel arg.
2020-07-23 08:23:05 -07:00
Donna Dionne
0d6ee9b309
Implement fake and ignored headers.
...
Take care to ensure we use fake headers in testing so we don't
conflict with headers used by census.
2020-07-20 12:34:02 -07:00
Mark D. Roth
e681f37054
Remove env var protection of new xds routing code.
2020-07-20 07:59:07 -07:00
Karthik Ravi Shankar
d7565c37a8
Revert "Adding Fake headers for header matching."
...
This reverts commit 8c013bfcdc .
2020-07-17 16:39:05 -07:00
Mark D. Roth
fc5bd60f16
Concatenate duplicate header keys for matching.
2020-07-15 15:48:32 -07:00
Donna Dionne
8c013bfcdc
Adding Fake headers for header matching.
2020-07-15 13:14:19 -07:00
Vijay Pai
612a3dfa10
clang-format
2020-07-14 14:10:54 -07:00
Vijay Pai
bec17c1dd3
Avoid unused variables
2020-07-14 14:09:09 -07:00
Vijay Pai
d03daab509
Remove unused variable (fixes builder error)
2020-07-09 16:28:14 -07:00
Vijay Pai
08d737abf8
Merge pull request #23430 from vjpai/remove_do_not_test
...
Remove references to skipping callback API tests
2020-07-09 15:57:35 -07:00
Muxi Yan
3b2e473548
Merge pull request #22345 from muxi/grpclb-name-config
...
Update grpclb configuration with field "service_name"
2020-07-09 13:32:55 -07:00
Vijay Pai
e1a45fb237
Remove references to skipping callback API tests
2020-07-09 11:45:01 -07:00
Muxi Yan
232756e7bf
Remove unnecessary RPC
2020-07-09 09:37:05 -07:00
Vijay Pai
a46cb5e86a
Merge pull request #23361 from vjpai/em_agnostic_core_callback_cq
...
EM-agnostic core callback CQ
2020-07-09 09:35:49 -07:00
Vijay Pai
407fdc3a36
Fix data race in RpcWithEarlyFreeRequest by using atomics
2020-07-08 22:18:40 -07:00
Vijay Pai
c6c05910c2
Fix data race in RpcWithEarlyFreeRequest by using atomics
2020-07-08 22:17:54 -07:00
Muxi Yan
fa28bab456
Address comments
2020-07-08 16:56:21 -07:00
Vijay Pai
7ee2bc6db5
EM-agnostic callback completion queue
2020-07-08 16:12:23 -07:00
Mark D. Roth
a5120b90ba
Merge pull request #23417 from markdroth/lb_policy_path
...
Make request path more easily visible to LB policies.
2020-07-08 14:57:29 -07:00
Vijay Pai
17b4879677
Merge pull request #23416 from vjpai/ccet
...
Make sure that some test ops don't start concurrently with Finish
2020-07-08 13:39:01 -07:00
Mark D. Roth
7c3fefea3f
Make request path more easily visible to LB policies.
2020-07-08 12:12:30 -07:00
Vijay Pai
fe2e9d6803
Properly count messages sent
2020-07-08 09:06:47 -07:00
Mark D. Roth
3201d7f7bf
Merge pull request #23157 from markdroth/gpr_asprintf
...
Replace most uses of gpr_asprintf() with absl calls.
2020-07-07 16:01:48 -07:00
Vijay Pai
0ab6db4fe8
Make sure that some ops don't start concurrently with Finish
2020-07-07 14:48:12 -07:00
Donna Dionne
8dd0cb4712
Add support for xDS regex matchers.
2020-07-07 13:17:25 -07:00
Muxi Yan
ec2cd96426
Address comments
2020-07-07 13:13:38 -07:00
Muxi Yan
3f684093d7
Add test for the new config field
2020-07-07 13:13:37 -07:00
Mark D. Roth
9404f66f70
Replace most uses of gpr_asprintf() with absl calls.
2020-07-07 12:01:02 -07:00
Donna Dionne
459b58ae3d
Merge remote-tracking branch 'upstream/master' into matcher_new
2020-07-06 12:54:56 -07:00
Esun Kim
8d0e703393
Merge pull request #22813 from mehrdada/fix-static-initialization-crap
...
Fix channelz plugin initializer
2020-07-06 11:19:05 -07:00
Donna Dionne
60b878d3a5
New Matchers Implementation
...
- All except for Regex (which will be submitted with RE2 import PR)
2020-07-06 10:54:22 -07:00
yang-g
162fca110c
Fix message_allocator_e2e_test
2020-07-01 09:39:14 -07:00
Esun Kim
165ee5007a
Replaced grpc::string with std::string
2020-06-29 17:56:36 -07:00
Vijay Pai
84cf666014
Merge pull request #23229 from grpc/revert-23116-revert-23005-asyncwrite
...
Roll-forward: Fix StartCall: make corking work and allow concurrent Start*
2020-06-17 00:31:56 -07:00
Vijay Pai
7eebba3781
Fixes needed to make roll-forward of StartCall and corking work
2020-06-16 13:06:16 -07:00
Vijay Pai
278671072f
Revert "Revert "Fix StartCall: make corking work and allow concurrent Start*""
2020-06-16 12:20:19 -07:00
Donna Dionne
97904d77a4
Adding the printing of error message when unexpected status returns.
2020-06-16 11:03:12 -07:00
Vijay Pai
a379951943
Merge pull request #23202 from vjpai/flaky
...
Fix flaky_network_test
2020-06-13 01:12:06 -07:00
Vijay Pai
5a2f60d137
Allow skipping canceled check
2020-06-12 15:29:49 -07:00
Donna Dionne
b35b463a08
reject RouteConfiguration with a case-insensitive RouteMatch
2020-06-12 15:19:32 -07:00
Vijay Pai
8c27a5e37e
Merge pull request #23187 from vjpai/end2end
...
Increase reconnect sleep time in end2end_test to 5x poller interval
2020-06-11 16:37:40 -07:00
Vijay Pai
fa1c66852b
Increase reconnect sleep time to 5x poller interval
2020-06-11 14:47:53 -07:00
Vijay Pai
b269fdbf8b
Don't mark server RPC canceled if finished with non-OK status
2020-06-11 10:15:05 -07:00
Mark D. Roth
3f0eb8ae77
Merge pull request #23117 from markdroth/xds_resource_removal_crash_fix
...
Fix use-after-free bug for ResourceState of unsubscribed RDS resource.
2020-06-03 07:15:17 -07:00
Mark D. Roth
21ee2335d2
Fix use-after-free bug for ResourceState of unsubscribed RDS resource.
2020-06-02 14:01:04 -07:00
Karthik Ravi Shankar
11c54ada0d
Revert "Fix StartCall: make corking work and allow concurrent Start*"
2020-06-02 11:11:06 -07:00
Mark D. Roth
c566b0f7af
Merge pull request #23105 from markdroth/xds_uri_scheme
...
Support xDS via both "xds" and "xds-experimental" URI schemes.
2020-06-02 09:26:21 -07:00
Mark D. Roth
d2646941b0
Fix xds_end2end_test to not set the response state back to SENT.
2020-06-01 15:03:22 -07:00
Mark D. Roth
d674fa3e37
Support xDS via both "xds" and "xds-experimental" URI schemes.
2020-06-01 14:39:37 -07:00
Donna Dionne
44eb8a6def
Putting in a temp fix for flaky tests.
...
Temporiarly increase tolerance for small load of RPCs
2020-05-29 13:19:29 -07:00
Mark D. Roth
832da8bd26
Merge pull request #22926 from markdroth/xds_cds_resource_does_not_exist
...
xds: Put channel in TRANSIENT_FAILURE when CDS resource is removed.
2020-05-26 08:28:36 -07:00
donnadionne
260b0528ba
Merge pull request #22983 from donnadionne/ignore
...
Default Route matcher checking:
2020-05-21 10:24:19 -07:00
Vijay Pai
cf0727665d
Merge pull request #23005 from vjpai/asyncwrite
...
Fix StartCall: make corking work and allow concurrent Start*
2020-05-20 13:50:08 -07:00
Donna Dionne
12821db7f8
Merge remote-tracking branch 'upstream/master' into ignore
2020-05-20 11:21:35 -07:00