Craig Tiller
175ccc3a90
Reland global config changes ( #32661 )
...
<!--
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
Alisha Nanda
19d06a78ec
Add random early rejection for metadata ( #32600 )
...
(hopefully last try)
Add new channel arg GRPC_ARG_ABSOLUTE_MAX_METADATA_SIZE as hard limit
for metadata. Change GRPC_ARG_MAX_METADATA_SIZE to be a soft limit.
Behavior is as follows:
Hard limit
(1) if hard limit is explicitly set, this will be used.
(2) if hard limit is not explicitly set, maximum of default and soft
limit * 1.25 (if soft limit is set) will be used.
Soft limit
(1) if soft limit is explicitly set, this will be used.
(2) if soft limit is not explicitly set, maximum of default and hard
limit * 0.8 (if hard limit is set) will be used.
Requests between soft and hard limit will be rejected randomly, requests
above hard limit will be rejected.
2 years ago
Craig Tiller
f9085e4496
[chttp2] Fix fuzzer found flow control error ( #32716 )
...
Previously we triggered a flow control update when `announced <
target/2`, but if `target==1` then we fail to send a flow control update
(announced is never less than 1/2==0) and break our forward progress
guarantees.
b/259780449 internally.
2 years ago
Jan Tattermusch
0c1797cd9f
Revert "[config] Move global config alongside core configuration" ( #32659 )
...
Reverts grpc/grpc#30788
(it breaks grpc_objc_bazel_test (see
https://github.com/grpc/grpc/pull/30788#issuecomment-1476372187 ) and
also seems to be breaking some other internal stuff).
2 years ago
Craig Tiller
b7a83305e6
[config] Move global config alongside core configuration ( #30788 )
...
This is a big rewrite of global config.
It does a few things, all somewhat intertwined:
1. centralize the list of configuration we have to a yaml file that can
be parsed, and code generated from it
2. add an initialization and a reset stage so that config vars can be
centrally accessed very quickly without the need for caching them
3. makes the syntax more C++ like (less macros!)
4. (optionally) adds absl flags to the OSS build
This first round of changes is intended to keep the system where it is
without major changes. We pick up absl flags to match internal code and
remove one point of deviation - but importantly continue to read from
the environment variables. In doing so we don't force absl flags on our
customers - it's possible to configure grpc without the flags - but
instead allow users that do use absl flags to configure grpc using that
mechanism. Importantly this lets internal customers configure grpc the
same everywhere.
Future changes along this path will be two-fold:
1. Move documentation generation into the code generation step, so that
within the source of truth yaml file we can find all documentation and
data about a configuration knob - eliminating the chance of forgetting
to document something in all the right places.
2. Provide fuzzing over configurations. Currently most config variables
get stashed in static constants across the codebase. To fuzz over these
we'd need a way to reset those cached values between fuzzing rounds,
something that is terrifically difficult right now, but with these
changes should simply be a reset on `ConfigVars`.
<!--
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
62bb99d163
[e2e] c++-ify core e2e test fixtures ( #32550 )
...
A step toward #14016 .
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Craig Tiller
2485fa94bd
[chttp2] Fix fuzzer found bug ( #32507 )
...
<!--
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
292d0a55aa
[metadata] Get logging to work safely ( #32343 )
...
This compiles for //:grpc, but not for tests yet.
It's the right approach though - @veblush hoping this is something you
can pick up and finish off.
<!--
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
8e49dff4a8
[flake] Reduce test size for too_many_pings_test ( #32284 )
...
It was timing out in some sanitizer builds, likely because we've got
more debug code in the path now.
2 years ago
Esun Kim
905df9dee6
Update Abseil to 20230125 ( #32139 )
...
* Update abseil to 1.20230125.0
* Fix IWYU
2 years ago
Cheng-Yu Chung
cf424f4be2
Fix flakiness of `End2EndBinderTransportTest/UnaryCallServerTimeout` ( #32074 )
...
* Fix flakiness of `End2EndBinderTransportTest/UnaryCallServerTimeout`
Add `grpc_test_slowdown_factor()` for the deadline in `End2EndBinderTransportTest/UnaryCallServerTimeout` to reduce flakiness
* Fix
2 years ago
Craig Tiller
67f364e23e
[cleanup] Eliminate usage of GRPC_ASSERT(false...); ( #31757 )
...
* crash function
* progress
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fixes
* Automated change: Fix sanity tests
* fix
* Automated change: Fix sanity tests
* fix
* fix
* use cpp attr
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fix
* fix
* add exclusion
* fix
* typo
* fix
* fmt
* Update tcp_socket_utils.cc
* Automated change: Fix sanity tests
* fix
* revert php changes
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
tsunche
c751218ffe
[BinderTransport] remove unnecessary grpc_init() in binder_server_test ( #31945 )
...
* remove unnecessary grpc_init() in binder_server_test
* remove useless blank line
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
Craig Tiller
49a3035d44
[iwyu] Fix CI job ( #31921 )
...
* fix-includes
* fix
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* add warning label
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Cheng-Yu Chung
b887534111
[cleanups] Remove `include/grpc/impl/codegen/propagation_bits.h` ( #31870 )
...
* Remove `include/grpc/impl/codegen/propagation_bits.h`
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
2 years ago
Cheng-Yu Chung
ac365cadfb
Remove `include/grpc/impl/codegen/port_platform.h` ( #31778 )
2 years ago
Alisha Nanda
38fd9c87e3
Revert "Sends out-of-band close for streams from client side when destroying transport ( #31814 )" ( #31833 )
...
This reverts commit 1daa3877ed
.
2 years ago
Mao
1daa3877ed
Sends out-of-band close for streams from client side when destroying transport ( #31814 )
...
* Send out-of-band close for streams when destroying transport
* Remove unnecessary blank lines
* Print error if transaction messages don't match
2 years ago
Mark D. Roth
5e4d9f4bcf
xDS stateful session affinity: implement C-core filter ( #31788 )
...
* stateful session affinity: implement filter
* register filter config parser
* fix unused parameter errors
* remove some FIXMEs that are not longer needed
* clang-tidy
* iwyu
* iwyu
* revert iwyu changes to observability_logging_sink.cc
* generate_projects
* shorten filter name
* don't use absl::optional for path
* fix build
* don't add cookie to trailing metadata unless it's Trailers-Only
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
Cheng-Yu Chung
f5d21653fc
Revert "[event_engine] Move combiner executor usage to event engine ( #31713 )" ( #31753 )
...
This reverts commit b04aa1cf92
.
Co-authored-by: AJ Heller <hork@google.com>
2 years ago
Cheng-Yu Chung
77b3972f95
Clean up the TODO item in build target `grpc_base` part `channel_args` ( #31642 )
...
* Clean up the TODO item in build target `grpc_base` part `channel_args`
* Update
* Update
* Update
* Automated change: Fix sanity tests
* update
* Automated change: Fix sanity tests
2 years ago
Craig Tiller
b04aa1cf92
[event_engine] Move combiner executor usage to event engine ( #31713 )
...
* [event_engine] Move combiner executor usage to event engine
* fix
* review feedback
* fix
* x
* fix
* fix
2 years ago
Cheng-Yu Chung
7e3ada34e6
Clean up the TODO item in build target `grpc_base` -- part `closure` ( #31001 )
...
* Clean up the TODO item in build target `grpc_base` part `closure`
* Update
* Update
* Revert "Update"
This reverts commit daf3118390
.
* Update
* Update
* Automated change: Fix sanity tests
2 years ago
Craig Tiller
fe5aace311
[flow_control] Fixes for the flow_control_fixes experiment found via fuzzing ( #31676 )
...
* [flow_control] Enable experiment in debug builds, fix bugs found by fuzzer
* fix
* disable experiment
* flowctl
* flowctl
* Automated change: Fix sanity tests
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Cheng-Yu Chung
ffe8d0f31c
Clean up the TODO item in build target `grpc_base` -- part `channel_stack_builder` ( #31643 )
...
* Clean up the TODO item in build target `grpc_base` -- part `channel_stack_builder`
* Update
2 years ago
Cheng-Yu Chung
3ef817b3bf
Clean up the TODO item in build target `grpc_base` -- part `slice` ( #31003 )
...
* Clean up the TODO item in build target `grpc_base` part `slice`
* Automated change: Fix sanity tests
2 years ago
Cheng-Yu Chung
47b9a57de9
Remove `g_glip` and `class GrpcLibraryInterface` ( #30414 )
...
* Remove `g_glip` and `class GrpcLibraryInterface`
* Update
* Update
* Update
* Automated change: Fix sanity tests (#20 )
* Update
* Update
* Update
* Test
* Fix
* Revert "Test"
This reverts commit 2f5c77e98d
.
* More fix
* More fix
* More fix
* Minor fix
* Revert "Minor fix"
This reverts commit 1ee3ae4da1
.
* Revert "More fix"
This reverts commit 1fc234896b
.
* Revert "More fix"
This reverts commit 851393c0e6
.
* Revert "More fix"
This reverts commit ed342a51d0
.
* Revert "Fix"
This reverts commit 286ad8e639
.
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
Esun Kim
250f9fc026
Revived google-readability-casting ( #31607 )
...
* Added google-readability-casting
* Fix
* Use brace init for constants
* more
* Fix
* Fix 2
* More fix
* Fixf
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
Vignesh Babu
73ea66d8ee
A http2 setting to ensure safe rollout of tcp receive buffer auto-sizing and peer-state based framing experiments ( #31404 )
...
* A http2 setting to ensure safe rollout of tcp receive buffer auto-sizing and peer-state based framing experiments
* fix comments + sanity + iwyu
* comments
* update per comments
* comments
* iwyu
* address comments
* remove if check
2 years ago
Esun Kim
26bc68c4af
Added readability-duplicate-include ( #31608 )
...
* Added readability-duplicate-include
* Fix
* format
2 years ago
Esun Kim
660a6f281e
Added readability-redundant-string-init ( #31609 )
...
* Added readability-redundant-string-init
* Fix
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
Craig Tiller
141bc3b634
[experiments] Reland enabling tcp_read_chunks for debug builds ( #31420 )
...
* Revert "Revert "[experiments] Enable tcp_read_chunks for debug builds (#31374 )" (#31417 )"
This reverts commit 987b50a258
.
* Fix read failure
* fixes
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
0724a90fd8
Revert "Revert "[arena] pool allocator ( #31298 )" ( #31414 )" ( #31415 )
...
This reverts commit 2c11e56433
.
2 years ago
Alisha Nanda
2c11e56433
Revert "[arena] pool allocator ( #31298 )" ( #31414 )
...
This reverts commit 5e27b2df97
.
2 years ago
Craig Tiller
5e27b2df97
[arena] pool allocator ( #31298 )
...
* [arena] pool allocator
* add tests
* Automated change: Fix sanity tests
* better sizes
* iwyu
* Automated change: Fix sanity tests
* first pass cut fragments
* fix1
* fix
* Automated change: Fix sanity tests
* fix
* iwyu
* build-deps
* fix for windows
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Esun Kim
85794d4094
Deprecated grpc_error_std_string ( #31267 )
2 years ago
apolcyn
a310ceebf9
Update stream leak test to use transport counter instead of iomgr object counter ( #31250 )
...
* update test to use transport counter instead of iomgr object counter
2 years ago
Esun Kim
3c96517fc0
Simplified GRPC_ERROR_CREATE macros ( #31222 )
...
* Simplified GRPC_ERROR_CREATE macros
* Code migration
2 years ago
Craig Tiller
03c049b14f
[chttp2] Fix performance regression for small stream sends ( #31180 )
...
* [chttp2] Fix performance regression for small stream sends
* fix
* comment
* comment
* fix
2 years ago
Esun Kim
347bf1a1f4
Removed GRPC_ERROR_[INT|STR] macros ( #31195 )
...
* Clean-up which
* Reformat
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