* [WIP] Precondition ChannelArgs with a default EventEngine
This is a step towards using ChannelArgs as the primary means of
accessing EventEngine instances in gRPC-core. If not explicitly provided
by the application, a default EventEngine will populated into
ChannelArgs during preconditioning.
This is not a final state, we may want to enable ref-counting here
instead of using raw pointers. And a refactoring is in order to enable
GetObject instead of the more verbose
GetPointer<EventEngine>(GRPC_ARG_EVENT_ENGINE).
* Refactor ChannelArgs::GetObject to support non-conforming classes
This allows us to not expose `ChannelArgName` in the public interface.
* Add std::shared_ptr to ChannelArgs; Add EventEngine specialization
* subchannel fix; cleanup
* replace GetSharedPtr with overloads of GetObjectRef
* Automated change: Fix sanity tests
* fix the fixer
* fix raw pointer retrieval from stored shared_ptr
* Make GetObjectRef<EventEngine> work (not general to shared_ptr)
* enable shared_ptr ChannelArg support for shared_from_this
* use new EventEngines for tests (not the default global)
* Automated change: Fix sanity tests
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
* EventEngine::RunAt - Subchannel connection retries
* Fix refcounting on retry timer reset
* Automated change: Fix sanity tests
* fix autofixer's goof
* Squashed commit of the following:
commit d4aed9e615
Author: Craig Tiller <ctiller@google.com>
Date: Fri May 20 12:58:47 2022 -0700
Revert "[c++14] Remove Capture type (#29327)" (#29748)
This reverts commit 944c0b2ce9.
commit 965feb5726
Author: apolcyn <apolcyn@google.com>
Date: Fri May 20 12:45:33 2022 -0700
xds: Remove aggregate and logical dns clusters env var guard (#29742)
* Remove aggregate and logical dns clusters env var guard
commit d5c8bbce51
Author: Sergii Tkachenko <sergiitk@google.com>
Date: Fri May 20 10:44:59 2022 -0700
xds-k8s: Do not recommend enabling mesh certs by default (#29743)
This should covered separately per this note:
> For more details, and for the setup for security tests, see
["Setting up Traffic Director service security with proxyless gRPC"](https://cloud.google.com/traffic-director/docs/security-proxyless-setup)
user guide.
commit 1df32ca680
Author: AJ Heller <hork@google.com>
Date: Fri May 20 10:18:53 2022 -0700
Delete the EventEngine-driven iomgr implementation (#29654)
This code is not compiled by default and has fallen out of sync with the
rest of the codebase. There's a good chance it won't be used, given our
current work to use an iomgr-drive EventEngine instead.
This code will continue to live in git history, should we need to bring
pieces of it back.
commit 944c0b2ce9
Author: Craig Tiller <ctiller@google.com>
Date: Fri May 20 09:56:23 2022 -0700
[c++14] Remove Capture type (#29327)
* Remove Capture type
* Automated change: Fix sanity tests
* update
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
commit fd744e081d
Author: Esun Kim <veblush@google.com>
Date: Fri May 20 08:54:33 2022 -0700
Removed manylinux2010 python artifacts (#29734)
* Removed manylinux2010 python artifacts
* Fix
* Fix2
* Added cp37 to presubmit test for distribtest relying on cp37 artifacts
commit 5051566b27
Author: Jan Tattermusch <jtattermusch@google.com>
Date: Fri May 20 11:07:04 2022 +0200
Enable remote cache for selected ObjC bazel tests. (#29731)
* enable remote cache for ObjC bazel tests
* add bazel RBE cache for mac ios bazel builds
* release lock before unreffing
* rm some manual WeakRef-counting
* comments
* verbiage
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
Co-authored-by: Vignesh Babu <vigneshbabu@google.com>
* server: add method to expose authority seen by server
* Automated change: Fix sanity tests
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
This code is not compiled by default and has fallen out of sync with the
rest of the codebase. There's a good chance it won't be used, given our
current work to use an iomgr-drive EventEngine instead.
This code will continue to live in git history, should we need to bring
pieces of it back.
* Event engine endpoint read and write API changes
* updating api change
* set google_specific to nullptr by default
* Event-Engine --> EventEngine
* life-time --> lifetime
* removing default args to make sanity checks pass
* Add DNS Server address override to the EventEngine API
* instead, override authority in GetDNSResolver; other fixes
* feedback
* constrain dns_server format to "IP:port"
* Modifying slice buffer add to merge two contiguous slices sharing the same refcount object
* sanity checks
* updating test
* fixing grpc_slice_buffer_add API misuse in proto utils
* fix sanity checks
* minor fix
* Revert "Revert "ORCA: implement ORCA RPC service for OOB backend metric reporting (#29215)" (#29351)"
This reverts commit 71b355624f.
* move ORCA service to its own BUILD rule
* ORCA: implement ORCA RPC service for OOB backend metric reporting
* fix unused parameter error
* gen_upb_api
* add missing build deps
* increase test timing fudge factor
* add missing copyright header
* buildifier
* don't register as a generic service
* report interval defaults to min interval
* don't regenerate the response proto unless something changed
* use INTERNAL for proto parsing failure
* use absl::Duration in public API