Yijie Ma
08555c8723
Add enforcement for cpp-style comment license in check_copyright.py ( #32273 )
...
* enforce cpp style comment copyright license in check_copyright.py
also add functionality to fix(replace) c-style comment with cpp style
comment
* fix tools/codegen/core/gen_stats_data.py
* review
2 years ago
AJ Heller
e4af983819
Reland "EventEngine::RunAfter: GrpcLb" ( #32262 )" ( #32269 )
...
There was a ~1% flake in grpclb end2end tests that was reproducible in opt builds, manifesting as a hang, usually in a the SingleBalancerTest.Fallback test. Through experimentation, I found that by skipping the death test in the grpclb end2end test suite, the hang was no longer reproducible in 10,000 runs. Similarly, moving this test to the end of the suite, or making it run first (as is the case in this PR) resulted in 0 failures in 3000 runs.
It's unclear to me yet why the death test causes things to be unstable in this way. It's clear from the logs that one test does affect the rest, grpc_init is done once for all tests, so all tests utilize the same EventEngine ... until the death test completes, and a new EventEngine is created for the next test.
I think this death test is sufficiently artificial that it's fine to change the test ordering itself, and ignore the wonky intermediate state that results from it.
Reproducing the flake:
```
tools/bazel --bazelrc=tools/remote_build/linux.bazelrc test \
-c opt \
--test_env=GRPC_TRACE=event_engine \
--runs_per_test=5000 \
--test_output=summary \
test/cpp/end2end/grpclb_end2end_test@poller=epoll1
```
2 years ago
Mark D. Roth
8ed8a3a054
deadline filter: deadline_state no longer needs to be the first field in call data ( #32265 )
2 years ago
Xuan Wang
deb1e25543
Revert "server: introduce ServerMetricRecorder API and move per-call reporting from a C++ interceptor to a C-core filter ( #32106 )" ( #32272 )
...
This reverts commit c7f641da0d
.
2 years ago
apolcyn
37b78ff514
Remove overall deadlines in ALTS concurrent connectivity test ( #32267 )
2 years ago
AJ Heller
a9e2ef199e
[EventEngine] Skip legacy fork handling for ExecCtx when in an EventEngine thread ( #32229 )
...
* [EventEngine] Implement EventEngine::IsWorkerThread()
* lighter-weight thread pool check
* add lightweight thread_local flag for EventEngine/iomgr fork
* generate_projects; add files
* fix
* back out EE implementation changes
* better description
* 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
Yousuk Seung
c7f641da0d
server: introduce ServerMetricRecorder API and move per-call reporting from a C++ interceptor to a C-core filter ( #32106 )
...
* backend metric sampling
* Comments addressed.
* More comments addressed.
* Pushing changes left behind locally.
* Removed empty lines
* Update OrcaService to use ServerMetricRecorder (no named metrics yet)
* Comments addressed.
* More comments addressed
* More comments addressed.
* Comments fixed
* Comments addressed.
* Test fixed
* make seq returned always up-to-date
* skip atomic load when not cached
* Fixed ABSL_GUARDED_BY
* Comments addressed except client_lb_end2end_test
* test updated
* Comments addressed
* BUILD fix.
* BackendMetricDataState moved to a separate header
* comments addressed
* Fixed clang and buildifier errors
* More sanity check errors fixed.
* Fixed xds tests
* Ran generate_projects.sh
* Comments addressed
* comments addressed.
* generate project
* Build fixed
* generate project
* sanity check errors fixed
* test fixed
* Backup poller period override moved to main()
* Also move cfstream override
* Clang fixes, sanitize
* generate_projects.sh
* portable print format fix
* Removed outdated comment
2 years ago
Mark D. Roth
95b2f0c8ca
Revert "EventEngine::RunAfter: GrpcLb" ( #32262 )
...
* Revert "EventEngine::RunAfter: GrpcLb (#30043 )"
This reverts commit b19604ea60
.
* iwyu
2 years ago
Craig Tiller
439c7518a3
[thread_stress_test] reduce thread count to a reasonable number ( #32263 )
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
9378a7d262
[experiments] Reduce experiment bloat on mobile platforms ( #32253 )
...
* see if experiments can lose weight
* test
* test
* test
* test
* contra test
* contra test
* add explainer
* Automated change: Fix sanity tests
* fixes
* fix
* strict-bs
* comments
* fixes
* iwyu
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
75f4ee6e5e
xDS: fix bug when receiving an update for an aggregate cluster child ( #32249 )
2 years ago
Esun Kim
9403786b11
Changing parallelism of linux/grpc_portability_build_only ( #32246 )
...
* Change args
* Fix args
2 years ago
Craig Tiller
d769da7229
[promises] Convert server auth filter ( #32094 )
...
* [promises] Convert server auth filter
* Automated change: Fix sanity tests
* fix compile
* fix
* fix
* fix
* Automated change: Fix sanity tests
* implement-wakeup
* fix-error
* Automated change: Fix sanity tests
* fix-forwarding
---------
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Fred Klassen
125141c9d2
append entries into SSL key log file ( #31371 )
...
This corrects an issue where a developer is unable to decrypt live TLS captures
in Wireshark. Instead the user must take multiple steps to be able to view
decrypted TLS application data, including saving a capture on disk and
reloading the capture.
By appending rather than overwriting the TLS key log file, it is possible
to configure Wireshark TLS (Pre)-Master-Secret log filename before the
capture is started (pointing to and empty or existing file). Then, when a
packet capture is started, decryted data is available immediately. Further,
if the capture is restarted, no keys are lost and no Wireshark reconfiguration
is required.
Appending rather than overwiting TLS key files follows the technique used by
`openssl` binary, Chrome and others. All executables are able to append to the
same keylog file simultaneously, and Wireshark is able to dycrypt all apps
simultaneously.
2 years ago
Arvind Bright
c6cdda03e7
Add v1.52.1-1.52.3 release of grpc-go to interop matrix ( #32205 )
...
* Add v1.52.3 release of grpc-go to interop matrix
* Add only v1.52.3 release of grpc-go to interop matrix
2 years ago
Esun Kim
ff88928415
Fix cmake on macos ( #32241 )
2 years ago
Eugene Ostroukhov
b168e9cc9d
stateful session affinity: add end2end tests ( #32009 )
...
Co-authored-by: Mark D. Roth <roth@google.com>
2 years ago
Mark D. Roth
b6cc7f0dba
stateful session affinity: fix propagation of overrideHostStatus ( #32237 )
2 years ago
Craig Tiller
32be2c2179
[benchmark] Fix static initialization bug in bm_huffman_decode ( #32245 )
...
* [benchmark] Fix static initialization bug in bm_huffman_decode
* fix performance
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
Sergii Tkachenko
03ea0bb28d
xDS interop: Add missing k8s 401 retries on get and delete ops ( #32244 )
...
PR https://github.com/grpc/grpc/pull/32210 missed adding 401 retries
to several ops:
- All deletes
- get_pod()
- list_pods_with_labels()
2 years ago
Esun Kim
905df9dee6
Update Abseil to 20230125 ( #32139 )
...
* Update abseil to 1.20230125.0
* Fix IWYU
2 years ago
Craig Tiller
f06ebb7407
fix log ( #32235 )
2 years ago
Daniel Azuma
54ad01cf01
[ruby] Fix Ruby 2.6 build ( #32231 )
2 years ago
Esun Kim
1dc254c488
Podspec... ( #32200 )
2 years ago
AJ Heller
a4e3a22f51
[EventEngine] Shims: use EventEngine from EndpointConfig ( #32201 )
...
* [EventEngine] Shims: use EventEngine from EndpointConfig
* proper handling of channel_args nullptr; EE lifetime maintenance
* iwyu
2 years ago
Esun Kim
b64d623f24
CMake's better handling c++14 requirement ( #31916 )
...
* Bumped the cmake version version to 3.8
* Switch to target_compile_features for cxx_std_14
* Regen
2 years ago
Craig Tiller
9f1b5dab69
[promises] Handle an odd cancellation case in promise-based-filter ( #32225 )
2 years ago
Sergii Tkachenko
b734ade466
xDS interop: Refresh k8s auth on 401 to pick up updated auth token ( #32210 )
...
This PR adds retries on create/get requests from the test driver to the K8s API when 401 Unauthorized error is encountered.
K8S python library expects the ApiClient to be cycled on auth token refreshes.
The problem is described in kubernetes-client/python#741 . Currently we don't have any hypotheses why we weren't affected by this problem before.
To force the ApiClient to pick up the new credentials, I shut down the current client, create a new one, and replace api_client properties on all k8s APIs we manage.
This should also work with the Watch-based log collector recovering from an error. To support that, I replace default Configuration so that the next time Watch creates ApiClient implicitly, the Configuration with updated token will be used.
2 years ago
Eugene Ostroukhov
42a25af871
xds_override_host LB: make subchannel keys consistent with the filter ( #32224 )
2 years ago
Xuan Wang
843cf42d6a
Catch unprintable application exception ( #32208 )
...
* Catch unprintable application exception
* fix sanity
* Remove some files
* Fix typo
2 years ago
Mark D. Roth
05a75d2d8c
rls_e2e_test: increase RPC timeout ( #32222 )
2 years ago
Craig Tiller
775acba285
[tsan] Remove hacks ( #32209 )
...
* [tsan] Remove hacks
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Mark D. Roth
0f16df9a95
stateful session affinity: add missing promise-based filter flag ( #32203 )
2 years ago
AJ Heller
d14020d4e2
[EventEngine] Add invalid handle types to the public API ( #32202 )
...
* [EventEngine] Add invalid handle types to the public API
* Automated change: Fix sanity tests
* add definition for static constexpr members
* sanitize
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2 years ago
Yijie Ma
79f057e9d0
[codehealth] Remove dead if check ( #32206 )
2 years ago
Fahrzin Hemmati
ffa679a8e7
[windows] explicitly ignore set_int() status in iomgr ( #31958 )
...
* [windows] explicitly ignore set_int() status in iomgr
* Update endpoint_pair_windows.cc
* Update pollset_windows.cc
* Update grpc_ares_ev_driver_windows.cc
* Update grpc_ares_ev_driver_windows.cc
* Update endpoint_pair_windows.cc
* Update tcp_server_windows.cc
* Warn but don't assert on prepared sockets
* reduce log severity
* Switch to GPR_INFO
2 years ago
Xuan Wang
10e5b2115e
Add wait_for_ready with client timeout example ( #32183 )
...
* Add wait_for_ready with client timeout example
* Use with to create channel
* Fix sanity tests
* Changes based on comments
* Change thread to daemon thread
* Changes based on comments
2 years ago
Xuan Wang
16d5e412dd
De-experimentalize wait-for-ready ( #32143 )
2 years ago
AJ Heller
6a92df7237
[fixup] EventEngine Nomenclature ( #32195 )
2 years ago
Vignesh Babu
fa5a6c42a6
[EventEngine] Modify iomgr to allow creation of posix event engine listeners and server side endpoints ( #31928 )
...
* [WIP] EventEngine iomgr endpoint shims
* [WIP] EventEngine::Endpoint iomgr shims for the PosixEventEngine
* Util functions to help with posix engine listener implementation
* sanity
* update comments in posix_engine_listener_utils.h
* review comments
* iwyu
* revert prev commit
* iwyu
* update build
* update
* regenerate projects
* regenerate projects
* minor fixes
* update BUILD
* sanity
* update build
* regenerate projects
* fix unused parameter
* sanity
* update
* sanity
* regenerate_projects
* remove unused variable
* start
* update
* regenerate_projects
* sanity
* update
* fixes
* update
* regenerate_projects
* update
* fix sanity and msan failure
* more fixes
* build failure
* update
* fix
* sanity
* fixes
* update
* regenerate projects
* fix sanity
* review comments
* An EventEngine subclass to be implemented by all posix based event engines
* sanity
* comments
* update
* review comments
* re-word
* fix
* update
* review comments
* regenerate projects
* syntax fix
* add lock free event benchmark
* releasable mutex lock
* fix build isue
* update
* start
* regenerate projects
* update
* fix
* windows build
* update
* windows portability issue
* update
* update
* update
* update
* format
* update
* update
* start
* Update tcp server interface to move on_accept_cb to create method
* update
* start
* update
* update
* update
* update
* update
* update
* update
* update
* sanity
* update
* update
* update
* windows build
* fix msan
* fix sanity
* regenerate projects
* update
* iwyu
* Fix resolved address length related bugs in tcp_socket_utils and listener_utils
* iwyu
* cleanup
* cleanup src/core/lib/event_engine/tcp_socket_utils.cc
* iwyu
* fix
* regenerate projects
* fix sanity
* re-write endpoint shim
* more re-write
* cleanup
* update
* regenerate projects
* review comments
* build issue
* more build issue fixes plus adding event_engine_trace
* even more build issue fixes
* iwyu
* add static_cast
* fix sanity
* update
* update
* sanity
* fix
* Fix
* Review comments
* fix
* iwyu
* fix build issue
Co-authored-by: AJ Heller <hork@google.com>
2 years ago
Eugene Ostroukhov
4a64142be5
xds_override_host LB: add support for draining state ( #32191 )
...
* Revert "Revert "xds_override_host LB: add support for draining state (#31985 )" (#32189 )"
This reverts commit 5222eafdc1
.
* fixup: Add missing dependency to grpc_xds_client targetZ
2 years ago
AJ Heller
2e69349731
[codegen] Escape variable delimiters in raw comment printing ( #32190 )
2 years ago
AJ Heller
5222eafdc1
Revert "xds_override_host LB: add support for draining state ( #31985 )" ( #32189 )
...
This reverts commit e8e9514a11
.
2 years ago
AJ Heller
3980ed706a
[EventEngine] Refactoring the EventEngine Test Suite: Part 1 ( #32127 )
...
* Add back EventEngine test suite tools (echo binary)
This reverts commit d5c12195a2
.
* more refactoring
* fix
* Automated change: Fix sanity tests
* fix
* fix posix oracle build def
* fix FuzzingEventEngine includes
* sanitize
* tidy and rm DNS
* fix cfstream includes
* header guards
* format & fix deps
* fix
* fix
* iwyu
* fix
* remove redundant code
* reviewer feedback
Co-authored-by: drfloob <drfloob@users.noreply.github.com>
2 years ago
Eugene Ostroukhov
e8e9514a11
xds_override_host LB: add support for draining state ( #31985 )
...
Co-authored-by: Mark D. Roth <roth@google.com>
2 years ago
Craig Tiller
7b02b7c253
[stats] Add experiment to use transport reported request latency whenever available ( #32168 )
...
* [stats] Add experiment to use transport reported request latency whenever available
* redux: add a new metric
* review-feedback
* Automated change: Fix sanity tests
* fix
* fix
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2 years ago
Yash Tibrewal
beffe313e5
GCP Observability Logging: Base64 Encode metadata, message and status-details ( #32184 )
...
* GCP Observability Logging: Base64 Encode metadata, message and status-details
* Use padding for message and status-details
2 years ago