Commit Graph

3699 Commits

Author SHA1 Message Date
ZHANG Dapeng 842dfa49b1
xds: Fix a bug locality reset not fully clean up
There is a bug in LocalityStore.reset() found during import.
2019-09-11 14:00:18 -07:00
Elliotte Rusty Harold e99672e03d all: Update to truth 1.0
* Update to truth 1.0
2019-09-11 08:53:18 -07:00
Chengyuan Zhang fa8f89a1a6
Start 1.25.0 development cycle (#6141) 2019-09-10 17:41:37 -07:00
康智冬 415212fc49 alts: fix typo (#6113) 2019-09-10 14:13:35 -07:00
Chengyuan Zhang 252ca2a7df
auth: verify information in decoded JWT token instead of comparing hashing values, which involves creds issue and expiration time. (#6137) 2019-09-10 11:09:36 -07:00
Chengyuan Zhang e866d3539c
buildscripts: add config for building grpc-cronet artifact (#6134) 2019-09-09 16:14:56 -07:00
Chengyuan Zhang 2671a3de5e
cronet: add grpc-cronet artifact publishing configurations (#6130)
* Added publish configurations in build file.

* Changed cronet dependency to cronet-api for implementation, only use full cronet implementation provider for testing.

* Set minSdkVersion to 16 as cronet dependency requires that.

* Added errorprone plugin.
2019-09-09 09:46:36 -07:00
ZHANG Dapeng fbba47e6bd
xds: Clean up some ImmutableMaps 2019-09-06 14:41:10 -07:00
ZHANG Dapeng d86eb711c4
xds: Clean up updateChildState() (#6127) 2019-09-06 14:40:46 -07:00
Chengyuan Zhang a234ada5a9
cronet: use reflection to load and invoke experimental APIs in ExperimentalBidirectionalStream.Builder (#6111)
* Use reflection to load and invoke setTrafficStats* and addRequestAnnotation methods for ExperimentalBidirectionalStream.Builder.

* Load reflection method lazily and cache for later usages.
2019-09-06 10:51:09 -07:00
ZHANG Dapeng 62e37a6e6b
xds: Cache locality for 15 minutes 2019-09-05 18:28:30 -07:00
Chengyuan Zhang d771f254aa
xds: import proto files for xDS LB bootstrap from upstream envoy repository (#6125)
* xds: import proto files for xDS LB bootstrap from upstream envoy repository.

* reorder import filenames
2019-09-04 16:33:11 -07:00
Eric Anderson 19942ba039 README.md: Swap to Gradle Plugins DSL
The Plugins DSL has matured and is now preferred. It's also more terse,
which is nice.
2019-08-30 11:39:16 -07:00
Chengyuan Zhang efc14bd299
auth: fix builder invocation for converting Google service account to Jwt access credential (#6106)
* Fixed mistaken method invocation for privateKeyId getter/setter.

* Added test coverage to verify jwt credentials are applied to request metadata correctly.

* No need to expose serviceUri method for testing.
2019-08-30 11:21:33 -07:00
Jihun Cho c9177b2327
alts: convert TsiHandshakeHandler to fit new ProtocolNegotiation style (#6104) 2019-08-30 09:59:32 -07:00
Aaditya Gavandalkar 39dc883b34 context: Implement equals and hashCode for Deadline (grpc#6075) 2019-08-30 08:25:07 -07:00
Eric Anderson daad3bcdbf benchmarks: Disable NETTY_LOCAL in TransportBenchmark
NETTY_LOCAL seem to have a flow control issue. Disable it since we don't
really look at it very often and we care about the
streamingCallsMessageThroughput benchmark.
2019-08-29 16:29:08 -07:00
Eric Anderson daed6e01b1 benchmarks: Move message throughput benchmark to TransportBenchmark
This replaces FlowControlledMessagesPerSecondBenchmark, except it does not
avoid local flow control issues via request(5). If hacking in a request(5),
this benchmark produces similar results (non-direct: 671k vs previously 641k
msg/s).
2019-08-29 16:29:08 -07:00
Eric Anderson 8d18dbd501 benchmarks: Add byte throughput benchmark to TransportBenchmark
This is equivalent to UnaryCallResponseBandwidthBenchmark and
StreamingResponseBandwidthBenchmark, although without the interface selection
logic (which allows for traffic shaping).
2019-08-29 16:29:08 -07:00
Eric Anderson 0aaaacec83 benchmarks: Remove unnecessary volatile from TransportBenchmark
TearDown is guaranteed to execute after Setup; there is no synchronization
necessary. Although the volatile doesn't hurt anything functionally, it is
misleading and confusing.
2019-08-29 16:29:08 -07:00
Eric Anderson a919ef7f74 benchmarks: Delete SingleThreadBlockingQpsBenchmark
It is basically the same as TransportBenchmark without protobuf, smaller
payload, and only Netty. It does show latencies around 66 µs instead of
TransportBenchmark's 70 µs on my laptop, but a quick conversion of
TransportBenchmark to ByteBufOutputMarshaller made it 66 µs as well.
2019-08-29 16:29:08 -07:00
Eric Anderson 3a78325a65 Move HandlerRegistryBenchmark to core/
It blended in with Netty benchmarks, so was missed in our earlier
reorganization.
2019-08-29 16:29:08 -07:00
Chengyuan Zhang 4f516d545b
Delete CronetCallOptions API with replacement of internal accessors for restricted usages only. (#6102) 2019-08-28 13:05:48 -07:00
ZHANG Dapeng 0bc659cfdd
xds: bump envoy to 6ff0bce8ff417a252cde4d04dfb9cba2bab463d8
Also add import script for upda protos from https://github.com/cncf/udpa

This PR is for the purpose to sync up with internal cl/265717410
2019-08-28 12:58:09 -07:00
ZHANG Dapeng c240f27077
buildscripts: android.sh to clean the build when building HEAD^
A gradle plugin [issue](google/protobuf-gradle-plugin#331) was seen for https://github.com/grpc/grpc-java/pull/6099. This PR try to workaround it.
2019-08-28 12:56:49 -07:00
Chengyuan Zhang 5fbe2ed8e8
android: final stabilization of AndroidChannelBuilder (#6097)
* Removed ExperimentalApi annotation for AndroidChannelBuilder

* Put ExperimentalApi annotation back to deprecated method.
2019-08-28 09:52:08 -07:00
Chengyuan Zhang 1e475be64d
android: deleted unused code leftover in AndroidChannelBuilder test. (#6098) 2019-08-28 09:51:44 -07:00
Srini Polavarapu d507ea72a4
change from Inc. to LLC for Google and update the list (#6096) 2019-08-26 12:20:34 -07:00
Eric Anderson 9d6f5322c2 bazel: Add helper for maven_install's override_targets
This can be used to prevent duplicate classes in the classpath, one via
Maven and one via Bazel-native.

See census-instrumentation/opencensus-java#1963 and #5359
2019-08-22 07:40:32 -07:00
Chengyuan Zhang 493af030ab
android: delete deprecated API methods (#6088) 2019-08-21 16:31:36 -07:00
Chengyuan Zhang be226aa99c
cronet: add getter for retrieving grpc cronet annotations in calloptions. (#6086) 2019-08-21 09:55:48 -07:00
Eric Anderson 63661c7b70 netty: Add Bazel target similar to netty-shaded
See census-instrumentation/opencensus-java#1963
2019-08-21 09:48:20 -07:00
ST-DDT d5b63e9c68 docs, examples: Update the maven plugins version (#6065) 2019-08-20 14:35:03 -07:00
ZHANG Dapeng 92805713e4
doc: explicitly mention that Deadline might saturate 2019-08-20 14:28:45 -07:00
Chengyuan Zhang 3a9616fc25
android: clean up AndroidChannelBuilder APIs (#6083)
* Added missing Javadoc for public methods, deprecate fromBuilder and replace with usingBuilder.

* Removed unnecessary final keyword for static methods.

* call usingBuilder in deprecated fromBuilder

* Changed Javadoc description for usingBuilder method.
2019-08-19 17:21:43 -07:00
Chengyuan Zhang 1d04601313
xds: Implement an xDS NameResolver/Provider for xDS load balancing alpha release (#6052)
* Implemented an XdsNameResolver that always returns a hard-coded service config

* Implemented XdsNameResolverProvider

* Added unit tests for XdsNameResolver and XdsNameResolverProvider

* Added META-INF file for XdsNameReresolverProvider

* Removed balancer name field in hard-coded service config

* Changed URI scheme to xds-experimental.

* Deleted unnecessary executors for running name resolution in a separate thread.

* Fixed nits.

* Fixed usage of GrpcUtil.getDefaultProxyDetector() as it was deleted.

* Removed unnecessary shutdown implementation.

* Replaced return with AssertionError as it hard-coded service config should never have error.

* Removed unused name resolver args.

* Added tail blank line.
2019-08-19 16:39:36 -07:00
Srini Polavarapu 9fa2608430
Add MAINTAINERS.md (#6084) 2019-08-19 15:55:17 -07:00
ZHANG Dapeng 9dbbcf5a42
xds: move XdsLoadBalancer.XdsConfig to XdsLoadBalancerProvider
`XdsLoadBalancer` will be replaced by `XdsLoadBalancer2`, and `XdsConfig` is better fit in `XdsLoadBalancerProvider`.
2019-08-16 15:08:10 -07:00
Kun Zhang 2c0b2de862
grpclb: fix pick_first mode shutdown without subchannels. (#6072) 2019-08-16 10:21:25 -07:00
Chengyuan Zhang e68e4004e4
cronet: move call options APIs into an internal accessor class (#6073)
* cronet: move call options APIs into an internal accessor class

* Removed deprecated call option key.
2019-08-16 01:05:32 -07:00
Carl Mastrangelo 4c1e197fcd
okhttp: remove unused import 2019-08-15 16:00:02 -07:00
Chengyuan Zhang c521a31886
android: fix Javadoc symbol/class not found errors (#6063)
* android: fix Javadoc symbol/class not found errors

* Removed redundant join, files API can already handle list.

* Replace usage of javaCompile with javaCompileProvider

* Avoid afterEvaluate by filling javadocs.classpath in android configuration.

* Construct FileCollection via files(Closure), which delays the file resolution.
2019-08-15 12:47:14 -07:00
Carl Mastrangelo 21c34d7862
netty: check for null protocol negotiator in NettyChannelBuilder 2019-08-15 11:11:31 -07:00
Chengyuan Zhang ad47eee4d3
okhttp: add PerfMark tracing for okhttp transport (#6038)
* okhttp: add PerfMark tracing for okhttp transport

* change task for AsyncSink to give more accurate task description

* add final to field tag

* add PerfMark dependency in okhttp package bazel
2019-08-14 17:20:29 -07:00
Jannis Andrija Schnitzer 93898734c2 bazel: Fix java path separator bug on Windows (#6054) 2019-08-14 14:28:31 -07:00
Eric Anderson 6c7258b05e Upgrade gradle-errorprone-plugin to 0.8.1
This fixes the following warning when building grpc-android:
WARNING: API 'variant.getJavaCompiler()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance.
To determine what is calling variant.getJavaCompiler(), use -Pandroid.debug.obsoleteApi=true on the command line to display a stack trace.
2019-08-14 16:22:59 -05:00
Carl Mastrangelo 458f4533db
netty: migrate Server protocol negotiation to new style
* Revert "Revert "netty: change server to new protocol negotiator model" (#5798)"

This reverts commit 4e5e19f6fd.
2019-08-14 13:00:42 -07:00
ZHANG Dapeng ce53d0eac7
Update README etc to reference 1.23.0 2019-08-13 17:46:50 -07:00
Eric Anderson 9fcfb5b4f8
netty: Limit number of frames client can cause server to enqueue
Http2ControlFrameLimitEncoder is from Netty. It is copied here as a
temporary measure until we upgrade to the version of Netty that includes
the class.

See CVE-2019-9515
2019-08-13 12:24:15 -05:00
Dharmesh Jogadia 5790503d79 core,okhttp: removed GrpcUtil.IS_RESTRICTED_APPENGINE and dependent code (#6051) 2019-08-13 10:11:56 -07:00