Craig Tiller
8d2f70d53c
Reland "[promises] Convert call to a party" ( #32651 )" ( #32653 )
...
<!--
If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the
appropriate
lang label.
-->
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Yash Tibrewal
29ce6463d1
Revert "[promises] Convert call to a party" ( #32651 )
...
Reverts grpc/grpc#32359
2 years ago
Craig Tiller
ed0ebb837e
[promises] A few tweaks to poll ( #32588 )
...
Looking for something else I made some test additions, code tweaks to
make `Poll<>` better.
<!--
If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the
appropriate
lang label.
-->
2 years ago
Craig Tiller
a9873e8357
[promises] Convert call to a party ( #32359 )
...
<!--
If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the
appropriate
lang label.
-->
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
0d7b34451a
[promises] Make Poll<T> its own type, not a variant<> ( #32515 )
...
Avoids some compilation problems on older MSVC's, opens the door for
some future optimizations.
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
c3a0de5814
[promises] Improve seq test ( #32462 )
...
I had some doubts about `Seq` debugging another problem, so expanded the
tests we have to try and isolate the problem (so far without success, so
I think the original problem was elsewhere).
<!--
If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the
appropriate
lang label.
-->
2 years ago
Craig Tiller
0ecc18ef0f
[promises] Party: an activity with many participant promises ( #32308 )
...
<!--
If you know who should review your pull request, please assign it to
that
person, otherwise the pull request would get assigned randomly.
If your pull request is for a specific language, please add the
appropriate
lang label.
-->
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
c9b47f8584
[promises] Remove TryConcurrently - it was the wrong idea ( #32298 )
2 years ago
Craig Tiller
842fddb106
[promises] Void specialization for latch ( #32281 )
...
* [latch] Void specialization for latch
* fix-comments
* fix
2 years ago
Craig Tiller
0893fca089
[promises] Roll forward server promise calls with fixes ( #32261 )
...
* stuff
* spam-cleanup
* Revert "Revert "[promises] Server call (#31448 )" (#32260 )"
This reverts commit dbfb888e1f
.
* spam-cleanup
* Automated change: Fix sanity tests
* asserts-for-sanity
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
dbfb888e1f
Revert "[promises] Server call ( #31448 )" ( #32260 )
...
* Revert "[promises] Server call (#31448 )"
This reverts commit bbeb15006a
.
* clang-fmt
2 years ago
Craig Tiller
bbeb15006a
[promises] Server call ( #31448 )
...
* add experiment
* allow instantiation
* scratchings
* scratchings
* sniffly
* Automated change: Fix sanity tests
* fix
* fix
* fix
* Automated change: Fix sanity tests
* progress
* change pipe labels to enable server code to be written
* better api
* Automated change: Fix sanity tests
* progress
* [promises] Implementation of deadline for server-based-calls
* compression filter compiles again
* Automated change: Fix sanity tests
* fix
* server tracing fixes
* get client initial metadata
* progress
* progress
* server call surface progress
* Automated change: Fix sanity tests
* move payload
* server-progress
* recv-message-server-connchan
* logging
* fix context-gate
* recv fix@top
* Automated change: Fix sanity tests
* recv close on server
* top termination start
* [promises] Move Empty to be first class
* fixes
* fix
* flow control fix
* got to orphan!
* orphan
* call orphan
* spam cleanup
* fix
* new cancelation semantics
* progress
* large metadata fixes
* fix
* fix
* log
* better logs
* fix-chanz
* logging, necessaryness
* fix typo
* fixes
* fix
* fix
* fix-pipe
* cleanup logging
* fix
* build-fix
* fix
* Automated change: Fix sanity tests
* logging
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* better primitive
* Revert "better primitive"
This reverts commit 119b5ee244
.
* fix
* fix
* trrracing
* Automated change: Fix sanity tests
* get-trailing-metadata
* cancellation
* Automated change: Fix sanity tests
* add transform pipeline to pipe
* add transform pipeline to pipe
* interceptor lists
* new server initial md api into filters
* convert connected_channel
* convert call
* initial promise based filter conversion
* convert promise based filter
* build fixes
* compile fix
* fixes
* fix ordering
* fixes
* check-metadata
* revert later: debug code
* better debug
* fix metadata ordering with messages in promise based filter
* fix ordering problem between batch completion and promise completion
* properly handle failure on receive message path on client
* more debug, fix a repoll bug in pbf
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
* cleanup logging
* fixes
* missing file
* fixes
* logging
* Automated change: Fix sanity tests
* fixes
* convert logging filter
* fix
* Automated change: Fix sanity tests
* fix bad server response test
* Revert "Disable logging test (#32049 )"
This reverts commit 5fc92eaeae
.
* fix
* Automated change: Fix sanity tests
* fix memory leaks, logging
* Automated change: Fix sanity tests
* slice refcount debugging
* asan-canaries
* leak-fix
* leak-fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* remove mistaken line
* add-comment
* fix refcounting bug
* Automated change: Fix sanity tests
* rename variable
* renames
* bleh
* carry pipe close status from bottom of pipe to top to appease
recv-close-on-server
* backport cancellation
* Revert "carry pipe close status from bottom of pipe to top to appease"
This reverts commit fa33301dcd
.
* fix
* Automated change: Fix sanity tests
* review-feedback
* comment-ordering
* monostate
* renames
* undo-review-feedback
* fix
* review-feedback
* review-feedback
* fix
* review-feedback
* drop debugloc constructor
* interceptor-list-rev-feedback
* interceptor-list-rev-feedback
* pipe test
* review-feedback
* undo-mistaken-change
* Automated change: Fix sanity tests
* pipe error state
* detect send/recv failures and report
* iwyu, build
* fix submodules
* fix
* warning
* cleanup
* Automated change: Fix sanity tests
* fix
* fix for windows
* fix
* null pointer fix
* iwyu
* gen projex
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
AJ Heller
6a92df7237
[fixup] EventEngine Nomenclature ( #32195 )
2 years ago
Yash Tibrewal
aa11978541
Fix include guards for src/ and test/ directories ( #32167 )
...
* Fix include guards for src/ and test/ directories
* Sanity
* Update new files
2 years ago
Craig Tiller
2caa79feeb
[promises] Multi-producer, single-consumer for inter-activity comms ( #31927 )
...
* mpsc
* Automated change: Fix sanity tests
* tests
* tests
* Automated change: Fix sanity tests
* comments
* comments
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
9beb72836e
[event_engine+promises] EventEngine based wakeup scheduler for activities ( #31926 )
...
* eliminate activity* from wakers
* event engine activity wakeup scheduler
* Automated change: Fix sanity tests
* add exec ctx
* fix
* iwyu
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
a414dbd304
Revert #30349 ( #32008 )
...
* [iwyu] Add missing #include <type_traits> to fix build breakage with LLVM after e0a66116fc
* Update IWYU mappings
New libc++ doesn't provide <type_traits> when including <utility>.
* run iwyu
Co-authored-by: alexfh <alexfh@google.com>
2 years ago
Yijie Ma
f99b8b5bc4
Convert c-style comments to C++-style comments ( #31923 )
...
* baseline
* fix clang-tidy
* manually revert these files
* manually fixup at eof
* revert 2 more files
* change check_deprecated_grpc++.py
* change end2end_defs.include template
* fix check_include_guards.py
* untrack tools/distrib/python/convert_cstyle_comments_to_cpp.py
not yet ready to be submitted
* fix
yapf check_include_guards.py
remove a space...
* fix version.cc.template
* fix version_info.h.template
2 years ago
Cheng-Yu Chung
896bfe373f
Add missing included `try_seq.h` in `map_pipe.h` ( #31943 )
...
* Add missing included `try_seq.h` in `map_pipe.h`
* Automated change: Fix sanity tests
2 years ago
Craig Tiller
91083659fa
[promises] Cancellation callback ( #31863 )
...
* [promises] Cancellation callback
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Alisha Nanda
ad91404e0e
Remove static initialization of memory allocator in tests ( #31776 )
...
* Add more info to error
* Fix tests
* Remove static initialization of memory allocator
* Fix test failure
* Automated change: Fix sanity tests
Co-authored-by: ananda1066 <ananda1066@users.noreply.github.com>
2 years ago
Craig Tiller
2438b58b03
[promises] TryConcurrently: add tests for many push/pulls ( #31758 )
2 years ago
Craig Tiller
a116fa7e25
Revert "Revert "[chaotic-good] Reland basic frame serialization (#316… ( #31637 )
...
* Revert "Revert "[chaotic-good] Reland basic frame serialization (#31631 )" (#31635 )"
This reverts commit 4e2b936e88
.
* windows fix?
2 years ago
Craig Tiller
4e2b936e88
Revert "[chaotic-good] Reland basic frame serialization ( #31631 )" ( #31635 )
...
This reverts commit 571e98f6d5
.
2 years ago
Craig Tiller
571e98f6d5
[chaotic-good] Reland basic frame serialization ( #31631 )
...
* Revert "Revert "[chaotic-good] Basic frame serialization/deserialization (#31257 )" (#31630 )"
This reverts commit e8ac147311
.
* fix build
2 years ago
Craig Tiller
e8ac147311
Revert "[chaotic-good] Basic frame serialization/deserialization ( #31257 )" ( #31630 )
...
This reverts commit 8185a56322
.
2 years ago
Craig Tiller
8185a56322
[chaotic-good] Basic frame serialization/deserialization ( #31257 )
...
* [chaotic-good] initial sketch of frame serialization
* Automated change: Fix sanity tests
* tinkering
* fix up
* add tests,fuzzers
* more tests
* fix
* fuzzers
* Automated change: Fix sanity tests
* fix-build
* Automated change: Fix sanity tests
* fix inf loop
* fix refcounting bug
* fixdeps
* fix
* fix continuations
* iwyu
* fix build
* fix
* build fixes
* better split
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fixes
* iwyu
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Esun Kim
50fbe51238
Fix IWYU with clang-15 ( #31556 )
...
* Fix iwyu
* iwyu fix
* more fixed
* Build fix
* more fix
* More fixes 3
2 years ago
Esun Kim
530b702259
Update Clang 15 ( #31518 )
...
* clang-15
* iwyu
* run clang_format_code
* Clang-Tidy config
* Fix misc-unused-using-decls
* Fixed performance-inefficient-vector-operation
* Sanity
2 years ago
Craig Tiller
b19f87d10e
[promises] Fix order of eval bug in try_concurrently_test ( #31490 )
...
* [promises] Fix order of eval bug in try_concurrently_test
* iwyu
* comment
2 years ago
Craig Tiller
2f9ac46a5d
Revert "Revert "[promise] CallPushPull -> more general TryConcurrently ( #31429 )" ( #31480 )" ( #31481 )
...
* Revert "Revert "[promise] CallPushPull -> more general TryConcurrently (#31429 )" (#31480 )"
This reverts commit 821443e9b5
.
* fix
2 years ago
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
AJ Heller
be19b174f7
[promises] Cleanup: Always assert that contexts are non-null ( #31397 )
2 years ago
Craig Tiller
b8b9fd7235
[promises] Always assert that contexts are non-null ( #31205 )
...
* [promises] Always assert that contexts are non-null
* Automated change: Fix sanity tests
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
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
beb5bdca62
[promises] Promise based grpc_call ( #29598 )
...
* Automated change: Fix sanity tests
* fix
* fixes
* fixup allocator story - we should require a context
* fixes
* doodling
* context scribbles
* [arena] Add ManagedNew(), gtest-ify test
Add a ManagedNew() method to Arena that calls the relevant destructor at Arena destruction time.
There are some cases coming up in the promise based call work where this becomes super convenient, and I expect it's likely that there are other places that's true too.
* Automated change: Fix sanity tests
* progress
* lalalal
* progress
* x
* Automated change: Fix sanity tests
* fixes
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* fixes
* fixes
* fixes
* Automated change: Fix sanity tests
* progress
* fix client streaming
* handle invalid flags
* Automated change: Fix sanity tests
* no logging
* progress
* progress
* channelz
* tentative fix
* fix
* lalala
* Automated change: Fix sanity tests
* more readable trace
* logging improvements, leading to bug fix in connected channel
* fix
* improve debuggability
* fix
* progress to better refcounting
* progress
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fix
* fix
* fix
* threading
* Automated change: Fix sanity tests
* fix
* fix
* improve debuggability
* fix
* fix
* Automated change: Fix sanity tests
* fix
* make promises runtime configurable
* Automated change: Fix sanity tests
* fix
* fix build
* fix broken test
* clean up api
* deal with stats better
* peer string!
* introduce fragments
* Automated change: Fix sanity tests
* use fragments
* stuff
* [promises] Add AtomicWaker type
* Automated change: Fix sanity tests
* fix
* fix write path
* fix
* polling-entity-hell
* review feedback
* fix
* fix
* fix
* fix
* make an experiment
* [experiments] Make output more diffable/readable
* Automated change: Fix sanity tests
* buildifier sized indentations
* fix
* fix
* Automated change: Fix sanity tests
* fix?
* 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
* updates
* review feedback
* first pass feedback
* Automated change: Fix sanity tests
* review feedback
* naming
* better-logs
* fix test
* Automated change: Fix sanity tests
* comments
* fix
* progress
* validation
* iwyu
* fix
* ugh this needs to be any
* fix flakiness in asan
* call tracing
* cleanup unused args
* fix windows
* fix build
* ugh
* fix tsan race
* threading-fix
* bloat1
* bloat2
* bloat3
* fix
* unused-args
* sanity
* iwyu
* fix
* fix
* this is ok
* iwyu, exchange
* fix
* Automated change: Fix sanity tests
* fix ee lifetime issue
* fix
* review feedback
* Automated change: Fix sanity tests
* comment
* x
* fix tsan race
* iwyu
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.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
9c98d67d7a
[c++14] absl::make_unique --> std::make_unique ( #31159 )
...
* [c++14] absl::make_unique --> std::make_unique
* fix
* fix
2 years ago
AJ Heller
2ee2c91c92
Reland x2: Make GetDefaultEventEngine return a shared_ptr ( #30619 )
...
* Reland x2: Make GetDefaultEventEngine return a shared_ptr
* remove thread leak from NativeDNSResolver
This is not going to work for resolvers that support cancellation.
* give resolvers bounded lifetimes
Some resolver own EventEngines. EventEngines cannot run off the end of
the process since they have unjoined threads (problematic in a small set
of environments). This gives resolvers bounded lifetimes, and allows
replacement of resolvers without ASAN issues of deleting resolvers in
active use (occurs in tests).
* fix
* fix windows
* fix surface init test
* fix
* sanitize
* use after move
* the test must wait for the callback to be destroyed
* windows fix: delete the resolver on iomgr shutdown, not before
* Make TimerManager threads non-joinable
On gRPC shutdown, any unjoined TimerManager threads will cause TSAN to
detect thread leaks. This fix resolves issues I saw in end2end test
shutdown in another PR, where a single timer manager thread was always
alive after the test ended.
The long-term solution is to integrate the new ThreadPool here, but this
unblocks me for now.
* backport fix
* fix
* shared_ptr<EventEngine> in EventEngine benchmarks
2 years ago
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