Craig Tiller
53c42e9dae
[arena] Make arena refcounted ( #36758 )
...
Make `Arena` be a refcounted object.
Solves a bunch of issues: our stack right now needs a very complicated dance between transport and surface to destroy a call, but with this scheme we can just hold a ref to what we need in each place and everything works out.
Removes some `ifdef`'d out code that had been sitting dormant for a year or two also -- I'd left it in as a hedge against it being maybe a bad idea, but it looks like it's not needed.
Closes #36758
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36758 from ctiller:arena-counting d1b672fe30
PiperOrigin-RevId: 638767768
6 months ago
Tanvi Jagtap
0ed095093c
[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging - gpr_log ( #36703 )
...
[grpc][Gpr_To_Absl_Logging] Migrating from gpr to absl logging - gpr_log
In this CL we are migrating from gRPCs own gpr logging mechanism to absl logging mechanism. The intention is to deprecate gpr_log in the future.
We have the following mapping
1. gpr_log(GPR_INFO,...) -> LOG(INFO)
2. gpr_log(GPR_ERROR,...) -> LOG(ERROR)
3. gpr_log(GPR_DEBUG,...) -> VLOG(2)
Reviewers need to check :
1. If the above mapping is correct.
2. The content of the log is as before.
gpr_log format strings did not use string_view or std::string . absl LOG accepts these. So there will be some elimination of string_view and std::string related conversions. This is expected.
Closes #36703
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36703 from tanvi-jagtap:test_core_gpr_log_01 26c4307b08
PiperOrigin-RevId: 636801504
6 months ago
AJ Heller
1a8b22f2de
[build] Restrict visibility for creating core credentials types. ( #36216 )
...
Closes #36216
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36216 from drfloob:conceal-core-cred-creation a44a299273
PiperOrigin-RevId: 625425746
8 months ago
Craig Tiller
8b8f43aecf
[metadata] Remove arena from `grpc_metadata_batch` constructor ( #36118 )
...
Internally, use `std::vector` instead of `ChunkedVector` to hold extra metadatum.
I'm not totally convinced this is the right move, so it's going to be a try it and monitor for a month or so thing... I might roll back if performance is actually affected (but I think we'll see some wins and losses and overall about a wash).
Closes #36118
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/36118 from ctiller:YUPYUPYUP 68e0acd0a2
PiperOrigin-RevId: 620902195
8 months ago
AJ Heller
521b2ea17c
[EventEngine] Make oauth2 test utils work with EventEngine clients ( #35866 )
...
The Oauth2 credentials currently rely on pollsets and polling entities, partially because grpc_core::HttpRequest relies on them as well. This is a temporary solution to get both iomgr and EventEngine clients to pass the oauth2 interop tests.
Tested with the client experiment on and off.
Closes #35866
COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/35866 from drfloob:oauth2_utils_work_with_ee_hack 91eea0c196
PiperOrigin-RevId: 605433817
10 months 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
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
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
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
Craig Tiller
6532084a06
[iwyu] rest of the owl: src/core/lib - excluding iomgr, gpr ( #29735 )
...
* [iwyu] rest of the owl: src/core/lib - excluding iomgr, gpr
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
* fix
* fix
* fixes
* fixes
* x
* fix?
* fix
* windows fix
* fix
* fix
* fix
* fix
* fix
* debug
* fix
* fix
* Revert "debug"
This reverts commit c99b8d12dd
.
* Automated change: Fix sanity tests
* fix?
* Automated change: Fix sanity tests
* header cleanup
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* fixes
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
5918f98ecb
[iwyu] Enable nosafe_headers ( #29591 )
...
* Add flag
* sweep1
* fixes
* speedup
* fixes
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fix
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
138c4667c9
Change main argument of call promise to be a struct ( #29019 )
...
* introduce call args
* bs
* x
* Automated change: Fix sanity tests
* fix
* Simplify naming
* tweak
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
4b881c5947
Remove grpc_mdelem ( #28267 )
...
* Automated change: Fix sanity tests
* content-type
* Automated change: Fix sanity tests
* clang-format
* fix
* Move colon prefixed metadata
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* try to fix windows failure
* try and scale sizes better
* ambiguity fix?
* wip metadatavalueasslice
* Fix status code for resource exhaustion
* Revert "Revert "Move a bunch of slice typed metadata to new system (#28107 )" (#28208 )"
This reverts commit 7717587063
.
* fix test
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* slice helper
* x
* noinline
* try and scale sizes better
* Automated change: Fix sanity tests
* fixes
* fix
* fix
* fixes
* fix build
* fix overflow
* progress
* Automated change: Fix sanity tests
* fix
* initial work
* progress
* fix
* fix
* Automated change: Fix sanity tests
* progress
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* compressor for path/authority
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* legalize
* legalize
* status-enc
* fmt
* fix
* fix
* fix
* fix
* fix/opt
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* fix
* comment
* fmt
* remove arg
* Automated change: Fix sanity tests
* remove name
* Automated change: Fix sanity tests
* sketch
* Automated change: Fix sanity tests
* progress
* add specialized encoders for compression metadata
* progress
* review feedback
* fix
* missoing files
* remove crud
* xxxxx
* more
* Small improvement in memory usage and performance
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* Fix caching
* Automated change: Fix sanity tests
* omg
* fix crash in alts
* default everything
* Automated change: Fix sanity tests
* review feedback
* fixes
* fixes
* fixes
* Automated change: Fix sanity tests
* speedup
* fix
* fix
* clang-format
* fixes
* progress
* fixes
* fixes
* Automated change: Fix sanity tests
* fix
* fix
* progress
* update timeout encoding algorithm
* Automated change: Fix sanity tests
* fix
* fix
* review feedback
* progress
* progress
* progress
* progress
* builds
* Automated change: Fix sanity tests
* remove debug code
* fix ub
* unname things
* coax compilers
* reduce failures
* fix
* fix
* fix
* fix
* cleanup
* compile fix
* preserve concatenation rule
* spew
* fix
* fix
* postfix operator++ for msvc
* fix
* fix
* remove unused code
* lower cost of hpack table construction
* fix refcounting
* review feedback
* fixes
* fixes
* support multivalued traits
* Automated change: Fix sanity tests
* fix
* clearer clear
* appeasing 4.9
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Esun Kim
460898f11c
Migrated from grpc_error_string to grpc_error_std_string ( #26068 )
...
* Added grpc_error_std_string
* Migrated to grpc_error_std_string
4 years ago
Esun Kim
ca945a58e9
Introduced grpc_error_handle ( #25902 )
...
- Define grpc_error_handle
- Replace grpc_error* with grpc_error_handle
4 years ago
Julien Boeuf
f930322bf9
Add more tests for STS
...
- ensure that we don't crash if the token file is not readable.
- fixed the oauth2 token fetcher as well.
5 years ago
Vijay Pai
2477b966e2
Remove unused-parameter warnings, round 2 (17 of 19)
5 years ago
Hope Casey-Allen
59564ebd96
Fix warnings to unblock gcc8 support
5 years ago
Julien Boeuf
189c2c8c30
Adding support for STS Token Exchange Creds in core:
...
- IETF specification is available here:
https://tools.ietf.org/html/draft-ietf-oauth-token-exchange-16
6 years ago
Soheil Hassas Yeganeh
9decf48632
Move security credentials, connectors, and auth context to C++
...
This is to use `grpc_core::RefCount` to improve performnace.
This commit also replaces explicit C vtables, with C++ vtable
with its own compile time assertions and performance benefits.
It also makes use of `RefCountedPtr` wherever possible.
6 years ago
Noah Eisen
4d20a66685
Run clang fmt
7 years ago
Noah Eisen
be82e64b3d
Autofix c casts to c++ casts
7 years ago
Yash Tibrewal
8cf1470a51
Revert "Revert "All instances of exec_ctx being passed around in src/core removed""
7 years ago
Yash Tibrewal
ad4d2dde00
Revert "All instances of exec_ctx being passed around in src/core removed"
7 years ago
Yash Tibrewal
c354269ba7
Remove _ prefixed variable names
7 years ago
Yash Tibrewal
6c26b16fe0
Move ExecCtx to grpc_core namespace. Make exec_ctx a private static in ExecCtx and some minor changes
7 years ago
Yash Tibrewal
75122c2357
Address some PR comments
7 years ago
Craig Tiller
4ac2b8e585
Enable clang-tidy as a sanity check, fix up all known failures
7 years ago
Yash Tibrewal
34a57d0346
rename all test core files to cc and a lot of C++ style conversions
7 years ago
Yash Tibrewal
0ee7574732
Removing instances of exec_ctx being passed around in functions in
...
src/core. exec_ctx is now a thread_local pointer of type ExecCtx instead of
grpc_exec_ctx which is initialized whenever ExecCtx is instantiated. ExecCtx
also keeps track of the previous exec_ctx so that nesting of exec_ctx is
allowed. This means that there is only one exec_ctx being used at any
time. Also, grpc_exec_ctx_finish is called in the destructor of the
object, and the previous exec_ctx is restored to avoid breaking current
functionality. The code still explicitly calls grpc_exec_ctx_finish
because removing all such instances causes the code to break.
7 years ago
Craig Tiller
0ff222a23b
Add pollset_kick stats
7 years ago
Mark D. Roth
e0778b2c18
Add cancellation to asynchronous security APIs.
7 years ago
ncteisen
969b46ef73
Add rich closure debug mode
8 years ago
ncteisen
274bbbe6a0
Add rich closure debug mode
8 years ago
Jan Tattermusch
7897ae9308
auto-fix most of licenses
8 years ago
Craig Tiller
dc3998e710
Converting code
8 years ago
Craig Tiller
4d16f4dd1d
Add some casts for C++ compatibility
8 years ago
Yuchen Zeng
47de64c700
zalloc grpc_pollset
8 years ago
Craig Tiller
91031dacb1
Changes to exec_ctx/closure/combiner/workqueue interfaces
...
- make closures know where they should be executed (eg, on a workqueue,
or a combiner, or on an exec_ctx)
- this allows removal of a large number of trampoline functions that
were appearing whenever we used combiners, and should allow for a much
easier interface to combiner locks
8 years ago
Craig Tiller
28b72428a8
clang-format
8 years ago
Craig Tiller
618e67d655
s/GPR_SLICE/GRPC_SLICE/g
8 years ago
Craig Tiller
b37d53ebc0
Bulk update #includes
8 years ago