Yash Tibrewal
f28695351e
Prevent direct usage of absl::Mutex ( #29424 )
...
* Add script to prevent absl::Mutex occurrences
* sanity and fixes
* shellcheck
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
Yash Tibrewal
76a52f7696
Revert "Revert "HTTP2: Add graceful goaway ( #29050 )" ( #29187 )" ( #29190 )
...
* Revert "Revert "HTTP2: Add graceful goaway (#29050 )" (#29187 )"
This reverts commit 882f64e376
.
* Make sure fds are added to pollsets before the main test contents
3 years ago
AJ Heller
882f64e376
Revert "HTTP2: Add graceful goaway ( #29050 )" ( #29187 )
...
This reverts commit f76e1563ea
.
3 years ago
Yash Tibrewal
f76e1563ea
HTTP2: Add graceful goaway ( #29050 )
...
* HTTP2: Graceful GOAWAY
* Add another test
* Fix call unref
* Allow a bit of time imprecision
* Reviewer comment
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
Mark D. Roth
c27f8f1505
Fourth attempt: Implement transparent retries ( #28943 )
...
* Revert "Revert "Third attempt: Implement transparent retries (#28925 )" (#28942 )"
This reverts commit be70a8676c
.
* fix edge case where call is cancelled while transparent retry callback is pending
3 years ago
Craig Tiller
ff87ca02b2
Revive test/core/memory_usage ( #28931 )
...
* Revert "Deprecate gpr_get/set_allocation_functions"
This reverts commit 81df105ac8
.
* memory stats
* Hack up to get per-call numbers
* expunge memory counters
* buildgen
* Automated change: Fix sanity tests
* sanity
* fix
* Automated change: Fix sanity tests
* simplify
* better
* Automated change: Fix sanity tests
* Disable windows memory_usage
* disable mac
* disable mac
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Mark D. Roth
be70a8676c
Revert "Third attempt: Implement transparent retries ( #28925 )" ( #28942 )
...
This reverts commit 9e7453409a
.
3 years ago
Mark D. Roth
9e7453409a
Third attempt: Implement transparent retries ( #28925 )
...
* Revert "Revert "Revert "Revert "Implement transparent retries (#28548 )" (#28888 )" (#28890 )" (#28909 )"
This reverts commit 23da14c1a7
.
* revert api_fuzzer change
3 years ago
AJ Heller
85189b24bb
Reintroduce: Avoid fully qualifying namespaces (and add check) ( #28917 )
...
Based on a handful of https://abseil.io/tips , it's generally advised to
only fully-qualify namespaces when in a `using` statement, or when it's
otherwise required for compilation. In all other cases, the general
recommendation is to not fully-qualify.
This change fixes most `grpc.*` namespace uses. There are potential
challenges in trying to make blanket changes to non-gRPC namespace uses,
such as `::testing`, since there is also a `grpc::testing` namespace.
3 years ago
AJ Heller
e72a5fe5dd
Revert "Avoid fully qualifying namespaces (and add check) ( #28901 )" ( #28916 )
...
This reverts commit fc7314c701
.
3 years ago
AJ Heller
fc7314c701
Avoid fully qualifying namespaces (and add check) ( #28901 )
...
Based on a handful of https://abseil.io/tips , it's generally advised to
only fully-qualify namespaces when in a `using` statement, or when it's
otherwise required for compilation. In all other cases, the general
recommendation is to not fully-qualify.
This change fixes most `grpc.*` namespace uses. There are potential
challenges in trying to make blanket changes to non-gRPC namespace uses,
such as `::testing`, since there is also a `grpc::testing` namespace.
3 years ago
Mark D. Roth
23da14c1a7
Revert "Revert "Revert "Implement transparent retries ( #28548 )" ( #28888 )" ( #28890 )" ( #28909 )
...
This reverts commit 9f90e6d906
.
3 years ago
Mark D. Roth
9f90e6d906
Revert "Revert "Implement transparent retries ( #28548 )" ( #28888 )" ( #28890 )
...
* Revert "Revert "Implement transparent retries (#28548 )" (#28888 )"
This reverts commit 35708ff6b4
.
* disable retries for ALTS handshaker channel
3 years ago
Mark D. Roth
35708ff6b4
Revert "Implement transparent retries ( #28548 )" ( #28888 )
...
This reverts commit 7f8f3dc001
.
3 years ago
Mark D. Roth
7f8f3dc001
Implement transparent retries ( #28548 )
...
* transport: add error attributes indicating stream network state
* add missing case
* transparent retries
* don't use backoff timer for transparent retries
* fix build
* add retry_transparent_not_sent_on_wire test
* add retry_transparent_goaway test
* remove special case to short-circuit retry code if no retry policy
* clang-format
* buildifier
* simplify logic a bit
* get StreamNetworkState from metadata instead of error
* fix api_fuzzer to always start recv_trailing_metadata_ready
* clang-format
* fix test flakiness in proxy fixture
* add test with MAX_CONCURRENT_STREAMS
* don't transparently retry if we're already committed
* fix test to not reuse byte buffers
* clang-format
* disable retries for streams_not_seen_test
3 years ago
Yash Tibrewal
20aec3b2c1
Set trailing_metadata_available for recv_initial_metadata ops when generating a fake status ( #28827 )
...
* Set trailing_metadata_available for recv_initial_metadata ops when generating a fake status
* Remove log
* Fix
* Revert "Convert filter to a promise (#28815 )"
This reverts commit 361809aabb
.
* Add testing
3 years ago
Craig Tiller
9cb0747ab0
Improve promise-based-filter APIs ( #28839 )
...
* Improve promise-based-filter APIs
* review feedback
* comment
* fix
3 years ago
yihuaz
b458db9246
Eliminate gRPC insecure build ( #25586 )
...
* force submit
* fix test error
* remove is_client from local tsi and its callsites
* fix too_many_pings_test
* add missing dep
3 years ago
Craig Tiller
361809aabb
Convert filter to a promise ( #28815 )
...
* Convert filter to a promise
* copy/paste fix
* fix
3 years ago
Yash Tibrewal
4a9cfa3130
HTTP2: Add GrpcNetworkStreamState metadata ( #28668 )
...
* HTTP2: Add GrpcNetworkStreamState metadata for calls that are not sent on wire and for those that are not seen by server
* Generate projects
* clang-tidy
* Fix test
* clang-tidy
* Add a negative test
* Fix for windows
3 years ago
Craig Tiller
74a2cb6e2b
Revert "Revert "Reland slice changes ( #28601 )" ( #28615 )" ( #28624 )
...
* Revert "Revert "Reland slice changes (#28601 )" (#28615 )"
This reverts commit 939bbfc336
.
* Change random seed back to nanoseconds
3 years ago
Craig Tiller
939bbfc336
Revert "Reland slice changes ( #28601 )" ( #28615 )
...
This reverts commit b33e0d40af
.
3 years ago
Craig Tiller
b33e0d40af
Reland slice changes ( #28601 )
...
* Revert "Revert "Eliminate slice interning (#28363 )" (#28598 )"
This reverts commit 03bf699600
.
* fix?
3 years ago
Jan Tattermusch
03bf699600
Revert "Eliminate slice interning ( #28363 )" ( #28598 )
...
This reverts commit 6703186b7a
.
3 years ago
Craig Tiller
6703186b7a
Eliminate slice interning ( #28363 )
...
Eliminate slice interning, and structures in slices to support it.
Reduces grpc_slice_refcount from 40 bytes (+ a required 8 bytes elsewhere) to 16 bytes.
Removes a pointer dereference for every slice ref/unref.
Co-authored-by: ctiller <ctiller@users.noreply.github.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
apolcyn
1a8d2b6760
API to cancel grpc_resolve_address ( #27883 )
...
Add an API to cancel grpc_resolve_address
3 years ago
Craig Tiller
0deb64d1f6
Move content-type, colon prefixed metadata to new system ( #28204 )
...
* Eliminate most of grpc_message metadata handling
* Eliminate most of host metadata handling
* Remove more callouts without fixing code
* fiiixes
* typo
* Automated change: Fix sanity tests
* try-shrink
* Automated change: Fix sanity tests
* size tweaks
* less tricks
* deunique
* commonize
* commonize
* Automated change: Fix sanity tests
* size tuning, fixes
* Automated change: Fix sanity tests
* fix
* size tuning, fixes
* remove constexpr
* fix
* reuse code
* fix
* tweak code
* more tweaks
* tell no lies
* fixes
* fixes
* Automated change: Fix sanity tests
* fix
* fix
* fix
* fix
* fix?
* fix binder
* fix
* fix
* fixes
* Automated change: Fix sanity tests
* fix
* initial refactoring
* optimize status encoding
* Automated change: Fix sanity tests
* 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
* fix
* fix
* Automated change: Fix sanity tests
* fix
* fix
* fix
* compressor for path/authority
* Automated change: Fix sanity tests
* legalize
* status-enc
* fmt
* fix
* fix
* fix
* fix
* fix/opt
* fix
* fix
* fix
* fix
* Automated change: Fix sanity tests
* remove arg
* review feedback
* fix
* Small improvement in memory usage and performance
* Automated change: Fix sanity tests
* fix crash in alts
* review feedback
* fixes
* fixes
* fixes
* Automated change: Fix sanity tests
* speedup
* fix
* fix
* add comment
* add comment
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Mark D. Roth
ac70281e74
improve RPC status messages when name resolution fails ( #28091 )
...
* improve RPC status messages when name resolution fails
* fix tests
* clang-format
* fix rls_end2end_test
* fix build
* fix service_config_end2end_test
* fix too_many_pings_test
* fix tests
* fix client_channel to propagate resolution_note to LB policy
* improve comment
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
Vignesh Babu
33aef08081
Add locks to synchronize access to shared variable in flow control test to prevent data race ( #28217 )
...
* protecting shared variable with locks to prevent tsan failures
* formatting code
* removing spurious header file
* adding absl annotations
3 years ago
Craig Tiller
672f31c6ac
Channel args preconditioning ( #28132 )
...
* Channel args preconditioning
* docs
* fixes
* Automated change: Fix sanity tests
* fix
* fix this again after merge error
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
0794973bbb
Reland user-agent metadata work ( #28109 )
...
* Revert "Revert "user-agent metadata trait, also: grpc_core::Slice is born (#27770 )" (#28108 )"
This reverts commit 89d08dad9d
.
* will it blend
* will it blend
* will it blend
* lcnagfmt
* sanity
* will it blend
* sleep @ end
* will it blend
* Revert "sleep @ end"
This reverts commit d6bca8ed3d
.
* review feedback
* review feedback
3 years ago
Jan Tattermusch
89d08dad9d
Revert "user-agent metadata trait, also: grpc_core::Slice is born ( #27770 )" ( #28108 )
...
This reverts commit 7a40f50cb3
.
3 years ago
Craig Tiller
7a40f50cb3
user-agent metadata trait, also: grpc_core::Slice is born ( #27770 )
...
* new slice api
* storage-classes
* Automated change: Fix sanity tests
* tweaks
* refinement
* refinement
* compiles
* Automated change: Fix sanity tests
* better impl
* convert to gtest
* clean
* fixes
* tests
* Automated change: Fix sanity tests
* more-tests
* clarity
* comments
* comments
* fixes
* comment-updates
* fixes
* spam
* Automated change: Fix sanity tests
* move transport size into transport!
* mebbefix
* fix type
* x
* fix-merge
* review feedback
* review feedback
* Automated change: Fix sanity tests
* meh
* review feedback
* fix
* resolve compile issue
* Remove slice_refcount dependency on RefCounted
* update init for channel_data in http_client_filter
* Automated change: Fix sanity tests
* remove banned function
* fixes
* will it blend
* will it blend
* fix refcount init
* fix
* fix comment
* Fix typo in bloat script
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
6af45a35ba
Tooling to remove redundant grpc_core:: namespace references ( #28030 )
...
* Tooling to remove redundant grpc_core:: namespaces
These references tend to show up in our C++ code after C modules get
converted. Many get caught in review, many get missed.
* use it
* clang-format
3 years ago
Craig Tiller
a629c9a03e
Reland resource quota work ( #28017 )
...
* Check if memory owner available prior to polling it
The transport may drop the memory owner during its destruction sequence
* tcp_fix
* Revert "Revert "New resource quota integration (#27643 )" (#28014 )"
This reverts commit 0ea2c37263
.
* clang-format
* fix-path
* fix
3 years ago
Craig Tiller
0ea2c37263
Revert "New resource quota integration ( #27643 )" ( #28014 )
...
This reverts commit 39f0877d25
.
3 years ago
Craig Tiller
39f0877d25
New resource quota integration ( #27643 )
...
* 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
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
Esun Kim
e246811e55
Add (void) to function calls returning absl::Status ( #27761 )
3 years ago
Craig Tiller
632cc4cc36
Make hpack tracing available in opt builds also ( #27728 )
3 years ago
Craig Tiller
1df153f46e
Revert "Revert "Move metadata setting into HPackParser ( #27545 )" ( #27686 )" ( #27688 )
...
This reverts commit 0e6ced8800
.
3 years ago
Craig Tiller
0e6ced8800
Revert "Move metadata setting into HPackParser ( #27545 )" ( #27686 )
...
This reverts commit f57a1f7d8c
.
3 years ago
Craig Tiller
f57a1f7d8c
Move metadata setting into HPackParser ( #27545 )
...
* forward work to get append, limit check into parser
* further cleanup
* Remove chttp2_incoming_metadata_buffer
* Automated change: Fix sanity tests
* test fixes
* fix cronet
* wip
* first pass mementofication of parsing - libgrpc compiles
* further progress
* fixes
* fixes
* fix leak
* Automated change: Fix sanity tests
* fix leak
* fixes
* x
* improve fuzzer
* init ordering fix
* Update hpack_parser_table.h
* Update hpack_parser.cc
* Update hpack_parser_test.cc
* Automated change: Fix sanity tests
* Automated change: Fix sanity tests
* i mustache myself why
* fix use after free
* Automated change: Fix sanity tests
* fixes
* eliminate second pass metadata - this is an illegal frame and fails the new parser
* handle mementos with size > sizeof(intptr_t)
* fix
* add parsed metadata header, test
* Automated change: Fix sanity tests
* fix includes
* phase1
* phase2
* Update parsed_metadata.h
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
3 years ago
Craig Tiller
d1e01ac139
Add a test for a (now-illegal) build file construct ( #27602 )
...
* Add a test for a (now-illegal) build file construct
* add to test suite!
* fix
* fix
* fix syntax
3 years ago