Craig Tiller
20d1efc38a
[stats] Move core stats to C++ ( #30936 )
...
* begin c++
* Automated change: Fix sanity tests
* progress
* progress
* missing-files
* Automated change: Fix sanity tests
* moved-from-stats
* remove old benchmark cruft, get tests compiling
* iwyu
* Automated change: Fix sanity tests
* fix
* fix
* fixes
* fixes
* add needed constructor
* Automated change: Fix sanity tests
* iwyu
* fix
* fix?
* fix
* fix
* Remove ResetDefaultEventEngine
Now that it is a weak_ptr, there's no need to explicitly reset it. When
the tracked shared_ptr is deleted, the weak_ptr will fail to lock, and a
new default EventEngine will be created.
* forget existing engine with FactoryReset
* add visibility
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
Co-authored-by: AJ Heller <hork@google.com>
2 years ago
Craig Tiller
2d00d50c59
[event_engine] Improve scaling in threadpool ( #31234 )
...
* fixes
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fixes
* fixes
* fix
* fix-win
* fix iwyu
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
66c8e098ee
[slice] Remove murmur implementation ( #31118 )
...
* [slice] Remove _internal variants of APIs
* Automated change: Fix sanity tests
* fix
* reduce bloat
* fixes
* Automated change: Fix sanity tests
* murmurings
* Automated change: Fix sanity tests
* progress
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
db5fe72da9
[tsan] Threadsafe strerror implementation ( #31167 )
...
* fix
* spread
* fix
* Automated change: Fix sanity tests
* fix
* remove unnecessary .c_strs
* lashes
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.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
Esun Kim
f11282df8d
Bump dev version v1.51-dev ( #31174 )
...
* bump version to 1.51.0-dev
* regenerate projects
2 years ago
Craig Tiller
ebc4f236b6
[slice] Remove _internal variants of APIs ( #30953 )
...
* [slice] Remove _internal variants of APIs
* Automated change: Fix sanity tests
* fix
* reduce bloat
* fixes
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
f15ba1ffc7
[tls] Remove support for pthread tls ( #31040 )
...
* [tls] Remove support for pthread tls
* fix
* fix
* fix
* lalala
* fix
* fix
* Clean up deployment target changes
* additional clean up of deployment target
* regen podspec for updated file list
* remove destination change
* deployment target override for ios cpp test
* fix?
* fix run test script & update test destination
* [tls] Remove support for pthread tls
* fix
* fix
* fix
* lalala
* fix
* fix
* Clean up deployment target changes
* additional clean up of deployment target
* regen podspec for updated file list
* remove destination change
* deployment target override for ios cpp test
* fix?
* fix run test script & update test destination
* merge
* fix
* final script fix for proper destination & target
* more deployment target fix
* objc ios test script fix
Co-authored-by: Denny C. Dai <dennycd@me.com>
Co-authored-by: dennycd <dennycd@google.com>
2 years ago
Craig Tiller
e8df8185e5
[debug] Fine grained event tracing ( #31105 )
...
* moved-from-stats
* [debug] Fine grained event tracing
* Automated change: Fix sanity tests
* comment
* Automated change: Fix sanity tests
* iwyu
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
AJ Heller
c0e5e35c7a
Replace EventEngine::Promise with grpc_core::Notification ( #31027 )
...
* Replace EventEngine::Promise with grpc_core::Notification
* remove promise.h
* Automated change: Fix sanity tests
* fix windows
* fix iocp
* fix client_test
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2 years ago
Mark D. Roth
07df5ff9c7
json_object_loader: refactor ErrorList into its own library ( #31049 )
...
* json_object_loader: refactor ErrorList into its own library
* fix observability_config_test
* generate_projects
* iwyu
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
c2ab8c99bb
Revert "Revert "[c++] Move environment functions to C++ ( #30937 )" ( #30986 )" ( #30988 )
...
This reverts commit 96264e07b8
.
2 years ago
Craig Tiller
96264e07b8
Revert "[c++] Move environment functions to C++ ( #30937 )" ( #30986 )
...
This reverts commit 74c0d6fe3f
.
2 years ago
Craig Tiller
74c0d6fe3f
[c++] Move environment functions to C++ ( #30937 )
...
* [gprpp] Move env to C++
* move headers/impl
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* Update http_proxy.cc
* fix
* fix
* rename
* fix merge
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
92f58c18a8
Revert "Revert "[chttp2] Improve huffman decode efficiency ( #30479 )" ( #30961 )" ( #30962 )
...
This reverts commit bfea47093f
.
2 years ago
Craig Tiller
bfea47093f
Revert "[chttp2] Improve huffman decode efficiency ( #30479 )" ( #30961 )
...
This reverts commit 6c7f921f5f
.
2 years ago
Craig Tiller
6c7f921f5f
[chttp2] Improve huffman decode efficiency ( #30479 )
...
* first pass
* refinement #1
* fix
* opt
* 8
* 5
* 12
* 10
* 7
* 15
* 8n
* 15n
* 8a
* 16a
* 15a
* 5a
* 10a
* 7a
* 9a
* 12a
* 11a
* 11b
* 11b
* 7b
* 15b
* 14b
* 15i
* 12i
* 9i
* 10i
* finalizing
* fix
* tweak
* 10f
* 10r
* 7r
* 8r
* 9r
* more
* rething
* 8s
* 9s
* 12s
* 7s
* 10s
* 15snr
* 12snr
* 14snr
* 13snr
* 11snr
* 20snr
* 15snr
* 18snr
* 7snr
* 7snr
* 12-2stp
* 13-2stp
* 14-2stp
* 11-2stp
* 10-2stp
* 9-3stp
* 8-3stp
* 7-3stp
* 8-2stp
* auto-tune1
* max-depth-2
* max-depth-3
* max-depth-2
* abbreviate
* working version
* add benchmark
* fix
* fix
* fix
* ditch define
* better code layout
* static fns
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fix build
* cleanup and comment
* fmt
* fix
* test
* tag
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* progress
* progress
* progress
* fixes
* cleanup
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fmt
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* fix
* add encode/decode fuzzer
* Automated change: Fix sanity tests
* fix
* fix
* fix
* review feedback
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
a27073f7a8
[config] Move proxy mapper into core configuration ( #30842 )
...
* [config] Move proxy mapper into core configuration
* fix
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
346c103a1c
[build] Remove dependency cycle for grpc_init/shutdown ( #30921 )
...
* [build] Remove dependency cycle for grpc_init/shutdown
* missing files
* Automated change: Fix sanity tests
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
7ba58bb925
[build] Move certificate provider registry into its own build target ( #30836 )
...
* [build] Move cert registry into its own build target
* Automated change: Fix sanity tests
* fix
* forgot to save file
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
381976dc99
[windows] Handling for tchar type in C++ ( #30845 )
...
* [windows] Handling for tchar type in C++
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* Update tchar.cc
* Update tchar.h
* Update tchar.h
* Update env_windows.cc
* Update string_util_windows.cc
* Update tmpfile_windows.cc
* Update env_windows.cc
* Update env_windows.cc
* Update subprocess_windows.cc
* Automated change: Fix sanity tests
* fix
* Update subprocess_windows.cc
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
ca8b437613
[experiments] Single experiments flag ( #30822 )
...
* single experiments flag
* add missing files
* fix
* empty-string-fix
* fix
* Automated change: Fix sanity tests
* ensure cold path is out of line
* add log for enabled/disabled experiments
* remove bad sentence
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Vignesh Babu
029f945504
Migrating posix event pollers to use new event poller interface ( #30419 )
...
* Migrating posix event pollers to use new event poller interface
* add inline attributes
* Automated change: Fix sanity tests
* remove ref/unref from iomgr engine closure ad add custom closure types internal to the pollers
* updating time util usage
* use unique_ptrs
* update comments
* Automated change: Fix sanity tests
* fix review comments
* review comments
* cleanup
* update comments
* fix
* cleanup
* update comments
* Automated change: Fix sanity tests
* fix misleading comments
* bug fixes
* fix
* fix
* revert some changes for bug fixes and allow spurious wakeups for poll based poller
* sanity
* fix
* review comments
* fix
* comment
* remove re-defined function
* fix review comments
* fix windows iocp build issue due to removed function
* change Milliseconds return type
* remove header
* regenerate projects
* fix sanity
* fix sanity
* Automated change: Fix sanity tests
* delete unused file
* build issue
* cleanup
Co-authored-by: Vignesh2208 <Vignesh2208@users.noreply.github.com>
2 years ago
Craig Tiller
c580d0d9a7
[experiments] Add experiment framework ( #30775 )
...
* [experiments] Add experiment framework
* auto-ci-config
* fix
* fix
* Automated change: Fix sanity tests
* support different configs
* Automated change: Fix sanity tests
* cleaner generated code
* Automated change: Fix sanity tests
* enforce expiry
* make sure expiry isnt far in the future
* fix
* Automated change: Fix sanity tests
* remove specified testing
* cleaner
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* docstring
* clean up code
* Automated change: Fix sanity tests
* review feedback
* build fix
* Automated change: Fix sanity tests
* ownership
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
004788af3d
[cleanup] Remove profiling timers ( #30779 )
...
* [cleanup] Remove profiling timers
- nobody has used this system in years
- if we needed it, we'd probably rewrite it at this point to be something more modern
- let's remove it until that need arises
* fix
* fixes
2 years ago
Craig Tiller
18da150733
[metadata] Reduce size by packing ( #30474 )
...
* [metadata] Reduce size by packing
* fix
* comment
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* windows workaround?
* Revert "fix"
This reverts commit 925211164b
.
* iterate encodables correctly
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
0e30264a5d
XdsBootstrap: split interface from implementation ( #30759 )
...
* create XdsBootstrapInterface
* move gRPC-specific bootstrap code into its own module
* move LookupAuthority() back to base class
* share constants
* clang-format
* Automated change: Fix sanity tests
* fix xds_bootstrap_test
* clang-format
Co-authored-by: markdroth <markdroth@users.noreply.github.com>
2 years ago
apolcyn
778f04dccf
Bump version on master branch to 1.50.0.dev ( #30614 )
...
* bump version to 1.50.0-dev
* regenerate projects
2 years ago
AJ Heller
0c5b6171ad
EventEngine Forkables ( #30473 )
...
A (currently) pthread_atfork-based fork support mechanism, allowing EventEngines - or any other object that wants to implement the Forkable interface - respond to forks.
2 years ago
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
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
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
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
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
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
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
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
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
AJ Heller
dbbf16f07a
[WIP] Use AnyInvocable in EventEngine APIs ( #30208 )
...
This provides a move-only alternative to std::function.
fix oracle and engine factory
fix generate_projects for any_invocable
fix
format & iwyu
Automated change: Fix sanity tests (#30205 )
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2 years ago