Commit Graph

4184 Commits

Author SHA1 Message Date
Eric Anderson 6a50a63ca8 Replace javax.annotation-api with Tomcat's annotations-api
javax.annotation-api is licensed CDDL, which was not noticed when it was
introduced. Tomcat provides an Apache 2 version of the same annotation. Note
that this annotation is only used when compiling with Java 9+.

Unfortunately this may cause classpath collisions since there are _many_ copies
of this annotation on Maven Central; we wanted one canonical source and
javax.annotation-api seemed like that source. We hope this won't impact many
users since we have always suggested using it only for compilation. But it will
probably impact some users. However, we didn't create this mess, this seems to
be "standard practice" for J2EE, which this annotation is now part of, so we're
just impacted by it.

Fixes #6833
2020-04-30 09:14:32 -07:00
ZHANG Dapeng e78d1c95ef
core: support default method config in service config (#6987)
References:
service config spec change: grpc/grpc-proto#75
c-core implementation grpc/grpc#22232
2020-04-29 13:53:53 -07:00
Jihun Cho d605faafc3
README.md: fix version typo (#6976) 2020-04-24 09:53:56 -07:00
Eric Gribkoff 95b0550c59
buildscripts: use xds-test-server image (#6889) 2020-04-23 15:59:19 -07:00
Patrice Chalin d097cc0ee0
RouteGuideClient example: use E7 format for latitude & longitude
As indicated in the proto file, point coordinates are in degrees encoded in E7 format.
https://github.com/grpc/grpc-java/blob/master/examples/src/main/proto/route_guide.proto#L54
2020-04-23 13:21:45 -07:00
ZHANG Dapeng 88bd7278ae
xds: reject case-insensitive route match 2020-04-22 17:10:30 -07:00
Jihun Cho 4a644cb876
rls: fake direct scheduled executor supports schedule (#6957) 2020-04-22 12:04:26 -07:00
Chengyuan Zhang e089ceaadc
SECURITY.md: add instruction for disabling Conscrypt's default TrustManager (#6962) 2020-04-22 11:28:24 -07:00
Chengyuan Zhang b8bcf98f33
okhttp: use new APIs to configure TLS in Android (roll forward #6959) (#6960)
* Revert "okhttp: revert changes for using new APIs to configure TLS in Android (#6959)"

This reverts commit ee8b395f79.

Roll forward with adding manual check if hostname contains underscore, as Android's URI implementation allows underscore in hostsname.
2020-04-22 10:28:56 -07:00
ZHANG Dapeng 4947774475
Update README etc to reference 1.29.0 2020-04-22 09:45:09 -07:00
Jihun Cho 0059c5ac04
netty: use netty default SO_BACKLOG (#6956) 2020-04-22 09:10:17 -07:00
Jihun Cho 459cbc7b44
rls: add interface to ResolvedAddressFactory (#6958) 2020-04-21 19:12:32 -07:00
Chengyuan Zhang ee8b395f79
okhttp: revert changes for using new APIs to configure TLS in Android (#6959)
* Revert "okhttp: Skip enabling SNI and session ticket for fake/test host names (#6949)"

This reverts commit eb8e31409e.

* Revert "okhttp: use new APIs for configuring TLS whenever possible (Android Q+) (#6912)"

This reverts commit 5803dfd9dc.
2020-04-21 15:05:53 -07:00
Benedict Jin 9411e9716c
netty: support setting options of boss in NettyServer (#6947) 2020-04-21 10:20:20 -07:00
Jihun Cho e1a428ab33
core: remove backoff policy todo (#6953) 2020-04-21 09:57:42 -07:00
Jihun Cho 23bcdb1a09
rls: lb policy config object (#6883) 2020-04-20 23:04:17 -07:00
Chengyuan Zhang eb8e31409e
okhttp: Skip enabling SNI and session ticket for fake/test host names (#6949)
Work around for cases (usually for tests) where hostname is overridden for test certs and it is in invalid syntax.
2020-04-20 17:30:01 -07:00
Bogdan Drutu 6bcc182b1b Move everything related to cancellation to CancellableContext.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2020-04-20 17:05:29 -07:00
sanjaypujare a649737e3a
xds: implement requireClientCertificate semantics (#6948) 2020-04-20 17:04:38 -07:00
Kun Zhang 54cac75d47
core: refine LoadBalancer javadoc (#6950)
Update renamed components and references to deprecated APIs.
2020-04-20 15:51:36 -07:00
Bogdan Drutu d63f2b439c Avoid creating always the parentListener. Create only when needed.
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2020-04-20 15:45:02 -07:00
Bogdan Drutu 4d3435056b Avoid extra allocation by directly using Trie.Node in Context
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2020-04-20 12:01:26 -07:00
Bogdan Drutu a39675ab93
context: Avoid null checks for internal methods in Context (#6942)
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2020-04-17 16:31:49 -07:00
Jihun Cho 68297d6d7c
core: implement Helper#createResolvingOobChannel (#6923) 2020-04-17 16:07:38 -07:00
Chengyuan Zhang 5803dfd9dc
okhttp: use new APIs for configuring TLS whenever possible (Android Q+) (#6912)
Use new APIs for configuring TLS in Android environment. Starting from Android 29, there is a new set of public APIs for configuring ALPN (and starting from Android 24, there is API for enabling SNI). This change migrates to use these new APIs whenever possible. Only fallback to call the old hidden APIs if new ones do not exist (or do not work).
2020-04-17 11:44:08 -07:00
sanjaypujare 56a410f5ac
xds: add tests & misc fixes based on outstanding items (#6935) 2020-04-17 10:59:55 -07:00
Chengyuan Zhang 03db20cded
xds: eliminate special code path for EDS-only workflow (#6931)
Delete special logics (e.g., fallback) for EDS-only workflow and use the same format of lb config for running EDS-only workflow as running the full CDS-EDS workflow.
2020-04-17 10:42:47 -07:00
Bogdan Drutu 52a72e2dcd
context: Cleanup ContextTest, use final, remove throws, use assertNull (#6941)
Signed-off-by: Bogdan Drutu <bogdandrutu@gmail.com>
2020-04-17 10:38:27 -07:00
Ran 54d7e6ba65
xds: use checkArgument from Guava. (#6938) 2020-04-16 15:25:39 -07:00
Patrice Chalin da855f4164
Delete example-kotlin (#6936) 2020-04-16 13:55:05 -07:00
ZHANG Dapeng 3bd141bf18
xds: allow duplicated route matcher and prefix='/' 2020-04-16 13:50:26 -07:00
Kun Zhang 17b2b96d8a
netty: log the selection of allocators (#6930) 2020-04-15 14:44:02 -07:00
Chengyuan Zhang 2478912d79
xds: use separate LB configs for EDS policy running with different code paths (#6895)
The LB configs used for EDS policy diverges for the full xDS flow (generated by CDS policy) and EDS-only flow (received in service config). This change creates a separate config (EdsConfig) for the actual EDS LB policy. CDS policy generates EdsConfig directly and the wrapper policy (i.e., XdsLoadBalancer) converts received XdsConfig to EdsConfig for EDS-only flow.
2020-04-15 13:12:01 -07:00
sanjaypujare 9618af90e5
xds: remove UpstreamTlsContext from XdsChannelBuilder (#6924) 2020-04-15 09:23:44 -07:00
sanjaypujare 2f07c83fed
xds: eliminate downstreamTlsContext from XdsServerBuilder (#6901)
* xds: eliminate downstreamTlsContext from XdsServerBuilder


Co-authored-by: Jihun Cho <jihuncho@google.com>
2020-04-13 17:37:26 -07:00
ashithasantosh 2cc46acc55
Change logging level from INFO to FINE. (#6920) 2020-04-13 11:18:50 -07:00
Jihun Cho 050679bdf3
rls: child lb resolved address factory (#6886) 2020-04-13 10:46:19 -07:00
Jihun Cho 1a1583de52
rls: delegating helper for rls child policies (#6904) 2020-04-11 00:20:18 -07:00
Jihun Cho 1686d703e6
rls: rls request factory (aka key builder map) (#6823) 2020-04-10 15:56:40 -07:00
ashithasantosh cfe73eb484
Implemented Frame Size Negotiation in ALTS for gRPC Java. (#6840) 2020-04-10 13:38:46 -07:00
Eric Anderson 9ead606b84
netty: Reduce race window size between GOAWAY and new streams
The race between new streams and transport shutdown is #2562, but it is still
far from being generally solved. This reduces the race window of new streams
from (transport selection → stream created on network thread) to (transport
selection → stream enqueued on network thread). Since only a single thread now
needs to do work in the stream creation race window, the window should be
dramatically smaller.

This only reduces GOAWAY races when the server performs a graceful shutdown
(using two GOAWAYs), as that is the only non-racy way on-the-wire to shutdown a
connection in HTTP/2.
2020-04-10 12:03:23 -07:00
Jihun Cho 4974b51c53
rls: LruCache interface and implementation (#6799) 2020-04-10 10:52:13 -07:00
Chengyuan Zhang 833a3ff293
xds: handle EDS update with no localities (#6915)
Allow receiving empty LocalityLbEnpoints in EDS responses, it is LB policies' responsibility to go to TRANSIENT_FAILURE immediately when receiving an update with no locality.
2020-04-09 18:42:58 -07:00
Eric Anderson ec010c1a62 core: Delay transport shutdown during updateAddresses()
A user has been seeing "InternalSubchannel closed transport due to address
change" errors (b/153064566). It is unclear if they are predomenent, but they
are at least adding noise. Since #2562 is still far from being generally
solved, we delay the shutdown a while to side-step the race.
2020-04-09 14:59:48 -07:00
Andrew Gasparovic 2119fac35b
compiler: Remove unused function (#6911) 2020-04-08 14:12:00 -07:00
Chengyuan Zhang 54f9e29cdb
xds: fix lint warnings (#6907) 2020-04-07 15:31:36 -07:00
sanjaypujare 829a7c5a29
xds: remove hardcoded port and unneeded test (#6908) 2020-04-07 15:00:35 -07:00
ZHANG Dapeng c91e127f93
Start 1.30.0 development cycle 2020-04-07 14:12:53 -07:00
ZHANG Dapeng 5c31dc6d71
xds: migrating XdsNameResolver to "xds" scheme
Change "xds-experimenal" scheme to "xds" and add a deprecated provider with "xds-experimenal" scheme for keeping current users' tests working.
2020-04-07 11:52:41 -07:00
Chengyuan Zhang d88f0f19ec
xds: implement LRS LB policy (#6858)
Part of xDS LB policy refactoring work. Implement the LRS LB policy for "balancing" endpoints within a certain locality.
2020-04-07 11:44:36 -07:00