AJ Heller
8f5300b95d
Rename the default EventEngine headers ( #30528 )
...
* Rename the default EventEngine headers
Small cleanup. This code hasn't been related to factories for a month or
two.
* ensure only one target contains default_event_engine.h
* src + hdr in same target
* include guards
2 years ago
Craig Tiller
2cb58b9565
[build] Auto-deps for test/core/resource_quota ( #30430 )
...
* [build] Auto-deps for test/core/resource_quota
* fix
* fix
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
4ec5d9eb55
[resource_quota] Custom controller ( #30457 )
...
* [resource_quota] Custom controller
Instead of a PID controller use a custom binary-search inspired controller that will eventually converge to a good control value.
Experiments have shown this able to successfully hold a 95% memory pressure, optimizing for performance most of the time, and gracefully restricting memory usage under severe pressure.
There will be further changes after this one to use the new control value in various systems.
* Automated change: Fix sanity tests
* Update memory_quota.cc
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
c866d65966
[promises] Eliminate switch.h ( #30317 )
...
* [promises] Eliminate switch.h
Instead build a jump table that we can index into and call the appropriate function. Means that the dispatch mechanism can be done in C++ without a code generator, and so eliminates a bunch of fiddly code.
* fix
* ensure static initialization
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
15a81131a8
[c++] Add a non-destructed type ( #30491 )
...
* [c++] Add a non-destructed type
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* comment
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
af634e19b4
Declarative JSON parser ( #30442 )
...
* Declarative JSON parser
* Automated change: Fix sanity tests
* fix
* shrinking stuff a little
* static vtables
* separate fns
* simpler?
* make maps work
* windows fixes
* Automated change: Fix sanity tests
* simplify code
* Automated change: Fix sanity tests
* vtable-test
* dont always create vec/map impls for every type
* comments
* make error consistent
* move method private
* progress
* durations!
* Automated change: Fix sanity tests
* fix
* fix
* fix
* Automated change: Fix sanity tests
* post-load
* Automated change: Fix sanity tests
* document JsonPostLoad() and add static_assert
* don't copy field names, to avoid length limitations
* use absl::Status
* accept either string or number for numeric values
* add test for direct data member of another struct type
* remove unused method
* add support for retaining part of the JSON wirthout processing
* update test for changes in Json::Parse() API
* add absl::optional support
* Automated change: Fix sanity tests
* fix tests, improve error messages, and add overload to parse to existing object
* remove overload of LoadFromJson()
* change special case for Json to instead use Json::Object
* fix build
* improve error structure, add missing types, and improve tests
* clang-format
* Automated change: Fix sanity tests
* fix build
* add LoadJsonObjectField(), add LoadFromJson() overload that takes an ErrorList parameter, and add tests for parsing bare top-level types
* fix msan
* Automated change: Fix sanity tests
* fix error message
* Automated change: Fix sanity tests
* add mechanism to conditionally disable individual fields
* fix build
Co-authored-by: Craig Tiller <craig.tiller@gmail.com>
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
Co-authored-by: Craig Tiller <ctiller@google.com>
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
AJ Heller
c752a6b25e
Reland: Windows IOCP implementation for the WindowsEventEngine ( #30480 )
...
Reverts #30466 , relanding #30389 . Requires a cherrypick.
2 years ago
Craig Tiller
a5cab10d6f
[load_balancing] Move interfaces to src/core/lib/load_balancing ( #30465 )
...
* [load_balancing] Move interfaces to src/core/lib/load_balancing
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
AJ Heller
9d4e0e17fe
Revert "Windows IOCP implementation for the WindowsEventEngine ( #30389 )" ( #30466 )
...
This reverts commit 52402afdd4
.
2 years ago
AJ Heller
52402afdd4
Windows IOCP implementation for the WindowsEventEngine ( #30389 )
...
This is a partial fork of the windows iomgr code - specifically the IOCP and Socket pieces - with some improved architecture and encapsulation. And the start of a WindowsEventEngine.
Once this code is used in a gRPC TCP context, I imagine a few issues will shake out. Also, getting sanitizers set up with MSVC will take a bit of work (see a commit referencing abseil and MSVC bugs to hack around).
I forked the IomgrEventEngine's posix poller interfaces in the hope of negotiating compatibility between the platforms, but the interfaces diverged a fair bit, and I'm doubtful we'll be able to use these "pollers" generically in the same TCP code. Reunification might not happen, and that's probably fine, we'll see how similar the TCP code looks once it's fleshed out.
I also extracted the IomgrEventEngine's timer piece into a separate component, usable by both engines.
2 years ago
AJ Heller
e18d335b0e
Add common EventEngine Closure types ( #30438 )
...
* Add common EventEngine Closure types
These have been written a few times, so let's standardize on a spot for
them.
* sanitize
* format
2 years ago
Craig Tiller
91bcb11c66
[build] Auto-deps for test/core/end2end ( #30409 )
...
* [build] Auto-deps for test/core/end2end
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
05e6bf2e4a
[build] Add test/core/util, test/core/event_engine to auto build deps ( #30364 )
...
* [build] Add test/core/util, test/core/event_engine to auto build deps
* deal with suppressions
* fix suppressions
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* progress
* Automated change: Fix sanity tests
* fix
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Esun Kim
7360d2ea82
gtestify test/core/iomgr: partial reland ( #30373 )
...
* Revert "Revert "gtestify test/core/iomgr (#30209 )" (#30362 )"
This reverts commit c7c0ba6f32
.
* -_-
* Regen
2 years ago
Vignesh Babu
5171aa70da
Forking the posix poll based poller for iomgr event engine ( #30230 )
...
* start
* Forking the posix epoll1 poller for event engine
* re-generate projects
* fix test
* fix sanity checks
* fix
* update fix
* more build issue fixes
* even more fixes
* add no_windows tag
* re-generate projects
* update comment
* cleanup
* Automated change: Fix sanity tests
* review comments
* fix tsan issue
* re-generate projects
* cleanup
* fix missing build dep
* fix mac build issue
* forking poll based poller for iomgr event engine
* minor fix in test
* update test to run both pollers
* re-generate projects
* simplifying build graph
* re-generate projects
* cleanup
* fix macOS build issues
* review comments
* re-generate projects
* add missing generated file
* review comments
* fix sanity checks
* rename one more build target
* fix build-dep issues
* fix sanity checks
* retry fix sanity checks
* format
* review comments
* fix
* fix
* review comments
* fix sanity checks
* max build and run issues
* fix review comments
* Automated change: Fix sanity tests
Co-authored-by: Vignesh2208 <Vignesh2208@users.noreply.github.com>
2 years ago
Craig Tiller
93fbacb534
[resource_quota] Flow control experiment ( #30310 )
...
* ideation
* fix periodic update behavior around initialization
* fix
* finish it up
* finish it up
* fix
* fix
* fix
* Update BUILD
* Automated change: Fix sanity tests
* tweak
* Automated change: Fix sanity tests
* pid after all
* fix
* tweak
* Automated change: Fix sanity tests
* fix
* fix
* comment
* fix
* comment
* better comment
* make set point configurable
* fix test
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
c7c0ba6f32
Revert "gtestify test/core/iomgr ( #30209 )" ( #30362 )
...
This reverts commit 5b49a1b4bd
.
2 years ago
Esun Kim
5b49a1b4bd
gtestify test/core/iomgr ( #30209 )
...
* gtestify test/core/iomgr
2 years ago
Craig Tiller
f5bb60d8e8
[channel_args] Improve comparison performance ( #30322 )
...
* [channel_args] Improve comparison performance
* fix
* Automated change: Fix sanity tests
* faster still
* fix
* fix
* some no cost boosts if they get hit
* fix
* final tweak for pointers
* check
* fix
* Automated change: Fix sanity tests
* fix
* ugh
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
6fc2511e4d
[resource_quota] Periodically return memory to central quota ( #30268 )
...
* [resource_quota] Periodically return memory to central quota
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* optionalize features
* fix periodic update behavior around initialization
* fix
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
201213c681
client channel: add tests for authority override precedence ( #30172 )
...
* client channel: add tests for authority override precedence
* add unit test
* Automated change: Fix sanity tests
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
Mark D. Roth
90cc6fa706
xDS: upgrade the commit of the xDS protos that we're using ( #30318 )
...
* xDS: upgrade the commit of the xDS protos that we're using
* Automated change: Fix sanity tests
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
Vignesh Babu
fbe051fb51
Forking the posix epoll1 poller for iomgr event engine ( #30135 )
...
* start
* Forking the posix epoll1 poller for event engine
* re-generate projects
* fix test
* fix sanity checks
* fix
* update fix
* more build issue fixes
* even more fixes
* add no_windows tag
* re-generate projects
* update comment
* cleanup
* Automated change: Fix sanity tests
* review comments
* fix tsan issue
* re-generate projects
* cleanup
* fix missing build dep
* fix mac build issue
* minor fix in test
* simplifying build graph
* re-generate projects
* fix macOS build issues
* review comments
* re-generate projects
* add missing generated file
* review comments
* fix sanity checks
* rename one more build target
* fix sanity checks
* retry fix sanity checks
Co-authored-by: Vignesh2208 <Vignesh2208@users.noreply.github.com>
2 years ago
Esun Kim
b37996d50e
Removed GRPC_ERROR_IS_ABSEIL_STATUS ( #30267 )
...
* Removed GRPC_ERROR_IS_ABSEIL_STATUS
* Remove error_internal.h
2 years ago
Craig Tiller
830940a103
[gprpp] Move time averaged stats to gprpp ( #30265 )
...
* move to gprpp
* use the shared thing
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Esun Kim
6bdc1810c9
gtestify test/core/slice ( #30198 )
...
* gtestify test/core/slice
* Fix
* fix
* fix
2 years ago
Esun Kim
34b380697d
gtestify test/core/http ( #30200 )
...
* Fix
* gtestify test/core/http
* Fix
* fix
2 years ago
Craig Tiller
7b8e3d89c4
[build] Auto-deps for a grab bag more targets ( #30184 )
...
* progress
* progress
* progress
* progress
* Automated change: Fix sanity tests
* progress
* progress
* progress
* progress
* fixes
* fix
* progress
* progress
* progress
* progress
* Automated change: Fix sanity tests
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Esun Kim
0f272f836d
gtestify test/core/gpr ( #30196 )
...
* fix
* gtestify test/core/gpr
* Fix
* fix
2 years ago
Esun Kim
57de9d7353
gtestify test/core/compression ( #30204 )
...
* gtestify core/compression
* Fix
2 years ago
Craig Tiller
b590d192dc
[build] Remove errant dependency ( #30291 )
2 years ago
Craig Tiller
3ec0e29bcf
[test] Convert cq verifier to C++ ( #30256 )
...
* [test] Convert cq verifier to C++
* Automated change: Fix sanity tests
* fix
* dead code
* strength reduction
* dead code
* fix
* when search/replace goes wrong
* review feedback
* review feedback
* cleanup
* fixes
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
caf0a49e67
[build] Reland grpc_base autodeps ( #30235 )
...
* Revert "[build] Automate deps for grpc_base (#29995 )"
This reverts commit 5956fb8829
.
* fix merge
* Revert "fix merge"
This reverts commit 75d73ca362
.
* Revert "Revert "[build] Automate deps for grpc_base (#29995 )""
This reverts commit c3bec79a21
.
* [build] Reland grpc_base autodeps
* add note
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
4491ed26aa
BUILD: move work_serializer to its own build target ( #30255 )
...
* BUILD: move work_serializer to its own build target
* add autodeps tag
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
Esun Kim
2cba5f80cf
gtestify test/core/transport ( #30210 )
...
* gtestify test/core/transport/
* Fix
* Fix2
* Fix
2 years ago
Esun Kim
89fedf9a9d
Rollback gtestified minimal_stack_is_minimal_test ( #30275 )
2 years ago
Esun Kim
c0ec55d2f1
gtestify test/core/util ( #30195 )
...
* Gtestify cmdline_test
* gtestify histogram_test
* Fix
2 years ago
Esun Kim
98c423503c
gtestify test/core/channel ( #30201 )
...
* gtestify test/core/channel
* Update by review
* Fix 2
2 years ago
Esun Kim
dfe6a8b903
gtestify test/core/gprpp ( #30197 )
...
* fix
* gtestify test/core/gprpp
* Update by review
2 years ago
AJ Heller
1076a7d447
Use AnyInvocable in EventEngine APIs ( #30220 )
2 years ago
Craig Tiller
1b5295a4a2
[iomgr] Remove executor/...
...
I've tried this before in #27445 and we found some internal usage of this code. Today I can find no such usage, so let's try again.
2 years ago
Esun Kim
7dfd49429f
gtestify test/core/handshake ( #30207 )
...
* gtestify test/core/security (#30199 )
* fix
* gtestify test/core/security
* Fix
* Fix
2 years ago
Esun Kim
156ad18623
gtestify test/core/security ( #30199 )
...
* fix
* gtestify test/core/security
* Fix
2 years ago
Mark D. Roth
a3afb81274
Second attempt: XdsClient: refactor transport code to make it injectable ( #30225 )
...
* Revert "Revert "XdsClient: refactor transport code to make it injectable (#30183 )" (#30223 )"
This reverts commit fa57b9d0bc
.
* fix deadlock seen internally
* Automated change: Fix sanity tests
* fix memory leak
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
Esun Kim
70a311b736
gtestify test/core/tsi ( #30211 )
...
* Fix
* test/core/tsi/alts/frame_protector
* Fix
* Fix
2 years ago
Esun Kim
87c0bb1a98
gtestify test/core/address_utils ( #30193 )
...
* Fix
* Fix
* Fix
* Fix
2 years ago
Esun Kim
508279bdd5
gtestify test/core/client_channel/resolvers ( #30203 )
...
* gtestify test/core/client_channel/resolvers
* Update by review
2 years ago
Esun Kim
4749078ecc
gtestify test/core/resource_quota ( #30215 )
...
* gtestify test/core/resource_quota
* Fix
2 years ago
AJ Heller
fa57b9d0bc
Revert "XdsClient: refactor transport code to make it injectable ( #30183 )" ( #30223 )
...
This reverts commit bd9bc5fd3e
.
2 years ago
AJ Heller
71c0eb090a
Revert "[WIP] Use AnyInvocable in EventEngine APIs ( #30208 )" ( #30219 )
...
This reverts commit dbbf16f07a
.
2 years ago