Craig Tiller
1402e974f7
[promises] End-to-end flow control for a series of pipes ( #30994 )
...
* fix promise
* prototype
* progress
* implement new api
* Revert "fix promise"
This reverts commit ded85e7d19
.
* Revert "Revert "fix promise""
This reverts commit c2acef1958
.
* progress
* done
* Automated change: Fix sanity tests
* fix
* fix
* fix
* Automated change: Fix sanity tests
* comments
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
1ad4bbe78e
Revert "fix ( #31018 )" ( #31021 )
...
This reverts commit 2e6f268dfc
.
2 years ago
Craig Tiller
bc4f98bb36
[build] Fixes for experiments, poll strategy ( #31042 )
...
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
2e6f268dfc
fix ( #31018 )
2 years ago
Craig Tiller
d9ac89a441
[gprpp] absl::Notification polyfill ( #31008 )
...
* [gprpp] absl::Notification polyfill
* grpc_core::
* 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
96f5cddb5f
[time] Introduce time sources ( #30815 )
...
* [time] Introduce time sources
* make import trivial
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* review feedback
* fix
* Automated change: Fix sanity tests
* ios fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
e705b2e3c7
[resource_quota] Move experiments to the experiments framework ( #30830 )
...
* fix
* fix tests
* fix
* Automated change: Fix sanity tests
* better expansion
* bleh
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Cheng-Yu Chung
779419505f
Replace `absl::exchange()` with `std::exchange()` ( #30802 )
...
* Replace `absl::exchange()` with `std::exchange()`
* Update `core_banned_functions.py`
2 years ago
Craig Tiller
3db2a71dbf
[fixit] Scale down large tests ( #30675 )
...
We have many tests that create 100 threads or more, and mounting evidence that
this is harmful to our CI environment.
When the original code for many of these tests was written we ran our tests
under run_tests, which had explicit handling for tracking the number of threads
each test needed and making sure that we weren't over subscribing the test
runner. Bazel has no such facility (and the facility in run_tests has since
been removed) and so we need to adjust.
This PR adjusts down a single test and is part of a series so that we can
review and roll back easily if required.
2 years ago
Craig Tiller
f573fd44f9
[test] Semi-automatic flaky test tracking ( #30638 )
...
* [test] Semi-automatic flaky test tracking
* fix
* Automated change: Fix sanity tests
* Update update_flakes.py
* fix formatting
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
81ce6aaa5a
[fixit] Make activity_test lighter weight ( #30575 )
...
* [activity] Make test lighter weight
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
AJ Heller
d025c1732f
Revert "Reland: Make GetDefaultEventEngine return a shared_ptr ( #30563 )" ( #30573 )
...
This reverts commit ee7c0a8e4c
.
2 years ago
Craig Tiller
8d37f43bfd
[promises] Add AtomicWaker type ( #30561 )
...
* [promises] Add AtomicWaker type
* Automated change: Fix sanity tests
* review feedback
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
AJ Heller
ee7c0a8e4c
Reland: Make GetDefaultEventEngine return a shared_ptr ( #30563 )
...
* Reland: "Make GetDefaultEventEngine return a shared_ptr (#30280 )"
This reverts commit 45959e7cc1
.
* Attempted fix with NoDestruct
* Not a process-wide singleton for the type. Just a NonDestruct
* fix
2 years ago
Cheng-Yu Chung
543b290203
Build Target Reorganization Part 1 ( #30518 )
...
* Clean up gpr_base
* Remove `avoid_dep` for target `gpr`
* Add alias `gpr_base` for `gpr` for compatibility
* Fix tool error
* Update
* Remove temporary `gpr_base`
* Remove unused `alt_gpr_base_legacy`
2 years ago
AJ Heller
45959e7cc1
Revert "Make GetDefaultEventEngine return a shared_ptr ( #30280 )" ( #30558 )
...
This reverts commit 4df74f2b4c
.
2 years ago
AJ Heller
4df74f2b4c
Make GetDefaultEventEngine return a shared_ptr ( #30280 )
...
This works around valgrind memory leaks by giving EventEngines a fixed
lifetime. We eventually want ref-counted EventEngines internally, so this is
a step in the right direction as well.
2 years ago
Vignesh Babu
49f340fd16
Fix unused parameter error ( #30482 )
2 years ago
Craig Tiller
e008a6e8b7
[sleep] Rewrite to avoid bug ( #30471 )
...
* [sleep] Rewrite to avoid bug
* comments
* 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
Craig Tiller
0450157e06
[iwyu] Better handle <type_traits> ( #30349 )
...
* update mapping
* run tool
* Automated change: Fix sanity tests
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
e2ebebadfc
[iwyu] Add test/core/promise ( #29994 )
...
* [iwyu] Add test/core/promise
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
AJ Heller
5c743646e5
EventEngine::RunAt - promise/sleep ( #29726 )
...
* EventEngine::RunAt - promise/sleep
Also refactors time_util for easier conversion between
grpc_core::Timestamp/Duration to absl::Timestamp/Duration.
* move OnTimer to the state object
* generate_projects
* Automated change: Fix sanity tests
* undo time_util separation due to gpr_base dependency cycles
* less snark
* remove stale test & add missing unref
* Automated change: Fix sanity tests
* fix the auto-fixer's mistake (missing build dep)
* tidy
* rm Sleep::State
* Automated change: Fix sanity tests
* add missing exec_ctx into callback
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
Co-authored-by: Vignesh Babu <vigneshbabu@google.com>
3 years ago
Craig Tiller
9a46171833
Revert "Revert "[c++14] Remove Capture type ( #29327 )" ( #29748 )" ( #29749 )
...
This reverts commit d4aed9e615
.
3 years ago
Craig Tiller
d4aed9e615
Revert "[c++14] Remove Capture type ( #29327 )" ( #29748 )
...
This reverts commit 944c0b2ce9
.
3 years ago
Craig Tiller
944c0b2ce9
[c++14] Remove Capture type ( #29327 )
...
* Remove Capture type
* Automated change: Fix sanity tests
* update
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Yash Tibrewal
f28695351e
Prevent direct usage of absl::Mutex ( #29424 )
...
* Add script to prevent absl::Mutex occurrences
* sanity and fixes
* shellcheck
3 years ago
AJ Heller
18a8f6aad9
Refactor end2end tests to exercise each EventEngine ( #29202 )
...
* Refactor end2end tests to exercise each EventEngine
* fix incorrect bazel_only exclusions
* Automated change: Fix sanity tests
* microbenchmark fix
* sanitize, fix iOS flub
* Automated change: Fix sanity tests
* iOS fix
* reviewer feedback
* first pass at excluding EventEngine test expansion
Also caught a few cases where we should not test pollers, but should
test all engines. And two cases where we likely shouldn't be testing
either product.
* end2end fuzzers to be fuzzed differently via EventEngine.
* sanitize
* reviewer feedback
* remove misleading comment
* reviewer feedback: comments
* EE test_init needs to play with our build system
* fix golden file test runner
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
3 years ago
Craig Tiller
736441f288
Call push/pull abstraction ( #29033 )
...
* push/pull impl
* comment
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
047642c5c4
Call finalization for promises ( #29008 )
...
* Call finalization for promises
* comment
* split out and test
* dont use promise_detail:: directly
* fix
* Automated change: Fix sanity tests
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
87acbadba1
Third attempt: Convert client_auth_filter to promises ( #28968 )
...
* wip
* Automated change: Fix sanity tests
* fixes
* progress
* progress
* grpc compiles
* Automated change: Fix sanity tests
* fixing tests
* x
* progress
* better code
* Automated change: Fix sanity tests
* progress
* progress
* windows fix
* Make Duration metadata trivial
* better message
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fix
* progress
* fixes
* fix
* fix
* spam
* un-disable errantly disabled tests
* gain insight
* Automated change: Fix sanity tests
* fixes
* fixes
* fix
* debug
* tweak
* fix
* fix timeout
* fix comment
* fixes
* x
* better test
* tests
* Automated change: Fix sanity tests
* missed file
* fix
* x
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* merge
* Automated change: Fix sanity tests
* Revert "Revert "Revert "Revert "Convert client_auth_filter to promises (#28767 )" (#28951 )" (#28952 )" (#28967 )"
This reverts commit 0f73576b17
.
* fix potential memory leak
* Fix behavior if >1 pending request
* fix
* fix nullptr access
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
5fc3ff8203
grpc_millis -> Timestamp/Duration ( #28119 )
...
* wip
* Automated change: Fix sanity tests
* fixes
* progress
* progress
* grpc compiles
* Automated change: Fix sanity tests
* fixing tests
* x
* progress
* better code
* Automated change: Fix sanity tests
* progress
* progress
* windows fix
* Make Duration metadata trivial
* better message
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fix
* progress
* fixes
* fix
* fix
* spam
* un-disable errantly disabled tests
* gain insight
* Automated change: Fix sanity tests
* fixes
* fixes
* fix
* debug
* tweak
* fix
* fix timeout
* fix comment
* fixes
* x
* better test
* tests
* Automated change: Fix sanity tests
* missed file
* fix
* x
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* merge
* Automated change: Fix sanity tests
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
0f73576b17
Revert "Revert "Revert "Convert client_auth_filter to promises ( #28767 )" ( #28951 )" ( #28952 )" ( #28967 )
...
This reverts commit 235098de22
.
3 years ago
Craig Tiller
235098de22
Revert "Revert "Convert client_auth_filter to promises ( #28767 )" ( #28951 )" ( #28952 )
...
* Revert "Revert "Convert client_auth_filter to promises (#28767 )" (#28951 )"
This reverts commit 5bfe38f10f
.
* fix
3 years ago
Craig Tiller
5bfe38f10f
Revert "Convert client_auth_filter to promises ( #28767 )" ( #28951 )
...
This reverts commit cadce47ebf
.
3 years ago
Craig Tiller
cadce47ebf
Convert client_auth_filter to promises ( #28767 )
...
* Convert client_auth_filter to promises
* outline
* x
* x
* fixes
* remove-spam
* Async sequences over iterators
* iterate
* better semantics
* fix
* clang-tidy
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fixes
* fixes
* Automated change: Fix sanity tests
* progress
* progress
* progress
* progress
* progress
* credentials_test passes
* Automated change: Fix sanity tests
* Make Activity more of an interface
Move mutex and wakeup logic into a new class between PromiseActivity<>
and Activity (so that the sharing can persist), but make Activity closer
to a pure interface, so that whilst we migrate code we can implement
better fakes without forcing allocation.
* fixes
* Automated change: Fix sanity tests
* fixes
* test the awful failure
* x
* fix typo
* fix race
* 4.9
* x
* review feedback
* review feedback
* Automated change: Fix sanity tests
* review feedback
* replace AuthMetadataContext interface with GetRequestMetadataArgs struct
* Automated change: Fix sanity tests
* fix merge
* Fixup
* fix
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
Co-authored-by: Mark D. Roth <roth@google.com>
3 years ago
Craig Tiller
df943da2c4
Promise based sleeps ( #28722 )
...
* Promise based sleep
* Embrace absl::Status
* Automated change: Fix sanity tests
* Add another test, fix bug
* fix
* fix
* review feedback
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
17859fb6b5
Stop N**2 symbol name lengths ( #28502 )
...
* Experiment: Try to stop N**2 symbol name lengths
* Better copysink
* clean up tests
* fix clang-tidy
* fix
* typo?
* fix
* comment
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
d2d2d0650a
Allow MetadataMap to be a status in TrySeq ( #28490 )
...
* Enable metadata to be a 'status' for TrySeq
Begins to allow us to return trailing metadata and get the right
behaviors.
* comment
3 years ago
Craig Tiller
0bd1ab364b
Revert "Revert "Promise pipe redux ( #28319 )" ( #28364 )" ( #28400 )
...
* Revert "Revert "Promise pipe redux (#28319 )" (#28364 )"
This reverts commit 3df2a4ecea
.
* rephrase to be hopefully more readable to msvc
* golfing
3 years ago
Jan Tattermusch
3df2a4ecea
Revert "Promise pipe redux ( #28319 )" ( #28364 )
...
This reverts commit b9ea84ac9d
.
3 years ago
Craig Tiller
b9ea84ac9d
Promise pipe redux ( #28319 )
...
The original pipe implementation made a few assumptions:
* it should be used outside of arenas, implying allocation was expensive
* pipes would be fairly deep
With our expected implementation of the filter stack, pipes will max out at one to three stages, and so optimizations enabled by Filter seem to be actual pessimizations for our usual case.
Additionally we'll be operating inside of arenas and consequently memory allocation can be trivially cheap - and in doing so we can enable a far simpler implementation.
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
dc6060fbfd
Make promise arena part of the context ( #28313 )
...
* Make promise arena part of the context
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
4283b7d644
Remove competetion benchmark ( #28316 )
3 years ago
Craig Tiller
b95ed96b96
Revert "Revert "Move arena into resource quota ( #28008 )" ( #28292 )" ( #28293 )
...
This reverts commit 91edf92ce0
.
3 years ago
Craig Tiller
91edf92ce0
Revert "Move arena into resource quota ( #28008 )" ( #28292 )
...
This reverts commit ad424a2ebf
.
3 years ago
Craig Tiller
ad424a2ebf
Move arena into resource quota ( #28008 )
...
* 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
* Move arena into resource quota
* Remove redundant constant
* fixup the tests
* Automated change: Fix sanity tests
* fiiixes
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
* fixes
* fix
* fix
* Automated change: Fix sanity tests
* fixes
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
888a10d8a6
Reland arena based promises ( #28174 )
...
* Revert "Revert "Arena allocated promise (#28023 )" (#28171 )"
This reverts commit 9b07a81b1a
.
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
9b07a81b1a
Revert "Arena allocated promise ( #28023 )" ( #28171 )
...
This reverts commit 77b4ade1a7
.
3 years ago
Craig Tiller
77b4ade1a7
Arena allocated promise ( #28023 )
...
* Arena allocated promise
* finish
* Automated change: Fix sanity tests
* test
* Remove unused names
* fix
* older compiler fix
* fiiixes
* windows fixes?
* clangfmt
* fix windows?
* Document more
* fix destructors
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago