AJ Heller
821443e9b5
Revert "[promise] CallPushPull -> more general TryConcurrently ( #31429 )" ( #31480 )
...
This reverts commit 11a8f66cca
.
2 years ago
Craig Tiller
11a8f66cca
[promise] CallPushPull -> more general TryConcurrently ( #31429 )
...
* [promise] CallPushPull -> more general TryConcurrently
* Automated change: Fix sanity tests
* add comment
* simplify
* debugassert
* less vtable init
* smaller shared
* iwyu
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix miscompiles on windows'
* Automated change: Fix sanity tests
* fix
* iwyu
* Automated change: Fix sanity tests
* review feedback
* Automated change: Fix sanity tests
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
58c628a7ad
[promise] Introduce map_pipe, cleanup factories ( #31430 )
...
* [promise] Introduce map_pipe, cleanup factories
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Yash Tibrewal
5f6c357e74
Move some targets from //: to //src/core: ( #31402 )
...
* temp
* temp
* temp
* top BUILD builds
* everything builds
* buildify
* temp fix_build_deps change
* fix gpr_atm
* additional changes
* fix build files
* nofixdeps
* Generate projects
* json_args
* fix context
* Generate projects
* Sprinkle some avoid_dep tags
* Run fix_build_deps
* Remove additional avoid_dep
* Revert some targets
* grpc_mock_cel
2 years ago
Craig Tiller
b0a0e8983f
[promises] ForEach fixes ( #31300 )
...
* [promises] ForEach fixes
* Automated change: Fix sanity tests
* first pass fixes
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
0057598fed
[sleep] Add a test for robustness with errant event engines ( #30622 )
...
* [sleep] Make this robust against poorly implemented event engines
* Automated change: Fix sanity tests
* Reland x2: Make GetDefaultEventEngine return a shared_ptr
* x
* [sleep] Add test for sleep robustness with bad event engines
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* Update sleep_test.cc
* Update mock_event_engine.h
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
Co-authored-by: AJ Heller <hork@google.com>
2 years ago
Craig Tiller
a23eae84c9
Revert "[flakes] Update flakiness ( #31121 )" ( #31173 )
...
This reverts commit bdc799af73
.
2 years ago
Craig Tiller
bdc799af73
[flakes] Update flakiness ( #31121 )
...
* update
* 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
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
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
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
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
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
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
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
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
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
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
Richard Belleville
468768865b
Make Buildifier Sanity Test Strict ( #27807 )
...
* Fix all lint errors in repo.
* Use strict buildifier by default
* Whoops. That file does not exist
* Attempt fix to buildifier invocation
* Add missing copyright
3 years ago
Craig Tiller
7d2f9c842c
Revert "Reland moving promises build config out of root ( #27561 )" ( #27610 )
...
This reverts commit 391f2fc2c7
.
3 years ago
Craig Tiller
391f2fc2c7
Reland moving promises build config out of root ( #27561 )
...
* Revert "Revert "Try moving promises build config out of root (#27400 )" (#27504 )"
This reverts commit f0fc72f2a4
.
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* merge with other changes
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
1619945281
Promises fuzzer ( #27406 )
...
* Add a dependency on libprotobuf-mutator
* Changes for structured fuzzing
* fuzznificent
* add a config that will build fuzzers
* bazel run --config=fuzzer_asan //path/to:fuzzer fuzzes!
* fixes
* promise fuzzer
* progress
* Automated change: Fix sanity tests
* Initial promise fuzzer
* better factoring
* misc improvements
* Initial promise fuzzer
* Automated change: Fix sanity tests
* enhancements
* fix
* Automated change: Fix sanity tests
* clang-tidy fix
* bad merge
* Update BUILD
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
60a5e474b8
Reland promise benchmarks ( #27551 ) ( #27560 )
...
* Revert "Revert promise benchmarks (#27551 )"
This reverts commit ae96af3780
.
* fixes
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
f0fc72f2a4
Revert "Try moving promises build config out of root ( #27400 )" ( #27504 )
...
This reverts commit fd64bbebb5
.
3 years ago
Craig Tiller
fd64bbebb5
Try moving promises build config out of root ( #27400 )
...
* Try moving promises build config out of root
* buildifier
* fix copyright
3 years ago
Craig Tiller
65644a7bb6
Make a suite of wakeup schedulers for tests ( #27459 )
...
* Make a suite of wakeup schedulers for tests
* add missing file
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
d1cecad651
ExecCtx based Activity wakeup mechanism ( #27454 )
...
* wakeup scheduler
* wakeup scheduler
* Automated change: Fix sanity tests
* Update exec_ctx_wakeup_scheduler_test.cc
* Remove unused name
* fix_build
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
87a973f01d
Add structurally aware fuzzing support ( #27405 )
...
* Add a dependency on libprotobuf-mutator
* Changes for structured fuzzing
* fuzznificent
* add a config that will build fuzzers
* bazel run --config=fuzzer_asan //path/to:fuzzer fuzzes!
* fixes
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fixes
* fix
* sanitizer fix
* fix directory
* regen stuff
* compile error
* remove fuzzers from cmake build
* Automated change: Fix sanity tests
* review feedback
* remove unnecessary load
* review feedback
* review feedback
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
fb73292270
Promises: Fix composition problems of loops of seq ( #27337 )
...
* Promises: Fix composition problems of loops of seq
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
ce95fd2586
For-each loop for promises ( #27241 )
...
* For-each loop for promises
* Automated change: Fix sanity tests
* Fix older compilers
* Automated change: Fix sanity tests
* review feedback
* clang-tidy fixes
* clangfmt
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
3214be885d
Add initial pipe facility for promises ( #27202 )
...
* Add initial pipe facility for promises
* Automated change: Fix sanity tests
* fixes for windows?
* comment tests
* review feedback
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
1ce8bd7067
Observable primitive for promises ( #27082 )
...
* promise sequences
* Activities for promises
* Observable primitive - single writer/multiple reader
* Automated change: Fix sanity tests
* dedup some code
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
12cd59426b
Latch synchronization primitive ( #27080 )
...
* promise sequences
* Activities for promises
* Latch synchronization primitive
* Wakeups between actors in the same activity
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
5cdaec9a4f
Promise Activities ( #26921 )
...
* promise sequences
* Activities for promises
* Automated change: Fix sanity tests
* review feedback
* review feedback
* review feedback
* review feedback
* review feedback
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
6a06f0cd4a
promise sequences ( #27058 )
3 years ago
Craig Tiller
f292f001ee
Promise join combinator ( #26918 )
...
* Add construct/destruct helper functions
Will be used in upcoming promise implementation
* Poll type for promises library
* Library to talk about things that look like promises if you squint
* Helper code for promises to deal with status types generically
* Library to talk about things that make promises
* build
* Join combinator for promise library
* Changes to sync required for promise activities
* sanitized
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* Update basic_join.h
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
724ad871d4
Promise loop ( #26913 )
...
* Poll type for promises library
* Library to talk about things that look like promises if you squint
* Library to talk about things that make promises
* Promises loop construct
* build
* Changes to sync required for promise activities
* sanitized
* add comments
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago