Commit Graph

52841 Commits

Author SHA1 Message Date
Richard Belleville fbbfbccbbe
[Github Actions] Apply lang/python label to files outside of src/python (#32788)
Follow-up to https://github.com/grpc/grpc/pull/32751. I finally broke
down and put together a hacky way to mess with this manually. [This
hacked up version of the
implementation](https://gist.github.com/gnossen/f2f334b448eab73f383d65d5206056b6)
adds some unit tests to make sure it does exactly what we want.

The final issue was that [this
block](49b9dfa644/.github/labeler.yml (L39))
would never trigger unless _all_ of the explicitly mentioned files was
added there. The fix is to pull them each individually into their own
[`MatcherConfig`](d8f73a2893/src/labeler.ts (L6))
object with a single [`any`
field](d8f73a2893/src/labeler.ts (L8)).
2023-04-03 16:04:39 -07:00
Yousuk Seung f9b7df58f6
[promises] make non-error logs INFO (#32784)
<!--

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.

-->
2023-04-03 15:55:06 -07:00
AJ Heller 49b9dfa644
Revert "[EventEngine] Revert "Revert "EventEngine::RunAt: C++ Alarm (#30024)" (#30147)"" (#32783)
Reverts grpc/grpc#32461. One new benchmark showed performance problems.

Co-authored-by: Yijie Ma <yijiem.main@gmail.com>
2023-04-03 13:55:26 -07:00
Eugene Ostroukhov 6f18a85106
[presubmit] Add manual trigger for PR CheckTitle (#32766) 2023-04-03 09:50:35 -07:00
Craig Tiller 47ea5062cb
Revert "[xds interop tests] implement error-code- RPC behavior" (#32769)
Reverts grpc/grpc#32765
2023-03-31 22:16:48 -07:00
Craig Tiller 4f444aaabf
Revert "[gprpp] Add ValidationErrors::message retrieval" (#32767)
Reverts grpc/grpc#32761
2023-03-31 21:42:58 -07:00
Craig Tiller b5a2e90fbf
Revert "[EventEngine] Implement the EventEngine-driven client channel resolver." (#32768)
Reverts grpc/grpc#32632

Needs to be rolled back for #32767 to land
2023-03-31 21:31:27 -07:00
BrandonY bc6a2ee918
[RLS] Change case of RLS 'x-google-rls-data' header to lowercase. (#32760)
"X-Google-RLS-Data" does not work as gRPC metadata key.
2023-03-31 17:09:38 -07:00
Eugene Ostroukhov 50fce40409
[PSM Interop] Add custom_lb test client (#32757) 2023-03-31 14:03:44 -07:00
Sergii Tkachenko 8f012ae13b
PSM interop: add retries on k8s API 504 Gateway Timeout (#32714)
ref b/258546394
2023-03-31 20:58:57 +00:00
Eugene Ostroukhov a4af6250d8
[xds interop tests] implement error-code- RPC behavior (#32765)
Implements handling for the `error-code-xx` `rcp-behavior` header.
Compare to similar implementation in
[java-server](42b4c61d5e/interop-testing/src/main/java/io/grpc/testing/integration/XdsTestServer.java (L379))
2023-03-31 13:58:43 -07:00
AJ Heller 7dec55de5a
[EventEngine] Implement the EventEngine-driven client channel resolver. (#32632)
This PR also centralizes the client channel resolver selection. Resolver
selection is still done using the plugin system, but when the Ares and
native client channel resolvers go away, we can consider bootstrapping
this differently.
2023-03-31 13:52:06 -07:00
AJ Heller b94d55bd20
[gprpp] Add ValidationErrors::message retrieval (#32761)
For cases where an absl::Status is unnecessary.
2023-03-31 11:56:06 -07:00
Jan Tattermusch 569d0076b3
[cmake] Workaround missing stdalign.h in windows portability test (#32764)
Tentative fix for b/275694647. Also see
https://github.com/grpc/grpc/pull/32662

Adhoc windows/grpc_portability run:
http://sponge/bb75e14c-fc77-45bb-89bd-4c4685746490

Once merged, I'll backport to 1.54.x and 1.53.x (these have switched to
VS2019)
2023-03-31 09:00:39 -07:00
Stan Hu 4110dea333
[HTTP Proxy] Support CIDR blocks in `no_proxy` config (#31119)
This commit adds support for using CIDR blocks defined in the `no_proxy`
environment variable. For example:

```
http_proxy=http://localhost:8080 no_proxy=10.10.0.0/24
```

The example above would bypass the proxy if the server IP matched
10.10.0.0 - 10.10.0.255.

Closes #22681

---------

Co-authored-by: Yash Tibrewal <yashkt@google.com>
2023-03-30 23:43:36 -07:00
Craig Tiller a5ce9c8947
[PR] Better error message on PR titles that don't meet requirements (#32753)
<!--

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: Eugene Ostroukhov <eostroukhov@gmail.com>
2023-03-30 23:28:36 -07:00
Steven Wang 450196ae3f
[PHP] A trivial performace improvement for the PHP extension. (#31722)
Perf shows that the memory are accessed twice for call->wrapped in
startBatch. If we assign call->wrapped to a variable and then use it in
startBatch, only one memory access is needed. Then, the second
attempting to get the value of call->wrapped will be done via register.




<!--

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.

-->
2023-03-30 22:02:13 +00:00
Mark D. Roth 36d2716d52
[JSON] move Parse() and Dump() methods out of JSON object (#32742)
More prep for making this a public API.
2023-03-30 13:30:54 -07:00
Craig Tiller e4b63015ea
[Promises] Fix use after free in promise based client call (#32747)
Discovered testing #32603 

<!--

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.

-->
2023-03-30 12:08:58 -07:00
Mark D. Roth 656e5f283b
[JSON] use updated style for enum values (#32741)
More preparation for making this a public API.
2023-03-30 09:39:07 -07:00
Simon Podlipsky 066e398bcc
[PHP] Use @throws (#32565)
https://docs.phpdoc.org/3.0/guide/references/phpdoc/tags/throws.html#throws
2023-03-30 15:37:19 +00:00
y.okamoto 0ce39dca7e
[Ruby] Fixed the return value of `PLATFORM.architecture` when MacOS is Ventura ( #31782 ). (#31783)
i apologize if my PR is wrong. I'm not used to sending PRs. 🙇 

i fixed the bug(#31782).
please read this issue for more information.
2023-03-30 08:33:25 -07:00
Mark D. Roth 3a8f499645
[JSON] Rename some accessor methods for consistency (#32740)
A bit of cleanup in preparation for making this a public API.
2023-03-30 07:13:15 -07:00
Yijie Ma 5db39ac9ef
[EventEngine] RunAfter migration: grpc_chttp2_transport round 2 (#32726) 2023-03-29 20:00:04 -07:00
Richard Belleville 8b4e448a5f
[Github Actions] Fix labeller Github action (#32751)
Fix-forward for https://github.com/grpc/grpc/pull/32629. Referencing the
[documentation](https://github.com/marketplace/actions/labeler), if the
top-level list for a label is a list of strings, it is treated as a
single `any` entry. `any` entries are ANDed together. This means that
the original PR said "label lang/python if anything _besides_
grpc_core_dependencies.py changed." This is obviously not desired.

This PR makes the `any` explicit. The logic now says "label lang/python
if any of these few files has changed OR if any file but
grpc_core_dependencies.py under src/python has changed."

I'm still not 100% certain that this will work, but the stakes aren't
super high.
2023-03-29 17:03:05 -07:00
Craig Tiller e5770cd65c
[filter-test] Mark test only (#32752)
<!--

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.

-->
2023-03-29 14:16:04 -07:00
Stanley Cheung ec1d75bb0a
[Release process] Bump version to 1.55.0-dev (on master branch) (#32743)
Change was created by the release automation script. See
go/grpc-release.
2023-03-29 11:03:07 -07:00
Craig Tiller 2cd1501ca5
[promises] Filter unit test framework (#32110)
Built atop #31448 

Offers a simple framework for testing filters.

<!--

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>
2023-03-28 21:53:14 -07:00
Craig Tiller db3daf567b
[api-fuzzer] Enable fuzzing over config vars (#32736)
Add the capability for api-fuzzer to fuzz over different config
variables, to enable us to spot incompatible configurations there
sooner.

---------

Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2023-03-28 16:18:12 -07:00
Yousuk Seung c02b3e695c
xDS: Include orca named_metrics in LRS load reports (#32690)
<!--

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.

-->
2023-03-28 12:04:01 -07:00
Craig Tiller ed38592d76
[pr] enforce tag prefixes on pull requests (#31861)
...
<!--

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.

-->
2023-03-28 12:02:47 -07:00
Craig Tiller 2b97208ff3
[android] Fix android interop build (#32737)
<!--

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.

-->
2023-03-28 11:53:25 -07:00
Jan Tattermusch 785b85426c
Upgrade abseil to 20230125.2 (#32733)
To get a fix for
https://github.com/abseil/abseil-cpp/issues/1419#issuecomment-1485282854
2023-03-28 20:38:56 +02:00
Stanley Cheung 3c18ecdea1
Bump core version to 31.0.0 for upcoming release (#32739)
Change was created by the release automation script. See
go/grpc-release.
2023-03-28 11:32:35 -07:00
apolcyn 4b46dbc19e
XDS: enable XDS federation by default (#32711)
Integration tests have been green so let's enable this (verification of
test results in https://b.corp.google.com/issues/262593165#comment30).
2023-03-28 09:55:35 -07:00
Matthew Stevenson ea839de878
Allow configuring max concurrent ALTS handshakes based on an environment variable. (#32672)
The logic is straightforward: attempt to read the
`GRPC_ALTS_MAX_CONCURRENT_HANDSHAKES` environment variable and, if it
set to an integer, instantiate the handshake queues based on this
integer.

Based on go/grpc-alts-concurrent-handshake-cap.
2023-03-28 09:53:46 -07:00
Mark D. Roth 71becdcf7c
interop: add core 1.53.0 release to interop matrix (#32727) 2023-03-28 09:49:14 -07:00
Jan Tattermusch b59fcc2479
Upgrading to protobuf 22.x: Adapt make_grpcio_tools.py to changes in protobuf bazel build (#32213)
Protobuf's HEAD has changed the layout of bazel targets we use for
getting the list of source files for our python grpcio.tools build.

With this patch, make_grpcio_tools.py finishes successfully and gives
reasonable results.
2023-03-28 15:05:31 +00:00
Stanley Cheung a27f1fd81e
Upmerge v1.53.x branch into master (#32731)
Change was created by the release automation script. See
go/grpc-release.

---------

Co-authored-by: Mark D. Roth <roth@google.com>
Co-authored-by: Craig Tiller <ctiller@google.com>
Co-authored-by: Esun Kim <veblush@google.com>
Co-authored-by: Jan Tattermusch <jtattermusch@google.com>
2023-03-27 23:30:41 -07:00
Yash Tibrewal f4280fb262
GCP Observability: Fix instructions for README (#32730)
<!--

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.

-->
2023-03-27 21:33:28 -07:00
Craig Tiller 7e341a545a
[metadata] Add a hook point for custom metadata (#32650)
Aim here is to allow adding custom metadata types to the internal build.
<!--

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>
2023-03-27 19:43:07 -07:00
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>
2023-03-27 18:55:24 -07:00
Craig Tiller a363b6c001
[fuzzing] Implement endpoints for FuzzingEventEngine (#32689)
Implement listeners, connection, endpoints for `FuzzingEventEngine`.
Allows the fuzzer to select write sizes and delays, connection delays,
and port assignments.

I made a few modifications to the test suite to admit this event engine
to pass the client & server tests:
1. the test factories return shared_ptr<> to admit us to return the same
event engine for both the oracle and the implementation - necessary
because FuzzingEventEngine forms a closed world of addresses & ports.
2. removed the WaitForSingleOwner calls - these seem unnecessary, and we
don't ask our users to do this - tested existing linux tests 1000x
across debug, asan, tsan with this change

Additionally, the event engine overrides the global port picker logic so
that port assignments are made by the fuzzer too.

This PR is a step along a longer journey, and has some outstanding
brethren PR's, and some follow-up work:
* #32603 will convert all the core e2e tests into a more malleable form
* we'll then use #32667 to turn all of these into fuzzers
* finally we'll integrate this into that work and turn all core e2e
tests into fuzzers over timer & callback reorderings and io
size/spacings

---------

Co-authored-by: ctiller <ctiller@users.noreply.github.com>
2023-03-27 17:43:47 -07:00
Yousuk Seung 16c03db9ac
Revert "Revert "WRR: Support EPS" (#32723)" (#32725)
This reverts commit 7bd9267f32.




<!--

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.

-->
2023-03-27 16:49:50 -07:00
Stanley Cheung 39780ba2b5
Update third_party/boringssl-with-bazel (#32721)
Change was created by the release automation script. See
go/grpc-release.
2023-03-27 15:11:48 -07:00
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.
2023-03-27 14:13:20 -07:00
Craig Tiller 8d2f70d53c
Reland "[promises] Convert call to a party" (#32651)" (#32653)
<!--

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>
2023-03-27 14:02:36 -07:00
Yash Tibrewal 1293ee8286
Gcp Observability: Add example (#32710)
Adds a simple hello-world example for GCP Observability purposes along
with a README.
The microservices observability user guide is not yet up, but this still
refers to it anyway.

<!--

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.

-->
2023-03-27 12:59:45 -07:00
Esun Kim 7bd9267f32
Revert "WRR: Support EPS" (#32723)
Reverts grpc/grpc#32657
2023-03-27 11:53:17 -07:00
Eric Anderson 8009a6c6af
interop_matrix: Update matrix for grpc-java 1.45.3 release (#32104) 2023-03-27 11:09:00 -07:00