caching/vendor/google.golang.org/grpc
Knative Automation c6425778e5
upgrade to latest dependencies (#805)
bumping google.golang.org/grpc bf05b95...7765221:
  > 7765221 Change version to 1.59.0 (# 6695)
  > e88f12e server: prohibit more than MaxConcurrentStreams handlers from running at once (# 6703) (# 6704)
  > be7919c transport: Pass Header metadata to tap handle. (# 6652)
  > e3f1514 Reapply "status: fix/improve status handling (# 6662)" (# 6673) (# 6688)
  > 696faa9 client: add a test for NewSubConn / StateListener / cc.Close racing (# 6678)
  > 318c717 readme: fix badges (# 6687)
  > 39972fd github: add code coverage with codecov.io (# 6676)
  > 93dbc05 xds: move virtual host matcher test to the xdsresource package (# 6680)
  > 2c00469 github: update actions/setup-go and actions/checkout (# 6675)
  > 1f73ed5 Replace the gRFC pull request with the permanent link. (# 6674)
  > 9e1fc3e Revert "status: fix/improve status handling (# 6662)" (# 6673)
  > 0772ed7 status: fix/improve status handling (# 6662)
  > 1466283 internal/idle: add a test that invokes ClientConn methods concurrently (# 6659)
  > fd9ef72 interop: implement rpc-behavior for UnaryCall() (# 6575)
  > c6264a9 examples: add an example of flow control behavior (# 6648)
  > ee4b62c encoding: fix mention of DecompressedSize in docstring (# 6665)
  > 09792b5 test: move codec tests to a separate file (# 6663)
  > 57cb4d8 internal/backoff: add a helper to run a function with backoff (# 6661)
  > 5e4402f attributes: avoid the use of %#v formatting verb (# 6664)
  > 147bd85 balancer: add a warning for balancer names that contain upper case letters (# 6647)
  > 4ced601 googlec2p: remove support for the experimental scheme (# 6645)
  > a758b62 xds/googledirectpath: fix google-c2p resolver test case involving bootstrap env config (# 6657)
  > e61a14d fix testing parameter on xds_client_custom_lb_test (# 6646)
  > 58e2f2b attributes: print typed nil values instead of panic (# 6574)
  > fe0dc22 interop/grpc_testing: regenerate pb.gos (# 6653)
  > 130bc42 Improve testutils.MarshalAny (# 6617)
  > 3156151 grpclb: teach the manual resolver to handle restarts (# 6635)
  > 1457a96 balancer/weightedroundrobin: fix ticker leak on update (# 6643)
  > 92f5ba9 xdsclient: completely remove the old WatchCluster API (# 6621)
  > 94d8074 grpclb: some minor cleanups (# 6634)
  > 1880bd6 resolver/manual: support restarts, required for channel idleness (# 6638)
  > 9deee9b idle: use LB policy close event as a proxy for channel idleness (# 6628)
  > 2d1bb21 grpc: ensure transports are closed when the channel enters IDLE (# 6620)
  > 552525e interop/xds_federation: remove binary file (# 6622)
  > 82a568d cdsbalancer: switch cluster watch to generic xDS client API (# 6600)
  > 0317200 health/grpc_health_v1: update pb.go (# 6616)
  > 57dcb71 interop/xds: improve error message (# 6614)
  > 254bccb idle: decrement active call count for streaming RPCs only when the call completes (# 6610)
  > b0a946c xds: fix hash policy header to skip bin headers and use extra metadata (# 6609)
  > 1e0d82e balancer/leastrequest: Cache atomic load and also add concurrent rpc test (# 6602)
  > 8eb4ac4 grpc: Change server stream context handling (# 6598)
  > e498bbc leastrequest: fix data race in leastrequest picker (# 6587)
  > 778e638 balancergroup: improve observability around balancer cache behavior (# 6597)
  > aa6ce35 vet: ensure all usages of grpc_testing package are renamed when importing (# 6595)
  > d045b41 interop/grpc_testing: regenerate pb.gos (# 6596)
  > 61b7baa grpc_test: rename import for grpc_testing (# 6594)
  > 1805900 deps: update dependencies for all modules (# 6582)
  > 9362f26 grpc: re-enable channel idleness by default (# 6585)
  > 8b1a671 stream: swallow Header errors as we used to; RecvMsg can still return it (# 6586)
  > 23ac72b update pb.gos by running regenerate.sh (# 6584)
  > 2ce7ecd cdsbalancer: test cleanup part 3/N (# 6564)
  > 7afbb9b Change version to 1.59.0-dev (# 6581)
bumping knative.dev/hack 2c938d4...d4af42e:
  > d4af42e Make generate-groups.sh and generate-knative.sh executable conditionally (# 338)
bumping knative.dev/pkg 29775d7...b7a62c0:
  > b7a62c0 Bump google.golang.org/grpc from 1.58.3 to 1.59.0 (# 2873)
  > b8c14ce [CVE-2023-44487] Disable http2 for webhooks (# 2871)
  > 8b8bb65 Bump github.com/prometheus/common from 0.44.0 to 0.45.0 (# 2874)
  > ee56089 Bump google.golang.org/api from 0.147.0 to 0.148.0 (# 2872)
bumping google.golang.org/genproto/googleapis/rpc 8bfb1ae...e917dd1:
  > e917dd1 chore(deps): bump golang.org/x/net in /googleapis/api/servicecontrol (# 1063)
  > 8102cb6 chore(deps): bump golang.org/x/net in /googleapis/api/servicemanagement (# 1060)
  > baa7128 chore(deps): bump golang.org/x/net in /googleapis/api/apikeys (# 1062)
  > 67c69aa chore(deps): bump golang.org/x/net in /googleapis/bytestream (# 1061)
  > e298162 chore(deps): bump golang.org/x/net in /googleapis/api/serviceusage (# 1064)
  > 378ed82 chore(deps): bump golang.org/x/net in /googleapis/api (# 1065)
  > a6244dc chore(deps): bump golang.org/x/net from 0.14.0 to 0.17.0 (# 1066)
bumping google.golang.org/api 60e8678...5e4c19e:
  > 5e4c19e chore(main): release 0.148.0 (# 2217)
  > 438c075 chore(deps): ignore go-github (# 2223)
  > 29c72b5 feat(all): auto-regenerate discovery clients (# 2227)
  > 33383c7 feat(all): auto-regenerate discovery clients (# 2226)
  > 25093c2 feat(all): auto-regenerate discovery clients (# 2224)
  > 5077579 chore(all): update all (# 2220)
  > a6ee0f9 feat(all): auto-regenerate discovery clients (# 2222)
  > 6f71a69 feat(all): auto-regenerate discovery clients (# 2219)
  > 1ef9dd2 feat(all): auto-regenerate discovery clients (# 2218)
  > ffeb508 feat(all): auto-regenerate discovery clients (# 2216)
bumping github.com/prometheus/common 94bf982...c59927e:
  > c59927e Merge pull request # 524 from prometheus/dependabot/go_modules/golang.org/x/net-0.17.0
  > 16f9480 Merge pull request # 525 from prometheus/dependabot/go_modules/sigv4/golang.org/x/net-0.17.0
  > 1f9b004 Bump golang.org/x/net from 0.15.0 to 0.17.0
  > 7043ea0 Merge pull request # 520 from prometheus/repo_sync
  > ff99062 Bump golang.org/x/net from 0.15.0 to 0.17.0 in /sigv4
  > f4e05c0 Merge pull request # 519 from prometheus/dependabot/go_modules/sigv4/github.com/aws/aws-sdk-go-1.45.19
  > b6914dd Update common Prometheus files
  > ac62eb7 Merge pull request # 518 from prometheus/repo_sync
  > eb60b9b Bump github.com/aws/aws-sdk-go from 1.45.18 to 1.45.19 in /sigv4
  > 2dfcc43 Merge pull request # 509 from Neo2308/feature/master/move-to-protobuf-extensions-v2
  > 777f9cc Update common Prometheus files
  > 538e36f Merge pull request # 493 from prometheus/dependabot/go_modules/sigv4/github.com/stretchr/testify-1.8.4
  > 6fa8c32 Update golang_protobuf_extensions to v2
  > 806bab7 Merge pull request # 516 from prometheus/dependabot/go_modules/sigv4/github.com/prometheus/client_golang-1.17.0
  > 3d03105 Bump github.com/stretchr/testify from 1.8.2 to 1.8.4 in /sigv4
  > c3da61d Merge pull request # 515 from prometheus/dependabot/go_modules/sigv4/github.com/aws/aws-sdk-go-1.45.18
  > 78c4467 Bump github.com/prometheus/client_golang from 1.15.1 to 1.17.0 in /sigv4
  > 29293ef Merge pull request # 514 from prometheus/dependabot/go_modules/golang.org/x/oauth2-0.12.0
  > 68bf7ee Bump github.com/aws/aws-sdk-go from 1.44.266 to 1.45.18 in /sigv4
  > bd35fdb Merge pull request # 513 from prometheus/superq/client_go
  > 2e29438 Bump golang.org/x/oauth2 from 0.8.0 to 0.12.0
  > 4e8cb35 Merge pull request # 495 from prometheus/repo_sync
  > 9510d8d Update client_golang
  > 86487d4 Add read-only token permissions
  > dc8a02e Update common Prometheus files
  > fa9dcdd Merge pull request # 507 from prometheus/dependabot/go_modules/golang.org/x/net-0.12.0
  > 4047c78 Merge pull request # 511 from wasim-nihal/username-file-12576
  > 162098f Bump golang.org/x/net from 0.10.0 to 0.12.0
  > ed1ca57 Merge branch 'username-file-12576' of https://github.com/wasim-nihal/common into username-file-12576
  > e79ab68 Merge branch 'username-file-12576' of https://github.com/wasim-nihal/common into username-file-12576
  > 707c0a9 Merge branch 'username-file-12576' of https://github.com/wasim-nihal/common into username-file-12576
  > 06c301c Adding support for file based configuration of basic auth in http client config.
  > 0af702d Update config/http_config.go
  > 0b1d03c Update config/http_config.go
  > dbdf15f Adding support for file based configuration of basic auth in http client config.

Signed-off-by: Knative Automation <automation@knative.team>
2023-11-01 19:10:25 +00:00
..
attributes upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
backoff [master] Auto-update dependencies (#261) 2020-04-29 09:02:42 -07:00
balancer upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
binarylog/grpc_binarylog_v1 upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
channelz Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
codes Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
connectivity upgrade to latest dependencies (#539) 2021-09-29 06:14:22 -07:00
credentials Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
encoding upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
grpclog upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
health/grpc_health_v1 upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
internal upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
keepalive Generate injection client for knative/caching. (#34) 2019-06-05 11:23:38 -07:00
metadata Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
peer Generate injection client for knative/caching. (#34) 2019-06-05 11:23:38 -07:00
resolver upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
serviceconfig Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
stats upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
status upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
tap upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
AUTHORS Generate injection client for knative/caching. (#34) 2019-06-05 11:23:38 -07:00
CODE-OF-CONDUCT.md Migrate caching to go mod (#258) 2020-04-27 14:35:51 -07:00
CONTRIBUTING.md Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
GOVERNANCE.md Migrate caching to go mod (#258) 2020-04-27 14:35:51 -07:00
LICENSE Generate injection client for knative/caching. (#34) 2019-06-05 11:23:38 -07:00
MAINTAINERS.md upgrade to latest dependencies (#539) 2021-09-29 06:14:22 -07:00
Makefile upgrade to latest dependencies (#539) 2021-09-29 06:14:22 -07:00
NOTICE.txt upgrade to latest dependencies (#539) 2021-09-29 06:14:22 -07:00
README.md upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
SECURITY.md upgrade to latest dependencies (#424) 2021-02-08 17:34:28 -08:00
backoff.go Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
balancer_conn_wrappers.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
call.go upgrade to latest dependencies (#785) 2023-09-20 13:18:14 +00:00
clientconn.go upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
codec.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
codegen.sh Migrate caching to go mod (#258) 2020-04-27 14:35:51 -07:00
dialoptions.go upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
doc.go Track floating deps @ master again (#284) 2020-07-07 13:03:44 -07:00
interceptor.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
picker_wrapper.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
pickfirst.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
preloader.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
regenerate.sh Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
resolver_conn_wrapper.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
rpc_util.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
server.go upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
service_config.go Bump google.golang.org/grpc to the latest version (#761) 2023-07-07 01:18:43 +00:00
shared_buffer_pool.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
stream.go upgrade to latest dependencies (#785) 2023-09-20 13:18:14 +00:00
trace.go upgrade to latest dependencies (#783) 2023-09-12 16:24:10 +00:00
version.go upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00
vet.sh upgrade to latest dependencies (#805) 2023-11-01 19:10:25 +00:00

README.md

gRPC-Go

GoDoc GoReportCard codecov

The Go implementation of gRPC: A high performance, open source, general RPC framework that puts mobile and HTTP/2 first. For more information see the Go gRPC docs, or jump directly into the quick start.

Prerequisites

Installation

Simply add the following import to your code, and then go [build|run|test] will automatically fetch the necessary dependencies:

import "google.golang.org/grpc"

Note: If you are trying to access grpc-go from China, see the FAQ below.

Learn more

FAQ

I/O Timeout Errors

The golang.org domain may be blocked from some countries. go get usually produces an error like the following when this happens:

$ go get -u google.golang.org/grpc
package google.golang.org/grpc: unrecognized import path "google.golang.org/grpc" (https fetch: Get https://google.golang.org/grpc?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)

To build Go code, there are several options:

  • Set up a VPN and access google.golang.org through that.

  • With Go module support: it is possible to use the replace feature of go mod to create aliases for golang.org packages. In your project's directory:

    go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest
    go mod tidy
    go mod vendor
    go build -mod=vendor
    

    Again, this will need to be done for all transitive dependencies hosted on golang.org as well. For details, refer to golang/go issue #28652.

Compiling error, undefined: grpc.SupportPackageIsVersion

Please update to the latest version of gRPC-Go using go get google.golang.org/grpc.

How to turn on logging

The default logger is controlled by environment variables. Turn everything on like this:

$ export GRPC_GO_LOG_VERBOSITY_LEVEL=99
$ export GRPC_GO_LOG_SEVERITY_LEVEL=info

The RPC failed with error "code = Unavailable desc = transport is closing"

This error means the connection the RPC is using was closed, and there are many possible reasons, including:

  1. mis-configured transport credentials, connection failed on handshaking
  2. bytes disrupted, possibly by a proxy in between
  3. server shutdown
  4. Keepalive parameters caused connection shutdown, for example if you have configured your server to terminate connections regularly to trigger DNS lookups. If this is the case, you may want to increase your MaxConnectionAgeGrace, to allow longer RPC calls to finish.

It can be tricky to debug this because the error happens on the client side but the root cause of the connection being closed is on the server side. Turn on logging on both client and server, and see if there are any transport errors.