From ce28f2c049a15d2542744f8cce6cc3ee56153f66 Mon Sep 17 00:00:00 2001 From: Shuo Wu Date: Tue, 19 Dec 2023 18:39:58 +0800 Subject: [PATCH] vendor: Update vendors for SPDK snapshot feature Longhorn 6137 Signed-off-by: Shuo Wu --- go.mod | 21 +- go.sum | 38 +- .../go-spdk-helper/pkg/types/types.go | 5 +- .../pkg/api/instance.go | 11 +- .../pkg/client/disk.go | 5 +- .../pkg/client/instance.go | 8 +- .../pkg/client/process_manager.go | 6 +- .../pkg/client/proxy.go | 3 +- .../pkg/client/proxy_backup.go | 4 +- .../pkg/imrpc/common.pb.go | 140 +- .../pkg/imrpc/common.proto | 2 + .../pkg/imrpc/disk.pb.go | 1316 +++-- .../pkg/imrpc/disk.proto | 4 +- .../pkg/imrpc/imrpc.pb.go | 1339 ++++-- .../pkg/imrpc/imrpc.proto | 1 + .../pkg/imrpc/instance.pb.go | 1462 ++++-- .../pkg/imrpc/instance.proto | 2 + .../pkg/imrpc/proxy.pb.go | 4218 +++++++++++------ .../pkg/imrpc/proxy.proto | 2 + .../pkg/types/types.go | 6 + .../pkg/util/grpcutil.go | 6 +- .../longhorn-spdk-engine/pkg/types/types.go | 9 +- .../proto/spdkrpc/spdk.pb.go | 3617 +++++++++----- .../proto/spdkrpc/spdk.proto | 33 +- vendor/golang.org/x/sync/errgroup/errgroup.go | 10 +- vendor/golang.org/x/sync/errgroup/go120.go | 14 + .../golang.org/x/sync/errgroup/pre_go120.go | 15 + vendor/google.golang.org/grpc/README.md | 58 +- .../grpc/attributes/attributes.go | 59 +- .../grpc/balancer/balancer.go | 47 +- .../grpc/balancer/base/balancer.go | 22 +- .../grpc/balancer_conn_wrappers.go | 75 +- .../grpc_binarylog_v1/binarylog.pb.go | 2 +- vendor/google.golang.org/grpc/call.go | 11 +- vendor/google.golang.org/grpc/clientconn.go | 236 +- vendor/google.golang.org/grpc/codec.go | 8 +- vendor/google.golang.org/grpc/dialoptions.go | 37 + .../grpc/encoding/encoding.go | 4 +- .../grpc/encoding/gzip/gzip.go | 4 +- .../grpc/encoding/proto/proto.go | 4 +- .../grpc/grpclog/component.go | 40 +- .../google.golang.org/grpc/grpclog/grpclog.go | 30 +- .../google.golang.org/grpc/grpclog/logger.go | 30 +- .../grpc/grpclog/loggerv2.go | 56 +- .../grpc/health/grpc_health_v1/health.pb.go | 2 +- vendor/google.golang.org/grpc/interceptor.go | 12 +- .../balancer/gracefulswitch/gracefulswitch.go | 59 +- .../grpc/internal/balancerload/load.go | 4 +- .../grpc/internal/binarylog/method_logger.go | 4 +- .../grpc/internal/buffer/unbounded.go | 18 +- .../grpc/internal/channelz/funcs.go | 69 +- .../grpc/internal/channelz/logging.go | 12 +- .../grpc/internal/channelz/types.go | 5 + .../grpc/internal/channelz/util_linux.go | 2 +- .../grpc/internal/channelz/util_nonlinux.go | 2 +- .../grpc/internal/credentials/credentials.go | 8 +- .../grpc/internal/envconfig/envconfig.go | 12 +- .../grpc/internal/grpclog/grpclog.go | 40 +- .../grpc/internal/grpclog/prefixLogger.go | 8 +- .../grpc/internal/grpcrand/grpcrand.go | 7 + .../internal/grpcsync/callback_serializer.go | 54 +- .../grpc/internal/grpcsync/pubsub.go | 121 + .../grpc/{ => internal/idle}/idle.go | 188 +- .../grpc/internal/internal.go | 45 +- .../grpc/internal/metadata/metadata.go | 2 +- .../grpc/internal/pretty/pretty.go | 2 +- .../grpc/internal/resolver/config_selector.go | 4 +- .../internal/resolver/dns/dns_resolver.go | 74 +- .../grpc/internal/status/status.go | 8 +- .../grpc/internal/transport/controlbuf.go | 16 +- .../grpc/internal/transport/http2_client.go | 45 +- .../grpc/internal/transport/http2_server.go | 8 +- .../grpc/internal/transport/http_util.go | 59 +- .../grpc/internal/transport/transport.go | 17 +- .../google.golang.org/grpc/picker_wrapper.go | 34 +- vendor/google.golang.org/grpc/pickfirst.go | 88 +- vendor/google.golang.org/grpc/preloader.go | 2 +- .../grpc/resolver/manual/manual.go | 17 +- vendor/google.golang.org/grpc/resolver/map.go | 10 +- .../grpc/resolver/resolver.go | 84 +- .../grpc/resolver_conn_wrapper.go | 10 +- vendor/google.golang.org/grpc/rpc_util.go | 44 +- vendor/google.golang.org/grpc/server.go | 103 +- .../grpc/shared_buffer_pool.go | 154 + vendor/google.golang.org/grpc/stats/stats.go | 14 +- .../google.golang.org/grpc/status/status.go | 14 +- vendor/google.golang.org/grpc/stream.go | 130 +- vendor/google.golang.org/grpc/trace.go | 6 +- vendor/google.golang.org/grpc/version.go | 2 +- vendor/google.golang.org/grpc/vet.sh | 7 +- vendor/modules.txt | 25 +- 91 files changed, 9495 insertions(+), 5176 deletions(-) create mode 100644 vendor/golang.org/x/sync/errgroup/go120.go create mode 100644 vendor/golang.org/x/sync/errgroup/pre_go120.go create mode 100644 vendor/google.golang.org/grpc/internal/grpcsync/pubsub.go rename vendor/google.golang.org/grpc/{ => internal/idle}/idle.go (61%) create mode 100644 vendor/google.golang.org/grpc/shared_buffer_pool.go diff --git a/go.mod b/go.mod index 450f4589dc..3d0b922445 100644 --- a/go.mod +++ b/go.mod @@ -2,6 +2,11 @@ module github.com/longhorn/longhorn-manager go 1.21 +replace ( + github.com/longhorn/longhorn-instance-manager => github.com/shuo-wu/longhorn-instance-manager v0.0.0-20231219150837-45a7e32b8266 + github.com/longhorn/longhorn-spdk-engine => github.com/shuo-wu/longhorn-spdk-engine v0.0.0-20231219142758-f95aec815db9 +) + replace ( k8s.io/api => k8s.io/api v0.28.2 k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.28.2 @@ -47,9 +52,9 @@ require ( github.com/longhorn/backing-image-manager v1.4.0-rc1.0.20230521151917-38ff27cc2cbb github.com/longhorn/backupstore v0.0.0-20231114103026-af339bb498d3 github.com/longhorn/go-iscsi-helper v0.0.0-20231113050545-9df1e6b605c7 - github.com/longhorn/go-spdk-helper v0.0.0-20231113055029-9acddd184246 + github.com/longhorn/go-spdk-helper v0.0.0-20231212033123-3b72caa5a1ea github.com/longhorn/longhorn-engine v1.4.0-rc1.0.20230914160943-b42224518443 - github.com/longhorn/longhorn-instance-manager v1.4.0-rc1.0.20231117031020-055db7ef0240 + github.com/longhorn/longhorn-instance-manager v1.5.3 github.com/longhorn/longhorn-share-manager v1.4.0-rc1.0.20231115135615-fb85b56534a4 github.com/pkg/errors v0.9.1 github.com/prometheus/client_golang v1.16.0 @@ -64,7 +69,7 @@ require ( golang.org/x/net v0.17.0 golang.org/x/sys v0.13.0 golang.org/x/time v0.3.0 - google.golang.org/grpc v1.56.3 + google.golang.org/grpc v1.58.3 gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c gopkg.in/yaml.v2 v2.4.0 k8s.io/api v0.28.2 @@ -85,8 +90,8 @@ require ( github.com/mitchellh/go-ps v1.0.0 // indirect golang.org/x/exp v0.0.0-20220827204233-334a2380cb91 // indirect golang.org/x/tools v0.8.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 // indirect ) require ( @@ -134,7 +139,7 @@ require ( github.com/kr/pretty v0.3.1 // indirect github.com/kr/text v0.2.0 // indirect github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect - github.com/longhorn/longhorn-spdk-engine v0.0.0-20231005170812-e9b634e07e47 // indirect + github.com/longhorn/longhorn-spdk-engine v0.0.0-20231218140159-260714390564 // indirect github.com/mailru/easyjson v0.7.7 // indirect github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect github.com/mitchellh/copystructure v1.2.0 // indirect @@ -177,11 +182,11 @@ require ( go.uber.org/zap v1.19.0 // indirect golang.org/x/crypto v0.14.0 // indirect golang.org/x/oauth2 v0.10.0 // indirect - golang.org/x/sync v0.2.0 + golang.org/x/sync v0.3.0 golang.org/x/term v0.13.0 // indirect golang.org/x/text v0.13.0 google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 // indirect + google.golang.org/genproto v0.0.0-20230711160842-782d3b101e98 // indirect google.golang.org/protobuf v1.31.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect diff --git a/go.sum b/go.sum index 99250b3b64..015f161c84 100644 --- a/go.sum +++ b/go.sum @@ -35,8 +35,8 @@ cloud.google.com/go v0.102.1/go.mod h1:XZ77E9qnTEnrgEOvr4xzfdX5TRo7fB4T2F4O6+34h cloud.google.com/go v0.104.0/go.mod h1:OO6xxXdJyvuJPcEPBLN9BJPD+jep5G1+2U5B5gkRYtA= cloud.google.com/go v0.105.0/go.mod h1:PrLgOJNe5nfE9UMxKxgXj4mD3voiP+YQ6gdt6KMFOKM= cloud.google.com/go v0.107.0/go.mod h1:wpc2eNrD7hXUTy8EKS10jkxpZBjASrORK7goS+3YX2I= -cloud.google.com/go v0.110.0 h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys= cloud.google.com/go v0.110.0/go.mod h1:SJnCLqQ0FCFGSZMUNUf84MV3Aia54kn7pi8st7tMzaY= +cloud.google.com/go v0.110.4 h1:1JYyxKMN9hd5dR2MYTPWkGUgcoxVVhg0LKNKEo0qvmk= cloud.google.com/go/accessapproval v1.4.0/go.mod h1:zybIuC3KpDOvotz59lFe5qxRZx6C75OtwbisN56xYB4= cloud.google.com/go/accessapproval v1.5.0/go.mod h1:HFy3tuiGvMdcd/u+Cu5b9NkO1pEICJ46IR82PoUdplw= cloud.google.com/go/accessapproval v1.6.0/go.mod h1:R0EiYnwV5fsRFiKZkPHr6mwyk2wxUJ30nL4j2pcFY2E= @@ -172,8 +172,8 @@ cloud.google.com/go/compute v1.14.0/go.mod h1:YfLtxrj9sU4Yxv+sXzZkyPjEyPBZfXHUvj cloud.google.com/go/compute v1.15.1/go.mod h1:bjjoF/NtFUrkD/urWfdHaKuOPDR5nWIs63rR+SXhcpA= cloud.google.com/go/compute v1.18.0/go.mod h1:1X7yHxec2Ga+Ss6jPyjxRxpu2uu7PLgsOVXvgU0yacs= cloud.google.com/go/compute v1.19.0/go.mod h1:rikpw2y+UMidAe9tISo04EHNOIf42RLYF/q8Bs93scU= -cloud.google.com/go/compute v1.20.1 h1:6aKEtlUiwEpJzM001l0yFkpXmUVXaN8W+fbkb2AZNbg= -cloud.google.com/go/compute v1.20.1/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM= +cloud.google.com/go/compute v1.21.0 h1:JNBsyXVoOoNJtTQcnEY5uYpZIbeCTYIeDe0Xh1bySMk= +cloud.google.com/go/compute v1.21.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM= cloud.google.com/go/compute/metadata v0.1.0/go.mod h1:Z1VN+bulIf6bt4P/C37K4DyZYZEXYonfTBHHFPO/4UU= cloud.google.com/go/compute/metadata v0.2.0/go.mod h1:zFmK7XCadkQkj6TtorcaGlCW1hT1fIilQDwofLpJ20k= cloud.google.com/go/compute/metadata v0.2.1/go.mod h1:jgHgmJd2RKBGzXqF5LR2EZMGxBkeanZ9wwa75XHJgOM= @@ -737,8 +737,8 @@ github.com/envoyproxy/go-control-plane v0.10.3/go.mod h1:fJJn/j26vwOu972OllsvAgJ github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/envoyproxy/protoc-gen-validate v0.6.7/go.mod h1:dyJXwwfPK2VSqiB9Klm1J6romD608Ba7Hij42vrOBCo= github.com/envoyproxy/protoc-gen-validate v0.9.1/go.mod h1:OKNgG7TCp5pF4d6XftA0++PMirau2/yoOwVac3AbF2w= -github.com/envoyproxy/protoc-gen-validate v0.10.1 h1:c0g45+xCJhdgFGw7a5QAfdS4byAbud7miNWJ1WwEVf8= -github.com/envoyproxy/protoc-gen-validate v0.10.1/go.mod h1:DRjgyB0I43LtJapqN6NiRwroiAU2PaFuvk/vjgh61ss= +github.com/envoyproxy/protoc-gen-validate v1.0.2 h1:QkIBuU5k+x7/QXPvPPnWXWlCdaBFApVqftFV6k087DA= +github.com/envoyproxy/protoc-gen-validate v1.0.2/go.mod h1:GpiZQP3dDbg4JouG/NNS7QWXpgx6x8QiMKdmN72jogE= github.com/evanphx/json-patch v0.5.2/go.mod h1:ZWS5hhDbVDyob71nXKNL0+PWn6ToqBHMikGIFbs31qQ= github.com/evanphx/json-patch v4.11.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch v4.12.0+incompatible h1:4onqiflcdA9EOZ4RxV643DvftH5pOlLGNtQ5lPWQu84= @@ -1035,16 +1035,12 @@ github.com/longhorn/backupstore v0.0.0-20231114103026-af339bb498d3 h1:z1+k7ANPYj github.com/longhorn/backupstore v0.0.0-20231114103026-af339bb498d3/go.mod h1:JzuHEmLyQPhGuxtKpJ2vCXPfGbylXJiBVg4KLVKsj9c= github.com/longhorn/go-iscsi-helper v0.0.0-20231113050545-9df1e6b605c7 h1:YOOhIENIfhVCOaD00oWFeothjP0UyItBScUmpwGg8TM= github.com/longhorn/go-iscsi-helper v0.0.0-20231113050545-9df1e6b605c7/go.mod h1:xz30xMoSLdYxfUygCzM/s99CA8/LNrkcEULFWExhqz4= -github.com/longhorn/go-spdk-helper v0.0.0-20231113055029-9acddd184246 h1:Pry2QHJEqEy9jsRIaACmq/1Hre8N9wfE061+gQKspKg= -github.com/longhorn/go-spdk-helper v0.0.0-20231113055029-9acddd184246/go.mod h1:PCawMRVllTJnjbIYIC8axRfEI7aEhhjbsoBS/Y/EUYQ= +github.com/longhorn/go-spdk-helper v0.0.0-20231212033123-3b72caa5a1ea h1:w6z3SoaiySsKsSoUT9ykppaML0Ij5nuVcCi048c+oZo= +github.com/longhorn/go-spdk-helper v0.0.0-20231212033123-3b72caa5a1ea/go.mod h1:PCawMRVllTJnjbIYIC8axRfEI7aEhhjbsoBS/Y/EUYQ= github.com/longhorn/longhorn-engine v1.4.0-rc1.0.20230914160943-b42224518443 h1:4P/dmOAq8nMGg9vnXkT04NBdNidOCPXg2LM3J63ewn8= github.com/longhorn/longhorn-engine v1.4.0-rc1.0.20230914160943-b42224518443/go.mod h1:zcfS53mU3LkxWAWf2MkHsa75Q4t01GmiW++mfp1+78M= -github.com/longhorn/longhorn-instance-manager v1.4.0-rc1.0.20231117031020-055db7ef0240 h1:ODDgqV+etH3mOI+Ss9C2jb5wHqll7kyet//bjBYhvaI= -github.com/longhorn/longhorn-instance-manager v1.4.0-rc1.0.20231117031020-055db7ef0240/go.mod h1:UEKMX5u3sHynT3KAddLUaxcrLABl8Y2H/NH8Oy4Kv3U= github.com/longhorn/longhorn-share-manager v1.4.0-rc1.0.20231115135615-fb85b56534a4 h1:jf2jLuUZS5l7TyI1cNRqm7e9X/lrwBNsI16Q7P/o7JE= github.com/longhorn/longhorn-share-manager v1.4.0-rc1.0.20231115135615-fb85b56534a4/go.mod h1:A/Z/YpW//hdULf+ZxelXQi8VEfAIIDRvEFvmv0xHSU0= -github.com/longhorn/longhorn-spdk-engine v0.0.0-20231005170812-e9b634e07e47 h1:hadV15fSF+akBFZ8dMQFscTsJUVpEC1t6Go3B28ZNYw= -github.com/longhorn/longhorn-spdk-engine v0.0.0-20231005170812-e9b634e07e47/go.mod h1:mx8AOJWxLvWr+w4WtFirIPsEW88RajimS/pOEsw8A2k= github.com/lyft/protoc-gen-star v0.6.0/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/lyft/protoc-gen-star v0.6.1/go.mod h1:TGAoBVkt8w7MPG72TrKIu85MIdXwDuzJYeZuUPFPNwA= github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= @@ -1225,6 +1221,10 @@ github.com/ruudk/golang-pdf417 v0.0.0-20181029194003-1af4ab5afa58/go.mod h1:6lfF github.com/ruudk/golang-pdf417 v0.0.0-20201230142125-a7e3863a1245/go.mod h1:pQAZKsJ8yyVxGRWYNEm9oFB8ieLgKFnamEyDmSA0BRk= github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb6uqfes/u+d4ooFouqFdy9/2g9QGwK3SQygK0Ts= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= +github.com/shuo-wu/longhorn-instance-manager v0.0.0-20231219150837-45a7e32b8266 h1:Gol6lSoRPz1YTEYP6e0zsiXW8jzTVY5tdYB6kJUZ/yU= +github.com/shuo-wu/longhorn-instance-manager v0.0.0-20231219150837-45a7e32b8266/go.mod h1:EkN0yvRR149ejGgy8ih6GrDcKJpZRkSHvqSlGGV4uzE= +github.com/shuo-wu/longhorn-spdk-engine v0.0.0-20231219142758-f95aec815db9 h1:LFeVEuKcKN3cUvI4mTc3nx1ttYDvpJ+K8S3FBaeVK+E= +github.com/shuo-wu/longhorn-spdk-engine v0.0.0-20231219142758-f95aec815db9/go.mod h1:6Oqh3/BvSfzJSd76r2pnq2q7ND5rKDxqhH1DQjRph5c= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= @@ -1573,8 +1573,9 @@ golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220929204114-8fcdb60fdcc0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.2.0 h1:PUR+T4wwASmuSTYdKjYHI5TD22Wy5ogLU5qZCOLxBrI= golang.org/x/sync v0.2.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E= +golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -2014,14 +2015,17 @@ google.golang.org/genproto v0.0.0-20230323212658-478b75c54725/go.mod h1:UUQDJDOl google.golang.org/genproto v0.0.0-20230330154414-c0448cd141ea/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak= google.golang.org/genproto v0.0.0-20230331144136-dcfb400f0633/go.mod h1:UUQDJDOlWu4KYeJZffbWgBkS1YFobzKbLVfK69pe0Ak= google.golang.org/genproto v0.0.0-20230525234025-438c736192d0/go.mod h1:9ExIQyXL5hZrHzQceCwuSYwZZ5QZBazOcprJ5rgs3lY= -google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 h1:9NWlQfY2ePejTmfwUH1OWwmznFa+0kKcHGPDvcPza9M= google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54/go.mod h1:zqTuNwFlFRsw5zIts5VnzLQxSRqh+CGOTVMlYbY0Eyk= +google.golang.org/genproto v0.0.0-20230711160842-782d3b101e98 h1:Z0hjGZePRE0ZBWotvtrwxFNrNE9CUAGtplaDK5NNI/g= +google.golang.org/genproto v0.0.0-20230711160842-782d3b101e98/go.mod h1:S7mY02OqCJTD0E1OiQy1F72PWFB4bZJ87cAtLPYgDR0= google.golang.org/genproto/googleapis/api v0.0.0-20230525234020-1aefcd67740a/go.mod h1:ts19tUU+Z0ZShN1y3aPyq2+O3d5FUNNgT6FtOzmrNn8= -google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 h1:m8v1xLLLzMe1m5P+gCTF8nJB9epwZQUBERm20Oy1poQ= google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9/go.mod h1:vHYtlOoi6TsQ3Uk2yxR7NI5z8uoV+3pZtR4jmHIkRig= +google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98 h1:FmF5cCW94Ij59cfpoLiwTgodWmm60eEV0CjlsVg2fuw= +google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98/go.mod h1:rsr7RhLuwsDKL7RmgDDCUc6yaGr1iqceVb5Wv6f6YvQ= google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234015-3fc162c6f38a/go.mod h1:xURIpW9ES5+/GZhnV6beoEtxQrnkRGIfP5VQG2tCBLc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 h1:0nDDozoAU19Qb2HwhXadU8OcsiO/09cnTqhUtq2MEOM= google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19/go.mod h1:66JfowdXAEgad5O9NnYcsNPLCPZJD++2L9X0PCMODrA= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 h1:bVf09lpb+OJbByTj913DRJioFFAjf/ZGxEz7MajTp2U= +google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98/go.mod h1:TUfxEVdsvPg18p6AslUXFoLdpED4oBnGwyqk3dV1XzM= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -2062,8 +2066,8 @@ google.golang.org/grpc v1.50.1/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCD google.golang.org/grpc v1.51.0/go.mod h1:wgNDFcnuBGmxLKI/qn4T+m5BtEBYXJPvibbUPsAIPww= google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw= google.golang.org/grpc v1.54.0/go.mod h1:PUSEXI6iWghWaB6lXM4knEgpJNu2qUcKfDtNci3EC2g= -google.golang.org/grpc v1.56.3 h1:8I4C0Yq1EjstUzUJzpcRVbuYA2mODtEmpWiQoN/b2nc= -google.golang.org/grpc v1.56.3/go.mod h1:I9bI3vqKfayGqPUAwGdOSu7kt6oIJLixfffKrpXqQ9s= +google.golang.org/grpc v1.58.3 h1:BjnpXut1btbtgN/6sp+brB2Kbm2LjNXnidYujAVbSoQ= +google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= diff --git a/vendor/github.com/longhorn/go-spdk-helper/pkg/types/types.go b/vendor/github.com/longhorn/go-spdk-helper/pkg/types/types.go index 6daadb0424..45a2ddb4a2 100644 --- a/vendor/github.com/longhorn/go-spdk-helper/pkg/types/types.go +++ b/vendor/github.com/longhorn/go-spdk-helper/pkg/types/types.go @@ -17,10 +17,11 @@ const ( // DefaultReconnectDelaySec can't be more than DefaultFastIoFailTimeoutSec, same for non-default values. DefaultReconnectDelaySec = 5 DefaultFastIOFailTimeoutSec = 15 + // DefaultTransportAckTimeout value is not the timeout second. + // The timeout fomula is 2^(transport_ack_timeout) msec. + // DefaultTransportAckTimeout is 14, so the default timeout is 2^14 = 16384 msec = 16.384 sec. // By default, error detection on a qpair is very slow for TCP transports. For fast error // detection, transport_ack_timeout should be set. - // Ack timeout fomula is 2^(transport_ack_timeout) msec. - // DefaultTransportAckTimeout is 14, so the default timeout is 2^14 = 16384 msec = 16.384 sec. DefaultTransportAckTimeout = 14 ) diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/api/instance.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/api/instance.go index 717b90d490..2a942f035b 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/api/instance.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/api/instance.go @@ -1,11 +1,10 @@ package api import ( - "github.com/golang/protobuf/ptypes/empty" - - "github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc" + "google.golang.org/protobuf/types/known/emptypb" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" + "github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc" ) type InstanceProcessSpec struct { @@ -79,7 +78,7 @@ func NewInstanceStream(stream rpc.InstanceService_InstanceWatchClient) *Instance } } -func (s *InstanceStream) Recv() (*empty.Empty, error) { +func (s *InstanceStream) Recv() (*emptypb.Empty, error) { return s.stream.Recv() } @@ -93,7 +92,7 @@ func NewReplicaStream(stream spdkrpc.SPDKService_ReplicaWatchClient) *ReplicaStr } } -func (s *ReplicaStream) Recv() (*empty.Empty, error) { +func (s *ReplicaStream) Recv() (*emptypb.Empty, error) { return s.stream.Recv() } @@ -107,7 +106,7 @@ func NewEngineStream(stream spdkrpc.SPDKService_EngineWatchClient) *EngineStream } } -func (s *EngineStream) Recv() (*empty.Empty, error) { +func (s *EngineStream) Recv() (*emptypb.Empty, error) { return s.stream.Recv() } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/disk.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/disk.go index e662534e3b..0a149cabf8 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/disk.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/disk.go @@ -5,9 +5,9 @@ import ( "crypto/tls" "fmt" - "github.com/golang/protobuf/ptypes/empty" "github.com/pkg/errors" "google.golang.org/grpc" + "google.golang.org/protobuf/types/known/emptypb" "github.com/longhorn/longhorn-instance-manager/pkg/api" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" @@ -192,7 +192,6 @@ func (c *DiskServiceClient) DiskReplicaInstanceList(diskType, diskName string) ( for name, instance := range resp.ReplicaInstances { instances[name] = &api.ReplicaStorageInstance{ Name: instance.Name, - UUID: instance.Uuid, DiskName: instance.DiskName, DiskUUID: instance.DiskUuid, SpecSize: instance.SpecSize, @@ -229,7 +228,7 @@ func (c *DiskServiceClient) VersionGet() (*meta.DiskServiceVersionOutput, error) ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout) defer cancel() - resp, err := client.VersionGet(ctx, &empty.Empty{}) + resp, err := client.VersionGet(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to get disk service version") } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/instance.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/instance.go index 964fcad914..1dd5e6423e 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/instance.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/instance.go @@ -5,9 +5,9 @@ import ( "crypto/tls" "fmt" - "github.com/golang/protobuf/ptypes/empty" "github.com/pkg/errors" "google.golang.org/grpc" + "google.golang.org/protobuf/types/known/emptypb" "github.com/longhorn/longhorn-instance-manager/pkg/api" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" @@ -217,7 +217,7 @@ func (c *InstanceServiceClient) InstanceList() (map[string]*api.Instance, error) ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout) defer cancel() - instances, err := client.InstanceList(ctx, &empty.Empty{}) + instances, err := client.InstanceList(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to list instances") } @@ -248,7 +248,7 @@ func (c *InstanceServiceClient) InstanceLog(ctx context.Context, backendStoreDri func (c *InstanceServiceClient) InstanceWatch(ctx context.Context) (*api.InstanceStream, error) { client := c.getControllerServiceClient() - stream, err := client.InstanceWatch(ctx, &empty.Empty{}) + stream, err := client.InstanceWatch(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to open instance update stream") } @@ -299,7 +299,7 @@ func (c *InstanceServiceClient) VersionGet() (*meta.VersionOutput, error) { ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout) defer cancel() - resp, err := client.VersionGet(ctx, &empty.Empty{}) + resp, err := client.VersionGet(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to get version") } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/process_manager.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/process_manager.go index 486c2f2101..5848792554 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/process_manager.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/process_manager.go @@ -5,10 +5,10 @@ import ( "crypto/tls" "fmt" - "github.com/golang/protobuf/ptypes/empty" "github.com/pkg/errors" "github.com/sirupsen/logrus" "google.golang.org/grpc" + "google.golang.org/protobuf/types/known/emptypb" "github.com/longhorn/longhorn-instance-manager/pkg/api" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" @@ -158,7 +158,7 @@ func (c *ProcessManagerClient) ProcessLog(ctx context.Context, name string) (*ap func (c *ProcessManagerClient) ProcessWatch(ctx context.Context) (*api.ProcessStream, error) { client := c.getControllerServiceClient() - stream, err := client.ProcessWatch(ctx, &empty.Empty{}) + stream, err := client.ProcessWatch(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to open process update stream") } @@ -196,7 +196,7 @@ func (c *ProcessManagerClient) VersionGet() (*meta.VersionOutput, error) { ctx, cancel := context.WithTimeout(context.Background(), types.GRPCServiceTimeout) defer cancel() - resp, err := client.VersionGet(ctx, &empty.Empty{}) + resp, err := client.VersionGet(ctx, &emptypb.Empty{}) if err != nil { return nil, errors.Wrap(err, "failed to get version") } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy.go index bf9b45beac..31634b9874 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy.go @@ -9,6 +9,7 @@ import ( "golang.org/x/net/context" "google.golang.org/grpc" "google.golang.org/grpc/connectivity" + "google.golang.org/grpc/credentials/insecure" "google.golang.org/grpc/keepalive" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" @@ -63,7 +64,7 @@ type ProxyClient struct { func NewProxyClient(ctx context.Context, ctxCancel context.CancelFunc, address string, port int) (*ProxyClient, error) { getServiceCtx := func(serviceUrl string) (ServiceContext, error) { dialOptions := []grpc.DialOption{ - grpc.WithInsecure(), + grpc.WithTransportCredentials(insecure.NewCredentials()), grpc.WithKeepaliveParams(keepalive.ClientParameters{ Time: time.Second * 10, PermitWithoutStream: true, diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy_backup.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy_backup.go index 4585061cbc..fbd093af52 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy_backup.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/client/proxy_backup.go @@ -4,14 +4,14 @@ import ( "encoding/json" "fmt" - "github.com/golang/protobuf/ptypes/empty" "github.com/pkg/errors" + "google.golang.org/protobuf/types/known/emptypb" rpc "github.com/longhorn/longhorn-instance-manager/pkg/imrpc" ) func (c *ProxyClient) CleanupBackupMountPoints() (err error) { - _, err = c.service.CleanupBackupMountPoints(getContextWithGRPCTimeout(c.ctx), &empty.Empty{}) + _, err = c.service.CleanupBackupMountPoints(getContextWithGRPCTimeout(c.ctx), &emptypb.Empty{}) if err != nil { return err } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.pb.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.pb.go index 48d46704bc..051bea630c 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.pb.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.pb.go @@ -1,24 +1,24 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 // source: github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto package imrpc import ( - fmt "fmt" - proto "github.com/golang/protobuf/proto" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type BackendStoreDriver int32 @@ -27,41 +27,107 @@ const ( BackendStoreDriver_v2 BackendStoreDriver = 1 ) -var BackendStoreDriver_name = map[int32]string{ - 0: "v1", - 1: "v2", -} +// Enum value maps for BackendStoreDriver. +var ( + BackendStoreDriver_name = map[int32]string{ + 0: "v1", + 1: "v2", + } + BackendStoreDriver_value = map[string]int32{ + "v1": 0, + "v2": 1, + } +) -var BackendStoreDriver_value = map[string]int32{ - "v1": 0, - "v2": 1, +func (x BackendStoreDriver) Enum() *BackendStoreDriver { + p := new(BackendStoreDriver) + *p = x + return p } func (x BackendStoreDriver) String() string { - return proto.EnumName(BackendStoreDriver_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BackendStoreDriver) Descriptor() protoreflect.EnumDescriptor { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_enumTypes[0].Descriptor() +} + +func (BackendStoreDriver) Type() protoreflect.EnumType { + return &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_enumTypes[0] } +func (x BackendStoreDriver) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BackendStoreDriver.Descriptor instead. func (BackendStoreDriver) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_8198dc9351c39e1c, []int{0} + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescGZIP(), []int{0} +} + +var File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDesc = []byte{ + 0x0a, 0x44, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2a, 0x24, 0x0a, + 0x12, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, + 0x76, 0x65, 0x72, 0x12, 0x06, 0x0a, 0x02, 0x76, 0x31, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x76, + 0x32, 0x10, 0x01, 0x42, 0x39, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, + 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } -func init() { - proto.RegisterEnum("imrpc.BackendStoreDriver", BackendStoreDriver_name, BackendStoreDriver_value) +var ( + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescData = file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDescData } -func init() { - proto.RegisterFile("github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto", fileDescriptor_8198dc9351c39e1c) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_goTypes = []interface{}{ + (BackendStoreDriver)(0), // 0: imrpc.BackendStoreDriver +} +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_depIdxs = []int32{ + 0, // [0:0] is the sub-list for method output_type + 0, // [0:0] is the sub-list for method input_type + 0, // [0:0] is the sub-list for extension type_name + 0, // [0:0] is the sub-list for extension extendee + 0, // [0:0] is the sub-list for field type_name } -var fileDescriptor_8198dc9351c39e1c = []byte{ - // 130 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x72, 0x49, 0xcf, 0x2c, 0xc9, - 0x28, 0x4d, 0xd2, 0x4b, 0xce, 0xcf, 0xd5, 0xcf, 0xc9, 0xcf, 0x4b, 0xcf, 0xc8, 0x2f, 0xca, 0x83, - 0x33, 0x74, 0x33, 0xf3, 0x8a, 0x4b, 0x12, 0xf3, 0x92, 0x53, 0x75, 0x73, 0x13, 0xf3, 0x12, 0xd3, - 0x53, 0x8b, 0xf4, 0x0b, 0xb2, 0xd3, 0xf5, 0x33, 0x73, 0x8b, 0x0a, 0x92, 0xf5, 0x93, 0xf3, 0x73, - 0x73, 0xf3, 0xf3, 0xf4, 0x0a, 0x8a, 0xf2, 0x4b, 0xf2, 0x85, 0x58, 0xc1, 0x62, 0x5a, 0x2a, 0x5c, - 0x42, 0x4e, 0x89, 0xc9, 0xd9, 0xa9, 0x79, 0x29, 0xc1, 0x25, 0xf9, 0x45, 0xa9, 0x2e, 0x45, 0x99, - 0x65, 0xa9, 0x45, 0x42, 0x6c, 0x5c, 0x4c, 0x65, 0x86, 0x02, 0x0c, 0x60, 0xda, 0x48, 0x80, 0x31, - 0x89, 0x0d, 0xac, 0xc7, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0x54, 0xa7, 0xbe, 0xfc, 0x7b, 0x00, - 0x00, 0x00, +func init() { file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_init() } +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_init() { + if File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDesc, + NumEnums: 1, + NumMessages: 0, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_depIdxs, + EnumInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_enumTypes, + }.Build() + File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto = out.File + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_rawDesc = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_goTypes = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_depIdxs = nil } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto index abfdf0bc59..3fbcd58943 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto @@ -2,6 +2,8 @@ syntax="proto3"; package imrpc; +option go_package = "github.com/longhorn/longhorn-instance-manager/pkg/imrpc"; + enum BackendStoreDriver { v1 = 0; v2 = 1; diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.pb.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.pb.go index 2c9266d10a..290dfe0d8b 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.pb.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.pb.go @@ -1,29 +1,29 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 // source: github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto package imrpc import ( context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - empty "github.com/golang/protobuf/ptypes/empty" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type DiskType int32 @@ -32,712 +32,1078 @@ const ( DiskType_block DiskType = 1 ) -var DiskType_name = map[int32]string{ - 0: "filesystem", - 1: "block", -} +// Enum value maps for DiskType. +var ( + DiskType_name = map[int32]string{ + 0: "filesystem", + 1: "block", + } + DiskType_value = map[string]int32{ + "filesystem": 0, + "block": 1, + } +) -var DiskType_value = map[string]int32{ - "filesystem": 0, - "block": 1, +func (x DiskType) Enum() *DiskType { + p := new(DiskType) + *p = x + return p } func (x DiskType) String() string { - return proto.EnumName(DiskType_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (DiskType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{0} +func (DiskType) Descriptor() protoreflect.EnumDescriptor { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_enumTypes[0].Descriptor() } -type Disk struct { - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` - Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"` - Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` - TotalSize int64 `protobuf:"varint,5,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` - FreeSize int64 `protobuf:"varint,6,opt,name=free_size,json=freeSize,proto3" json:"free_size,omitempty"` - TotalBlocks int64 `protobuf:"varint,7,opt,name=total_blocks,json=totalBlocks,proto3" json:"total_blocks,omitempty"` - FreeBlocks int64 `protobuf:"varint,8,opt,name=free_blocks,json=freeBlocks,proto3" json:"free_blocks,omitempty"` - BlockSize int64 `protobuf:"varint,9,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` - ClusterSize int64 `protobuf:"varint,10,opt,name=cluster_size,json=clusterSize,proto3" json:"cluster_size,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Disk) Reset() { *m = Disk{} } -func (m *Disk) String() string { return proto.CompactTextString(m) } -func (*Disk) ProtoMessage() {} -func (*Disk) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{0} +func (DiskType) Type() protoreflect.EnumType { + return &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_enumTypes[0] } -func (m *Disk) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Disk.Unmarshal(m, b) +func (x DiskType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use DiskType.Descriptor instead. +func (DiskType) EnumDescriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{0} } -func (m *Disk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Disk.Marshal(b, m, deterministic) + +type Disk struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` + Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"` + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` + TotalSize int64 `protobuf:"varint,5,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + FreeSize int64 `protobuf:"varint,6,opt,name=free_size,json=freeSize,proto3" json:"free_size,omitempty"` + TotalBlocks int64 `protobuf:"varint,7,opt,name=total_blocks,json=totalBlocks,proto3" json:"total_blocks,omitempty"` + FreeBlocks int64 `protobuf:"varint,8,opt,name=free_blocks,json=freeBlocks,proto3" json:"free_blocks,omitempty"` + BlockSize int64 `protobuf:"varint,9,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` + ClusterSize int64 `protobuf:"varint,10,opt,name=cluster_size,json=clusterSize,proto3" json:"cluster_size,omitempty"` } -func (m *Disk) XXX_Merge(src proto.Message) { - xxx_messageInfo_Disk.Merge(m, src) + +func (x *Disk) Reset() { + *x = Disk{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *Disk) XXX_Size() int { - return xxx_messageInfo_Disk.Size(m) + +func (x *Disk) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Disk) XXX_DiscardUnknown() { - xxx_messageInfo_Disk.DiscardUnknown(m) + +func (*Disk) ProtoMessage() {} + +func (x *Disk) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Disk proto.InternalMessageInfo +// Deprecated: Use Disk.ProtoReflect.Descriptor instead. +func (*Disk) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{0} +} -func (m *Disk) GetId() string { - if m != nil { - return m.Id +func (x *Disk) GetId() string { + if x != nil { + return x.Id } return "" } -func (m *Disk) GetUuid() string { - if m != nil { - return m.Uuid +func (x *Disk) GetUuid() string { + if x != nil { + return x.Uuid } return "" } -func (m *Disk) GetPath() string { - if m != nil { - return m.Path +func (x *Disk) GetPath() string { + if x != nil { + return x.Path } return "" } -func (m *Disk) GetType() string { - if m != nil { - return m.Type +func (x *Disk) GetType() string { + if x != nil { + return x.Type } return "" } -func (m *Disk) GetTotalSize() int64 { - if m != nil { - return m.TotalSize +func (x *Disk) GetTotalSize() int64 { + if x != nil { + return x.TotalSize } return 0 } -func (m *Disk) GetFreeSize() int64 { - if m != nil { - return m.FreeSize +func (x *Disk) GetFreeSize() int64 { + if x != nil { + return x.FreeSize } return 0 } -func (m *Disk) GetTotalBlocks() int64 { - if m != nil { - return m.TotalBlocks +func (x *Disk) GetTotalBlocks() int64 { + if x != nil { + return x.TotalBlocks } return 0 } -func (m *Disk) GetFreeBlocks() int64 { - if m != nil { - return m.FreeBlocks +func (x *Disk) GetFreeBlocks() int64 { + if x != nil { + return x.FreeBlocks } return 0 } -func (m *Disk) GetBlockSize() int64 { - if m != nil { - return m.BlockSize +func (x *Disk) GetBlockSize() int64 { + if x != nil { + return x.BlockSize } return 0 } -func (m *Disk) GetClusterSize() int64 { - if m != nil { - return m.ClusterSize +func (x *Disk) GetClusterSize() int64 { + if x != nil { + return x.ClusterSize } return 0 } type ReplicaInstance struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` - DiskName string `protobuf:"bytes,3,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,4,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - SpecSize uint64 `protobuf:"varint,5,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ActualSize uint64 `protobuf:"varint,6,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ReplicaInstance) Reset() { *m = ReplicaInstance{} } -func (m *ReplicaInstance) String() string { return proto.CompactTextString(m) } -func (*ReplicaInstance) ProtoMessage() {} -func (*ReplicaInstance) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{1} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaInstance) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaInstance.Unmarshal(m, b) -} -func (m *ReplicaInstance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaInstance.Marshal(b, m, deterministic) + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` + DiskName string `protobuf:"bytes,3,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,4,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + SpecSize uint64 `protobuf:"varint,5,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ActualSize uint64 `protobuf:"varint,6,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` } -func (m *ReplicaInstance) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaInstance.Merge(m, src) + +func (x *ReplicaInstance) Reset() { + *x = ReplicaInstance{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaInstance) XXX_Size() int { - return xxx_messageInfo_ReplicaInstance.Size(m) + +func (x *ReplicaInstance) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaInstance) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaInstance.DiscardUnknown(m) + +func (*ReplicaInstance) ProtoMessage() {} + +func (x *ReplicaInstance) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaInstance proto.InternalMessageInfo +// Deprecated: Use ReplicaInstance.ProtoReflect.Descriptor instead. +func (*ReplicaInstance) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{1} +} -func (m *ReplicaInstance) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaInstance) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaInstance) GetUuid() string { - if m != nil { - return m.Uuid +func (x *ReplicaInstance) GetUuid() string { + if x != nil { + return x.Uuid } return "" } -func (m *ReplicaInstance) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *ReplicaInstance) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *ReplicaInstance) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *ReplicaInstance) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *ReplicaInstance) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *ReplicaInstance) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *ReplicaInstance) GetActualSize() uint64 { - if m != nil { - return m.ActualSize +func (x *ReplicaInstance) GetActualSize() uint64 { + if x != nil { + return x.ActualSize } return 0 } type DiskCreateRequest struct { - DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - DiskPath string `protobuf:"bytes,4,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` - BlockSize int64 `protobuf:"varint,5,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *DiskCreateRequest) Reset() { *m = DiskCreateRequest{} } -func (m *DiskCreateRequest) String() string { return proto.CompactTextString(m) } -func (*DiskCreateRequest) ProtoMessage() {} -func (*DiskCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{2} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskCreateRequest.Unmarshal(m, b) -} -func (m *DiskCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskCreateRequest.Marshal(b, m, deterministic) + DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + DiskPath string `protobuf:"bytes,4,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` + BlockSize int64 `protobuf:"varint,5,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` } -func (m *DiskCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskCreateRequest.Merge(m, src) + +func (x *DiskCreateRequest) Reset() { + *x = DiskCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskCreateRequest) XXX_Size() int { - return xxx_messageInfo_DiskCreateRequest.Size(m) + +func (x *DiskCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskCreateRequest.DiscardUnknown(m) + +func (*DiskCreateRequest) ProtoMessage() {} + +func (x *DiskCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskCreateRequest proto.InternalMessageInfo +// Deprecated: Use DiskCreateRequest.ProtoReflect.Descriptor instead. +func (*DiskCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{2} +} -func (m *DiskCreateRequest) GetDiskType() DiskType { - if m != nil { - return m.DiskType +func (x *DiskCreateRequest) GetDiskType() DiskType { + if x != nil { + return x.DiskType } return DiskType_filesystem } -func (m *DiskCreateRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskCreateRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskCreateRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *DiskCreateRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *DiskCreateRequest) GetDiskPath() string { - if m != nil { - return m.DiskPath +func (x *DiskCreateRequest) GetDiskPath() string { + if x != nil { + return x.DiskPath } return "" } -func (m *DiskCreateRequest) GetBlockSize() int64 { - if m != nil { - return m.BlockSize +func (x *DiskCreateRequest) GetBlockSize() int64 { + if x != nil { + return x.BlockSize } return 0 } type DiskGetRequest struct { - DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskPath string `protobuf:"bytes,3,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskGetRequest) Reset() { *m = DiskGetRequest{} } -func (m *DiskGetRequest) String() string { return proto.CompactTextString(m) } -func (*DiskGetRequest) ProtoMessage() {} -func (*DiskGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{3} + DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskPath string `protobuf:"bytes,3,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` } -func (m *DiskGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskGetRequest.Unmarshal(m, b) -} -func (m *DiskGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskGetRequest.Marshal(b, m, deterministic) -} -func (m *DiskGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskGetRequest.Merge(m, src) +func (x *DiskGetRequest) Reset() { + *x = DiskGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskGetRequest) XXX_Size() int { - return xxx_messageInfo_DiskGetRequest.Size(m) + +func (x *DiskGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskGetRequest.DiscardUnknown(m) + +func (*DiskGetRequest) ProtoMessage() {} + +func (x *DiskGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskGetRequest proto.InternalMessageInfo +// Deprecated: Use DiskGetRequest.ProtoReflect.Descriptor instead. +func (*DiskGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{3} +} -func (m *DiskGetRequest) GetDiskType() DiskType { - if m != nil { - return m.DiskType +func (x *DiskGetRequest) GetDiskType() DiskType { + if x != nil { + return x.DiskType } return DiskType_filesystem } -func (m *DiskGetRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskGetRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskGetRequest) GetDiskPath() string { - if m != nil { - return m.DiskPath +func (x *DiskGetRequest) GetDiskPath() string { + if x != nil { + return x.DiskPath } return "" } type DiskDeleteRequest struct { - DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskDeleteRequest) Reset() { *m = DiskDeleteRequest{} } -func (m *DiskDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*DiskDeleteRequest) ProtoMessage() {} -func (*DiskDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{4} + DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` } -func (m *DiskDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskDeleteRequest.Unmarshal(m, b) -} -func (m *DiskDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskDeleteRequest.Marshal(b, m, deterministic) -} -func (m *DiskDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskDeleteRequest.Merge(m, src) +func (x *DiskDeleteRequest) Reset() { + *x = DiskDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskDeleteRequest) XXX_Size() int { - return xxx_messageInfo_DiskDeleteRequest.Size(m) + +func (x *DiskDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskDeleteRequest.DiscardUnknown(m) + +func (*DiskDeleteRequest) ProtoMessage() {} + +func (x *DiskDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskDeleteRequest proto.InternalMessageInfo +// Deprecated: Use DiskDeleteRequest.ProtoReflect.Descriptor instead. +func (*DiskDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{4} +} -func (m *DiskDeleteRequest) GetDiskType() DiskType { - if m != nil { - return m.DiskType +func (x *DiskDeleteRequest) GetDiskType() DiskType { + if x != nil { + return x.DiskType } return DiskType_filesystem } -func (m *DiskDeleteRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskDeleteRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskDeleteRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *DiskDeleteRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } type DiskReplicaInstanceListRequest struct { - DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskReplicaInstanceListRequest) Reset() { *m = DiskReplicaInstanceListRequest{} } -func (m *DiskReplicaInstanceListRequest) String() string { return proto.CompactTextString(m) } -func (*DiskReplicaInstanceListRequest) ProtoMessage() {} -func (*DiskReplicaInstanceListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{5} + DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` } -func (m *DiskReplicaInstanceListRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskReplicaInstanceListRequest.Unmarshal(m, b) -} -func (m *DiskReplicaInstanceListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskReplicaInstanceListRequest.Marshal(b, m, deterministic) -} -func (m *DiskReplicaInstanceListRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskReplicaInstanceListRequest.Merge(m, src) +func (x *DiskReplicaInstanceListRequest) Reset() { + *x = DiskReplicaInstanceListRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskReplicaInstanceListRequest) XXX_Size() int { - return xxx_messageInfo_DiskReplicaInstanceListRequest.Size(m) + +func (x *DiskReplicaInstanceListRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskReplicaInstanceListRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskReplicaInstanceListRequest.DiscardUnknown(m) + +func (*DiskReplicaInstanceListRequest) ProtoMessage() {} + +func (x *DiskReplicaInstanceListRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskReplicaInstanceListRequest proto.InternalMessageInfo +// Deprecated: Use DiskReplicaInstanceListRequest.ProtoReflect.Descriptor instead. +func (*DiskReplicaInstanceListRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{5} +} -func (m *DiskReplicaInstanceListRequest) GetDiskType() DiskType { - if m != nil { - return m.DiskType +func (x *DiskReplicaInstanceListRequest) GetDiskType() DiskType { + if x != nil { + return x.DiskType } return DiskType_filesystem } -func (m *DiskReplicaInstanceListRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskReplicaInstanceListRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } type DiskReplicaInstanceListResponse struct { - ReplicaInstances map[string]*ReplicaInstance `protobuf:"bytes,1,rep,name=replica_instances,json=replicaInstances,proto3" json:"replica_instances,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskReplicaInstanceListResponse) Reset() { *m = DiskReplicaInstanceListResponse{} } -func (m *DiskReplicaInstanceListResponse) String() string { return proto.CompactTextString(m) } -func (*DiskReplicaInstanceListResponse) ProtoMessage() {} -func (*DiskReplicaInstanceListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{6} + ReplicaInstances map[string]*ReplicaInstance `protobuf:"bytes,1,rep,name=replica_instances,json=replicaInstances,proto3" json:"replica_instances,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *DiskReplicaInstanceListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskReplicaInstanceListResponse.Unmarshal(m, b) -} -func (m *DiskReplicaInstanceListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskReplicaInstanceListResponse.Marshal(b, m, deterministic) -} -func (m *DiskReplicaInstanceListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskReplicaInstanceListResponse.Merge(m, src) +func (x *DiskReplicaInstanceListResponse) Reset() { + *x = DiskReplicaInstanceListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskReplicaInstanceListResponse) XXX_Size() int { - return xxx_messageInfo_DiskReplicaInstanceListResponse.Size(m) + +func (x *DiskReplicaInstanceListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskReplicaInstanceListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_DiskReplicaInstanceListResponse.DiscardUnknown(m) + +func (*DiskReplicaInstanceListResponse) ProtoMessage() {} + +func (x *DiskReplicaInstanceListResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskReplicaInstanceListResponse proto.InternalMessageInfo +// Deprecated: Use DiskReplicaInstanceListResponse.ProtoReflect.Descriptor instead. +func (*DiskReplicaInstanceListResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{6} +} -func (m *DiskReplicaInstanceListResponse) GetReplicaInstances() map[string]*ReplicaInstance { - if m != nil { - return m.ReplicaInstances +func (x *DiskReplicaInstanceListResponse) GetReplicaInstances() map[string]*ReplicaInstance { + if x != nil { + return x.ReplicaInstances } return nil } type DiskReplicaInstanceDeleteRequest struct { - DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - ReplciaInstanceName string `protobuf:"bytes,4,opt,name=replcia_instance_name,json=replciaInstanceName,proto3" json:"replcia_instance_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *DiskReplicaInstanceDeleteRequest) Reset() { *m = DiskReplicaInstanceDeleteRequest{} } -func (m *DiskReplicaInstanceDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*DiskReplicaInstanceDeleteRequest) ProtoMessage() {} -func (*DiskReplicaInstanceDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{7} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskReplicaInstanceDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskReplicaInstanceDeleteRequest.Unmarshal(m, b) + DiskType DiskType `protobuf:"varint,1,opt,name=disk_type,json=diskType,proto3,enum=imrpc.DiskType" json:"disk_type,omitempty"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + ReplciaInstanceName string `protobuf:"bytes,4,opt,name=replcia_instance_name,json=replciaInstanceName,proto3" json:"replcia_instance_name,omitempty"` } -func (m *DiskReplicaInstanceDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskReplicaInstanceDeleteRequest.Marshal(b, m, deterministic) -} -func (m *DiskReplicaInstanceDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskReplicaInstanceDeleteRequest.Merge(m, src) + +func (x *DiskReplicaInstanceDeleteRequest) Reset() { + *x = DiskReplicaInstanceDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskReplicaInstanceDeleteRequest) XXX_Size() int { - return xxx_messageInfo_DiskReplicaInstanceDeleteRequest.Size(m) + +func (x *DiskReplicaInstanceDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskReplicaInstanceDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskReplicaInstanceDeleteRequest.DiscardUnknown(m) + +func (*DiskReplicaInstanceDeleteRequest) ProtoMessage() {} + +func (x *DiskReplicaInstanceDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskReplicaInstanceDeleteRequest proto.InternalMessageInfo +// Deprecated: Use DiskReplicaInstanceDeleteRequest.ProtoReflect.Descriptor instead. +func (*DiskReplicaInstanceDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{7} +} -func (m *DiskReplicaInstanceDeleteRequest) GetDiskType() DiskType { - if m != nil { - return m.DiskType +func (x *DiskReplicaInstanceDeleteRequest) GetDiskType() DiskType { + if x != nil { + return x.DiskType } return DiskType_filesystem } -func (m *DiskReplicaInstanceDeleteRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskReplicaInstanceDeleteRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskReplicaInstanceDeleteRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *DiskReplicaInstanceDeleteRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *DiskReplicaInstanceDeleteRequest) GetReplciaInstanceName() string { - if m != nil { - return m.ReplciaInstanceName +func (x *DiskReplicaInstanceDeleteRequest) GetReplciaInstanceName() string { + if x != nil { + return x.ReplciaInstanceName } return "" } type DiskVersionResponse struct { - Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` - GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` - BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` - InstanceManagerDiskServiceAPIVersion int64 `protobuf:"varint,4,opt,name=instanceManagerDiskServiceAPIVersion,proto3" json:"instanceManagerDiskServiceAPIVersion,omitempty"` - InstanceManagerDiskServiceAPIMinVersion int64 `protobuf:"varint,5,opt,name=instanceManagerDiskServiceAPIMinVersion,proto3" json:"instanceManagerDiskServiceAPIMinVersion,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *DiskVersionResponse) Reset() { *m = DiskVersionResponse{} } -func (m *DiskVersionResponse) String() string { return proto.CompactTextString(m) } -func (*DiskVersionResponse) ProtoMessage() {} -func (*DiskVersionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_a4e7e3a42cafcff1, []int{8} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskVersionResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskVersionResponse.Unmarshal(m, b) + Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` + GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` + BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` + InstanceManagerDiskServiceAPIVersion int64 `protobuf:"varint,4,opt,name=instanceManagerDiskServiceAPIVersion,proto3" json:"instanceManagerDiskServiceAPIVersion,omitempty"` + InstanceManagerDiskServiceAPIMinVersion int64 `protobuf:"varint,5,opt,name=instanceManagerDiskServiceAPIMinVersion,proto3" json:"instanceManagerDiskServiceAPIMinVersion,omitempty"` } -func (m *DiskVersionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskVersionResponse.Marshal(b, m, deterministic) -} -func (m *DiskVersionResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskVersionResponse.Merge(m, src) + +func (x *DiskVersionResponse) Reset() { + *x = DiskVersionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskVersionResponse) XXX_Size() int { - return xxx_messageInfo_DiskVersionResponse.Size(m) + +func (x *DiskVersionResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskVersionResponse) XXX_DiscardUnknown() { - xxx_messageInfo_DiskVersionResponse.DiscardUnknown(m) + +func (*DiskVersionResponse) ProtoMessage() {} + +func (x *DiskVersionResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskVersionResponse proto.InternalMessageInfo +// Deprecated: Use DiskVersionResponse.ProtoReflect.Descriptor instead. +func (*DiskVersionResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP(), []int{8} +} -func (m *DiskVersionResponse) GetVersion() string { - if m != nil { - return m.Version +func (x *DiskVersionResponse) GetVersion() string { + if x != nil { + return x.Version } return "" } -func (m *DiskVersionResponse) GetGitCommit() string { - if m != nil { - return m.GitCommit +func (x *DiskVersionResponse) GetGitCommit() string { + if x != nil { + return x.GitCommit } return "" } -func (m *DiskVersionResponse) GetBuildDate() string { - if m != nil { - return m.BuildDate +func (x *DiskVersionResponse) GetBuildDate() string { + if x != nil { + return x.BuildDate } return "" } -func (m *DiskVersionResponse) GetInstanceManagerDiskServiceAPIVersion() int64 { - if m != nil { - return m.InstanceManagerDiskServiceAPIVersion +func (x *DiskVersionResponse) GetInstanceManagerDiskServiceAPIVersion() int64 { + if x != nil { + return x.InstanceManagerDiskServiceAPIVersion } return 0 } -func (m *DiskVersionResponse) GetInstanceManagerDiskServiceAPIMinVersion() int64 { - if m != nil { - return m.InstanceManagerDiskServiceAPIMinVersion +func (x *DiskVersionResponse) GetInstanceManagerDiskServiceAPIMinVersion() int64 { + if x != nil { + return x.InstanceManagerDiskServiceAPIMinVersion } return 0 } -func init() { - proto.RegisterEnum("imrpc.DiskType", DiskType_name, DiskType_value) - proto.RegisterType((*Disk)(nil), "imrpc.Disk") - proto.RegisterType((*ReplicaInstance)(nil), "imrpc.ReplicaInstance") - proto.RegisterType((*DiskCreateRequest)(nil), "imrpc.DiskCreateRequest") - proto.RegisterType((*DiskGetRequest)(nil), "imrpc.DiskGetRequest") - proto.RegisterType((*DiskDeleteRequest)(nil), "imrpc.DiskDeleteRequest") - proto.RegisterType((*DiskReplicaInstanceListRequest)(nil), "imrpc.DiskReplicaInstanceListRequest") - proto.RegisterType((*DiskReplicaInstanceListResponse)(nil), "imrpc.DiskReplicaInstanceListResponse") - proto.RegisterMapType((map[string]*ReplicaInstance)(nil), "imrpc.DiskReplicaInstanceListResponse.ReplicaInstancesEntry") - proto.RegisterType((*DiskReplicaInstanceDeleteRequest)(nil), "imrpc.DiskReplicaInstanceDeleteRequest") - proto.RegisterType((*DiskVersionResponse)(nil), "imrpc.DiskVersionResponse") -} - -func init() { - proto.RegisterFile("github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto", fileDescriptor_a4e7e3a42cafcff1) -} - -var fileDescriptor_a4e7e3a42cafcff1 = []byte{ - // 789 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x55, 0xdb, 0x6e, 0xd3, 0x40, - 0x10, 0xc5, 0xb9, 0xb4, 0xc9, 0x04, 0xa5, 0xe9, 0x56, 0x2d, 0x26, 0xa5, 0x34, 0x58, 0x94, 0x56, - 0xa8, 0x75, 0xa4, 0xf4, 0x05, 0x21, 0x84, 0xa0, 0x17, 0xa1, 0x4a, 0x14, 0x55, 0x2e, 0x20, 0x24, - 0x90, 0x2a, 0xc7, 0xd9, 0x3a, 0xab, 0xf8, 0x86, 0x77, 0x5d, 0x91, 0xf2, 0x1b, 0xbc, 0xf0, 0x19, - 0x3c, 0xf1, 0x80, 0xc4, 0xff, 0xf0, 0x17, 0x68, 0x2f, 0xae, 0x9d, 0xd0, 0x94, 0xbc, 0x14, 0xde, - 0xd6, 0x67, 0xce, 0xcc, 0x9c, 0x9d, 0x99, 0x1d, 0xc3, 0x8e, 0x4b, 0x58, 0x3f, 0xe9, 0x9a, 0x4e, - 0xe8, 0xb7, 0xbd, 0x30, 0x70, 0xfb, 0x61, 0x1c, 0x5c, 0x1c, 0xb6, 0x48, 0x40, 0x99, 0x1d, 0x38, - 0x78, 0xcb, 0xb7, 0x03, 0xdb, 0xc5, 0x71, 0x3b, 0x1a, 0xb8, 0x6d, 0xe2, 0xc7, 0x91, 0xd3, 0xee, - 0x11, 0x3a, 0x30, 0xa3, 0x38, 0x64, 0x21, 0x2a, 0x0b, 0xa4, 0xb9, 0xec, 0x86, 0xa1, 0xeb, 0xe1, - 0xb6, 0x00, 0xbb, 0xc9, 0x69, 0x1b, 0xfb, 0x11, 0x1b, 0x4a, 0x8e, 0xf1, 0xa5, 0x00, 0xa5, 0x3d, - 0x42, 0x07, 0xa8, 0x0e, 0x05, 0xd2, 0xd3, 0xb5, 0x96, 0xb6, 0x51, 0xb5, 0x0a, 0xa4, 0x87, 0x10, - 0x94, 0x92, 0x84, 0xf4, 0xf4, 0x82, 0x40, 0xc4, 0x99, 0x63, 0x91, 0xcd, 0xfa, 0x7a, 0x51, 0x62, - 0xfc, 0xcc, 0x31, 0x36, 0x8c, 0xb0, 0x5e, 0x92, 0x18, 0x3f, 0xa3, 0x15, 0x00, 0x16, 0x32, 0xdb, - 0x3b, 0xa1, 0xe4, 0x1c, 0xeb, 0xe5, 0x96, 0xb6, 0x51, 0xb4, 0xaa, 0x02, 0x39, 0x26, 0xe7, 0x18, - 0x2d, 0x43, 0xf5, 0x34, 0xc6, 0x58, 0x5a, 0x67, 0x84, 0xb5, 0xc2, 0x01, 0x61, 0xbc, 0x07, 0x37, - 0xa5, 0x6f, 0xd7, 0x0b, 0x9d, 0x01, 0xd5, 0x67, 0x85, 0xbd, 0x26, 0xb0, 0x1d, 0x01, 0xa1, 0x55, - 0xa8, 0x09, 0x7f, 0xc5, 0xa8, 0x08, 0x06, 0x70, 0x48, 0x11, 0x56, 0x00, 0x84, 0x4d, 0x66, 0xa8, - 0xca, 0xfc, 0x02, 0x49, 0x53, 0x38, 0x5e, 0x42, 0x19, 0x8e, 0x25, 0x01, 0x64, 0x0a, 0x85, 0x71, - 0x8a, 0xf1, 0x4d, 0x83, 0x39, 0x0b, 0x47, 0x1e, 0x71, 0xec, 0x03, 0x55, 0x6b, 0x7e, 0xd3, 0xc0, - 0xf6, 0xb1, 0xaa, 0x91, 0x38, 0x5f, 0x5a, 0xa5, 0x65, 0xa8, 0xf2, 0x26, 0x9c, 0x08, 0xb2, 0x2c, - 0x55, 0x85, 0x03, 0xaf, 0xb8, 0x43, 0x6a, 0x14, 0x5e, 0xa5, 0xcc, 0xf8, 0x46, 0x79, 0xd2, 0x08, - 0x3b, 0x59, 0xd9, 0x4a, 0x56, 0x85, 0x03, 0x42, 0xf5, 0x2a, 0xd4, 0x6c, 0x87, 0x25, 0x69, 0x55, - 0x67, 0x84, 0x19, 0x24, 0x24, 0x34, 0x7f, 0xd7, 0x60, 0x9e, 0xb7, 0x72, 0x37, 0xc6, 0x36, 0xc3, - 0x16, 0xfe, 0x98, 0x60, 0xca, 0xd0, 0xa6, 0x4a, 0x28, 0x9a, 0xc4, 0xa5, 0xd7, 0x3b, 0x73, 0xa6, - 0x18, 0x0c, 0x93, 0x93, 0x5f, 0x0f, 0x23, 0x2c, 0x15, 0xf0, 0xd3, 0xa8, 0xf6, 0xc2, 0x55, 0xda, - 0x8b, 0x7f, 0x6a, 0x17, 0x46, 0x31, 0x20, 0xb9, 0x8b, 0x1d, 0xf1, 0x21, 0x19, 0x6d, 0x48, 0x79, - 0xac, 0x21, 0xc6, 0x27, 0xa8, 0x73, 0x2d, 0x2f, 0x30, 0xbb, 0x46, 0xd5, 0xb9, 0xc9, 0xbd, 0x10, - 0x66, 0x7c, 0x96, 0x25, 0xdb, 0xc3, 0x1e, 0xfe, 0xe7, 0x25, 0x33, 0x06, 0x70, 0x97, 0xc7, 0x1b, - 0x9b, 0xb3, 0x97, 0x84, 0x5e, 0x43, 0x19, 0x8c, 0x5f, 0x1a, 0xac, 0x4e, 0xcc, 0x46, 0xa3, 0x30, - 0xa0, 0x18, 0x11, 0x98, 0x8f, 0xa5, 0xf9, 0x24, 0xdd, 0x30, 0x54, 0xd7, 0x5a, 0xc5, 0x8d, 0x5a, - 0xe7, 0x49, 0x2e, 0xed, 0x15, 0x21, 0xcc, 0x31, 0x1b, 0xdd, 0x0f, 0x58, 0x3c, 0xb4, 0x1a, 0xf1, - 0x18, 0xdc, 0x7c, 0x0f, 0x8b, 0x97, 0x52, 0x51, 0x03, 0x8a, 0x03, 0x3c, 0x54, 0x8f, 0x8c, 0x1f, - 0xd1, 0x26, 0x94, 0xcf, 0x6c, 0x2f, 0x91, 0x57, 0xaa, 0x75, 0x96, 0x94, 0x92, 0x31, 0x77, 0x4b, - 0x92, 0x1e, 0x17, 0x1e, 0x69, 0xc6, 0x4f, 0x0d, 0x5a, 0x97, 0x08, 0xfd, 0x2f, 0x5d, 0x46, 0x1d, - 0x58, 0xe4, 0xb7, 0x77, 0x48, 0x56, 0x54, 0x19, 0x45, 0x3e, 0x92, 0x05, 0x65, 0x4c, 0x45, 0x8a, - 0x66, 0x7d, 0x2d, 0xc0, 0x02, 0x17, 0xf1, 0x16, 0xc7, 0x94, 0x84, 0xc1, 0x45, 0x83, 0x74, 0x98, - 0x3d, 0x93, 0x90, 0x2a, 0x50, 0xfa, 0x89, 0xee, 0x40, 0xd5, 0x25, 0x6c, 0x37, 0xf4, 0x7d, 0xc2, - 0x94, 0xbe, 0x0c, 0xe0, 0xd6, 0x6e, 0x42, 0xbc, 0xde, 0x9e, 0xcd, 0xd2, 0x95, 0x94, 0x01, 0xc8, - 0x82, 0xfb, 0xa9, 0xb2, 0x43, 0xf9, 0x3f, 0xe1, 0xb9, 0x8f, 0x71, 0x7c, 0x46, 0x1c, 0xfc, 0xfc, - 0xe8, 0x40, 0xa9, 0x10, 0x82, 0x8b, 0xd6, 0x54, 0x5c, 0xf4, 0x0e, 0xd6, 0xaf, 0xe4, 0x1d, 0x92, - 0x20, 0x0d, 0x2b, 0xd7, 0xc1, 0xb4, 0xf4, 0x87, 0x6b, 0x50, 0x49, 0xfb, 0x83, 0xea, 0x00, 0xa7, - 0xc4, 0xc3, 0x74, 0x48, 0x19, 0xf6, 0x1b, 0x37, 0x50, 0x15, 0xca, 0x62, 0xab, 0x34, 0xb4, 0xce, - 0x8f, 0x22, 0xd4, 0x72, 0x31, 0xd0, 0x36, 0x40, 0xb6, 0x1c, 0x91, 0x9e, 0xeb, 0xf4, 0xc8, 0xbe, - 0x6c, 0xd6, 0x72, 0x16, 0xf4, 0x54, 0x3a, 0xc9, 0xc1, 0x19, 0x71, 0x1a, 0x99, 0xa5, 0xe6, 0x92, - 0x29, 0xff, 0xb1, 0x66, 0xfa, 0x8f, 0x35, 0xf7, 0xf9, 0x3f, 0x16, 0x6d, 0xc1, 0xac, 0x5a, 0x6c, - 0x68, 0x31, 0xe7, 0x9c, 0x2d, 0xba, 0xd1, 0x74, 0x7d, 0xb8, 0x35, 0xe1, 0x7d, 0xa1, 0xb5, 0xbf, - 0xbd, 0x3f, 0x19, 0xee, 0xc1, 0x74, 0xcf, 0x14, 0x7d, 0x80, 0xdb, 0x13, 0x1f, 0x08, 0x5a, 0x9f, - 0x1c, 0x64, 0xba, 0x6b, 0x3f, 0x03, 0x50, 0xdd, 0xe2, 0x37, 0x9f, 0xc0, 0x6a, 0x36, 0x73, 0x69, - 0xc6, 0x06, 0xbd, 0x3b, 0x23, 0xb8, 0xdb, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x56, 0x95, 0x88, - 0x50, 0x07, 0x09, 0x00, 0x00, +var File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDesc = []byte{ + 0x0a, 0x42, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x64, 0x69, 0x73, 0x6b, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, + 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x94, 0x02, 0x0a, 0x04, 0x44, 0x69, 0x73, + 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x66, 0x72, 0x65, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x08, 0x66, 0x72, 0x65, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, + 0x61, 0x6c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x66, 0x72, 0x65, 0x65, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x66, 0x72, 0x65, 0x65, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x22, + 0xb1, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, + 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, + 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, + 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x73, 0x69, + 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x70, 0x65, 0x63, 0x53, 0x69, + 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x53, + 0x69, 0x7a, 0x65, 0x22, 0xb7, 0x01, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x69, 0x73, + 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, + 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x50, 0x61, 0x74, 0x68, 0x12, 0x1d, + 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x78, 0x0a, + 0x0e, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x54, + 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, + 0x73, 0x6b, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x69, 0x73, 0x6b, 0x50, 0x61, 0x74, 0x68, 0x22, 0x7b, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x6b, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, + 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x0f, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, + 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, + 0x75, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x6b, 0x0a, 0x1e, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0xe9, 0x01, 0x0a, 0x1f, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x3c, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x10, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x1a, 0x5b, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xbe, 0x01, + 0x0a, 0x20, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, + 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, + 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x72, 0x65, + 0x70, 0x6c, 0x63, 0x69, 0x61, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x63, + 0x69, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x99, + 0x02, 0x0a, 0x13, 0x44, 0x69, 0x73, 0x6b, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x52, 0x0a, 0x24, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x44, + 0x69, 0x73, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x24, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x44, 0x69, 0x73, 0x6b, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x58, 0x0a, 0x27, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x50, + 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x27, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x50, 0x49, + 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2a, 0x25, 0x0a, 0x08, 0x44, 0x69, + 0x73, 0x6b, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x0a, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x79, + 0x73, 0x74, 0x65, 0x6d, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x10, + 0x01, 0x32, 0xbb, 0x03, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x12, 0x33, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, + 0x18, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0b, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x3e, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x6b, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, + 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x2d, 0x0a, 0x07, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, + 0x74, 0x12, 0x15, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0b, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, + 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x68, 0x0a, 0x17, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x25, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x5c, 0x0a, 0x19, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x27, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x40, 0x0a, + 0x0a, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x1a, 0x1a, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, + 0x39, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, + 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, +} + +var ( + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescData = file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDescData +} + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes = make([]protoimpl.MessageInfo, 10) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_goTypes = []interface{}{ + (DiskType)(0), // 0: imrpc.DiskType + (*Disk)(nil), // 1: imrpc.Disk + (*ReplicaInstance)(nil), // 2: imrpc.ReplicaInstance + (*DiskCreateRequest)(nil), // 3: imrpc.DiskCreateRequest + (*DiskGetRequest)(nil), // 4: imrpc.DiskGetRequest + (*DiskDeleteRequest)(nil), // 5: imrpc.DiskDeleteRequest + (*DiskReplicaInstanceListRequest)(nil), // 6: imrpc.DiskReplicaInstanceListRequest + (*DiskReplicaInstanceListResponse)(nil), // 7: imrpc.DiskReplicaInstanceListResponse + (*DiskReplicaInstanceDeleteRequest)(nil), // 8: imrpc.DiskReplicaInstanceDeleteRequest + (*DiskVersionResponse)(nil), // 9: imrpc.DiskVersionResponse + nil, // 10: imrpc.DiskReplicaInstanceListResponse.ReplicaInstancesEntry + (*emptypb.Empty)(nil), // 11: google.protobuf.Empty +} +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_depIdxs = []int32{ + 0, // 0: imrpc.DiskCreateRequest.disk_type:type_name -> imrpc.DiskType + 0, // 1: imrpc.DiskGetRequest.disk_type:type_name -> imrpc.DiskType + 0, // 2: imrpc.DiskDeleteRequest.disk_type:type_name -> imrpc.DiskType + 0, // 3: imrpc.DiskReplicaInstanceListRequest.disk_type:type_name -> imrpc.DiskType + 10, // 4: imrpc.DiskReplicaInstanceListResponse.replica_instances:type_name -> imrpc.DiskReplicaInstanceListResponse.ReplicaInstancesEntry + 0, // 5: imrpc.DiskReplicaInstanceDeleteRequest.disk_type:type_name -> imrpc.DiskType + 2, // 6: imrpc.DiskReplicaInstanceListResponse.ReplicaInstancesEntry.value:type_name -> imrpc.ReplicaInstance + 3, // 7: imrpc.DiskService.DiskCreate:input_type -> imrpc.DiskCreateRequest + 5, // 8: imrpc.DiskService.DiskDelete:input_type -> imrpc.DiskDeleteRequest + 4, // 9: imrpc.DiskService.DiskGet:input_type -> imrpc.DiskGetRequest + 6, // 10: imrpc.DiskService.DiskReplicaInstanceList:input_type -> imrpc.DiskReplicaInstanceListRequest + 8, // 11: imrpc.DiskService.DiskReplicaInstanceDelete:input_type -> imrpc.DiskReplicaInstanceDeleteRequest + 11, // 12: imrpc.DiskService.VersionGet:input_type -> google.protobuf.Empty + 1, // 13: imrpc.DiskService.DiskCreate:output_type -> imrpc.Disk + 11, // 14: imrpc.DiskService.DiskDelete:output_type -> google.protobuf.Empty + 1, // 15: imrpc.DiskService.DiskGet:output_type -> imrpc.Disk + 7, // 16: imrpc.DiskService.DiskReplicaInstanceList:output_type -> imrpc.DiskReplicaInstanceListResponse + 11, // 17: imrpc.DiskService.DiskReplicaInstanceDelete:output_type -> google.protobuf.Empty + 9, // 18: imrpc.DiskService.VersionGet:output_type -> imrpc.DiskVersionResponse + 13, // [13:19] is the sub-list for method output_type + 7, // [7:13] is the sub-list for method input_type + 7, // [7:7] is the sub-list for extension type_name + 7, // [7:7] is the sub-list for extension extendee + 0, // [0:7] is the sub-list for field type_name +} + +func init() { file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_init() } +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_init() { + if File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Disk); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaInstance); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskReplicaInstanceListRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskReplicaInstanceListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskReplicaInstanceDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskVersionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDesc, + NumEnums: 1, + NumMessages: 10, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_depIdxs, + EnumInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_enumTypes, + MessageInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_msgTypes, + }.Build() + File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto = out.File + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_rawDesc = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_goTypes = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_disk_proto_depIdxs = nil } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConn +var _ grpc.ClientConnInterface // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +const _ = grpc.SupportPackageIsVersion6 // DiskServiceClient is the client API for DiskService service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type DiskServiceClient interface { DiskCreate(ctx context.Context, in *DiskCreateRequest, opts ...grpc.CallOption) (*Disk, error) - DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) + DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) DiskGet(ctx context.Context, in *DiskGetRequest, opts ...grpc.CallOption) (*Disk, error) DiskReplicaInstanceList(ctx context.Context, in *DiskReplicaInstanceListRequest, opts ...grpc.CallOption) (*DiskReplicaInstanceListResponse, error) - DiskReplicaInstanceDelete(ctx context.Context, in *DiskReplicaInstanceDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) - VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DiskVersionResponse, error) + DiskReplicaInstanceDelete(ctx context.Context, in *DiskReplicaInstanceDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*DiskVersionResponse, error) } type diskServiceClient struct { - cc *grpc.ClientConn + cc grpc.ClientConnInterface } -func NewDiskServiceClient(cc *grpc.ClientConn) DiskServiceClient { +func NewDiskServiceClient(cc grpc.ClientConnInterface) DiskServiceClient { return &diskServiceClient{cc} } @@ -750,8 +1116,8 @@ func (c *diskServiceClient) DiskCreate(ctx context.Context, in *DiskCreateReques return out, nil } -func (c *diskServiceClient) DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *diskServiceClient) DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.DiskService/DiskDelete", in, out, opts...) if err != nil { return nil, err @@ -777,8 +1143,8 @@ func (c *diskServiceClient) DiskReplicaInstanceList(ctx context.Context, in *Dis return out, nil } -func (c *diskServiceClient) DiskReplicaInstanceDelete(ctx context.Context, in *DiskReplicaInstanceDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *diskServiceClient) DiskReplicaInstanceDelete(ctx context.Context, in *DiskReplicaInstanceDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.DiskService/DiskReplicaInstanceDelete", in, out, opts...) if err != nil { return nil, err @@ -786,7 +1152,7 @@ func (c *diskServiceClient) DiskReplicaInstanceDelete(ctx context.Context, in *D return out, nil } -func (c *diskServiceClient) VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*DiskVersionResponse, error) { +func (c *diskServiceClient) VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*DiskVersionResponse, error) { out := new(DiskVersionResponse) err := c.cc.Invoke(ctx, "/imrpc.DiskService/VersionGet", in, out, opts...) if err != nil { @@ -798,33 +1164,33 @@ func (c *diskServiceClient) VersionGet(ctx context.Context, in *empty.Empty, opt // DiskServiceServer is the server API for DiskService service. type DiskServiceServer interface { DiskCreate(context.Context, *DiskCreateRequest) (*Disk, error) - DiskDelete(context.Context, *DiskDeleteRequest) (*empty.Empty, error) + DiskDelete(context.Context, *DiskDeleteRequest) (*emptypb.Empty, error) DiskGet(context.Context, *DiskGetRequest) (*Disk, error) DiskReplicaInstanceList(context.Context, *DiskReplicaInstanceListRequest) (*DiskReplicaInstanceListResponse, error) - DiskReplicaInstanceDelete(context.Context, *DiskReplicaInstanceDeleteRequest) (*empty.Empty, error) - VersionGet(context.Context, *empty.Empty) (*DiskVersionResponse, error) + DiskReplicaInstanceDelete(context.Context, *DiskReplicaInstanceDeleteRequest) (*emptypb.Empty, error) + VersionGet(context.Context, *emptypb.Empty) (*DiskVersionResponse, error) } // UnimplementedDiskServiceServer can be embedded to have forward compatible implementations. type UnimplementedDiskServiceServer struct { } -func (*UnimplementedDiskServiceServer) DiskCreate(ctx context.Context, req *DiskCreateRequest) (*Disk, error) { +func (*UnimplementedDiskServiceServer) DiskCreate(context.Context, *DiskCreateRequest) (*Disk, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskCreate not implemented") } -func (*UnimplementedDiskServiceServer) DiskDelete(ctx context.Context, req *DiskDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedDiskServiceServer) DiskDelete(context.Context, *DiskDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskDelete not implemented") } -func (*UnimplementedDiskServiceServer) DiskGet(ctx context.Context, req *DiskGetRequest) (*Disk, error) { +func (*UnimplementedDiskServiceServer) DiskGet(context.Context, *DiskGetRequest) (*Disk, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskGet not implemented") } -func (*UnimplementedDiskServiceServer) DiskReplicaInstanceList(ctx context.Context, req *DiskReplicaInstanceListRequest) (*DiskReplicaInstanceListResponse, error) { +func (*UnimplementedDiskServiceServer) DiskReplicaInstanceList(context.Context, *DiskReplicaInstanceListRequest) (*DiskReplicaInstanceListResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskReplicaInstanceList not implemented") } -func (*UnimplementedDiskServiceServer) DiskReplicaInstanceDelete(ctx context.Context, req *DiskReplicaInstanceDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedDiskServiceServer) DiskReplicaInstanceDelete(context.Context, *DiskReplicaInstanceDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskReplicaInstanceDelete not implemented") } -func (*UnimplementedDiskServiceServer) VersionGet(ctx context.Context, req *empty.Empty) (*DiskVersionResponse, error) { +func (*UnimplementedDiskServiceServer) VersionGet(context.Context, *emptypb.Empty) (*DiskVersionResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VersionGet not implemented") } @@ -923,7 +1289,7 @@ func _DiskService_DiskReplicaInstanceDelete_Handler(srv interface{}, ctx context } func _DiskService_VersionGet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -935,7 +1301,7 @@ func _DiskService_VersionGet_Handler(srv interface{}, ctx context.Context, dec f FullMethod: "/imrpc.DiskService/VersionGet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(DiskServiceServer).VersionGet(ctx, req.(*empty.Empty)) + return srv.(DiskServiceServer).VersionGet(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto index f0b54da6ce..5d19855689 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/disk.proto @@ -2,6 +2,8 @@ syntax="proto3"; package imrpc; +option go_package = "github.com/longhorn/longhorn-instance-manager/pkg/imrpc"; + import "google/protobuf/empty.proto"; service DiskService { @@ -92,4 +94,4 @@ message DiskVersionResponse { int64 instanceManagerDiskServiceAPIVersion = 4; int64 instanceManagerDiskServiceAPIMinVersion = 5; -} \ No newline at end of file +} diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.pb.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.pb.go index 2d17780d72..93c9543041 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.pb.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.pb.go @@ -1,697 +1,1076 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 // source: github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto package imrpc import ( context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - empty "github.com/golang/protobuf/ptypes/empty" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type ProcessSpec struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Binary string `protobuf:"bytes,2,opt,name=binary,proto3" json:"binary,omitempty"` - Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` - PortCount int32 `protobuf:"varint,4,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` - PortArgs []string `protobuf:"bytes,5,rep,name=port_args,json=portArgs,proto3" json:"port_args,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ProcessSpec) Reset() { *m = ProcessSpec{} } -func (m *ProcessSpec) String() string { return proto.CompactTextString(m) } -func (*ProcessSpec) ProtoMessage() {} -func (*ProcessSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{0} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessSpec.Unmarshal(m, b) -} -func (m *ProcessSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessSpec.Marshal(b, m, deterministic) + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Binary string `protobuf:"bytes,2,opt,name=binary,proto3" json:"binary,omitempty"` + Args []string `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` + PortCount int32 `protobuf:"varint,4,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` + PortArgs []string `protobuf:"bytes,5,rep,name=port_args,json=portArgs,proto3" json:"port_args,omitempty"` } -func (m *ProcessSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessSpec.Merge(m, src) + +func (x *ProcessSpec) Reset() { + *x = ProcessSpec{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessSpec) XXX_Size() int { - return xxx_messageInfo_ProcessSpec.Size(m) + +func (x *ProcessSpec) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessSpec) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessSpec.DiscardUnknown(m) + +func (*ProcessSpec) ProtoMessage() {} + +func (x *ProcessSpec) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessSpec proto.InternalMessageInfo +// Deprecated: Use ProcessSpec.ProtoReflect.Descriptor instead. +func (*ProcessSpec) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{0} +} -func (m *ProcessSpec) GetName() string { - if m != nil { - return m.Name +func (x *ProcessSpec) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ProcessSpec) GetBinary() string { - if m != nil { - return m.Binary +func (x *ProcessSpec) GetBinary() string { + if x != nil { + return x.Binary } return "" } -func (m *ProcessSpec) GetArgs() []string { - if m != nil { - return m.Args +func (x *ProcessSpec) GetArgs() []string { + if x != nil { + return x.Args } return nil } -func (m *ProcessSpec) GetPortCount() int32 { - if m != nil { - return m.PortCount +func (x *ProcessSpec) GetPortCount() int32 { + if x != nil { + return x.PortCount } return 0 } -func (m *ProcessSpec) GetPortArgs() []string { - if m != nil { - return m.PortArgs +func (x *ProcessSpec) GetPortArgs() []string { + if x != nil { + return x.PortArgs } return nil } type ProcessStatus struct { - State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"` - ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` - PortStart int32 `protobuf:"varint,3,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` - PortEnd int32 `protobuf:"varint,4,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ProcessStatus) Reset() { *m = ProcessStatus{} } -func (m *ProcessStatus) String() string { return proto.CompactTextString(m) } -func (*ProcessStatus) ProtoMessage() {} -func (*ProcessStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{1} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessStatus.Unmarshal(m, b) -} -func (m *ProcessStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessStatus.Marshal(b, m, deterministic) + State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"` + ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` + PortStart int32 `protobuf:"varint,3,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` + PortEnd int32 `protobuf:"varint,4,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` } -func (m *ProcessStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessStatus.Merge(m, src) + +func (x *ProcessStatus) Reset() { + *x = ProcessStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessStatus) XXX_Size() int { - return xxx_messageInfo_ProcessStatus.Size(m) + +func (x *ProcessStatus) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessStatus) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessStatus.DiscardUnknown(m) + +func (*ProcessStatus) ProtoMessage() {} + +func (x *ProcessStatus) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessStatus proto.InternalMessageInfo +// Deprecated: Use ProcessStatus.ProtoReflect.Descriptor instead. +func (*ProcessStatus) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{1} +} -func (m *ProcessStatus) GetState() string { - if m != nil { - return m.State +func (x *ProcessStatus) GetState() string { + if x != nil { + return x.State } return "" } -func (m *ProcessStatus) GetErrorMsg() string { - if m != nil { - return m.ErrorMsg +func (x *ProcessStatus) GetErrorMsg() string { + if x != nil { + return x.ErrorMsg } return "" } -func (m *ProcessStatus) GetPortStart() int32 { - if m != nil { - return m.PortStart +func (x *ProcessStatus) GetPortStart() int32 { + if x != nil { + return x.PortStart } return 0 } -func (m *ProcessStatus) GetPortEnd() int32 { - if m != nil { - return m.PortEnd +func (x *ProcessStatus) GetPortEnd() int32 { + if x != nil { + return x.PortEnd } return 0 } type ProcessCreateRequest struct { - Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessCreateRequest) Reset() { *m = ProcessCreateRequest{} } -func (m *ProcessCreateRequest) String() string { return proto.CompactTextString(m) } -func (*ProcessCreateRequest) ProtoMessage() {} -func (*ProcessCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{2} + Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` } -func (m *ProcessCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessCreateRequest.Unmarshal(m, b) -} -func (m *ProcessCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessCreateRequest.Marshal(b, m, deterministic) -} -func (m *ProcessCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessCreateRequest.Merge(m, src) +func (x *ProcessCreateRequest) Reset() { + *x = ProcessCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessCreateRequest) XXX_Size() int { - return xxx_messageInfo_ProcessCreateRequest.Size(m) + +func (x *ProcessCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessCreateRequest.DiscardUnknown(m) + +func (*ProcessCreateRequest) ProtoMessage() {} + +func (x *ProcessCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessCreateRequest proto.InternalMessageInfo +// Deprecated: Use ProcessCreateRequest.ProtoReflect.Descriptor instead. +func (*ProcessCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{2} +} -func (m *ProcessCreateRequest) GetSpec() *ProcessSpec { - if m != nil { - return m.Spec +func (x *ProcessCreateRequest) GetSpec() *ProcessSpec { + if x != nil { + return x.Spec } return nil } type ProcessDeleteRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessDeleteRequest) Reset() { *m = ProcessDeleteRequest{} } -func (m *ProcessDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*ProcessDeleteRequest) ProtoMessage() {} -func (*ProcessDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{3} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *ProcessDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessDeleteRequest.Unmarshal(m, b) -} -func (m *ProcessDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessDeleteRequest.Marshal(b, m, deterministic) -} -func (m *ProcessDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessDeleteRequest.Merge(m, src) +func (x *ProcessDeleteRequest) Reset() { + *x = ProcessDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessDeleteRequest) XXX_Size() int { - return xxx_messageInfo_ProcessDeleteRequest.Size(m) + +func (x *ProcessDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessDeleteRequest.DiscardUnknown(m) + +func (*ProcessDeleteRequest) ProtoMessage() {} + +func (x *ProcessDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessDeleteRequest proto.InternalMessageInfo +// Deprecated: Use ProcessDeleteRequest.ProtoReflect.Descriptor instead. +func (*ProcessDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{3} +} -func (m *ProcessDeleteRequest) GetName() string { - if m != nil { - return m.Name +func (x *ProcessDeleteRequest) GetName() string { + if x != nil { + return x.Name } return "" } type ProcessGetRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessGetRequest) Reset() { *m = ProcessGetRequest{} } -func (m *ProcessGetRequest) String() string { return proto.CompactTextString(m) } -func (*ProcessGetRequest) ProtoMessage() {} -func (*ProcessGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{4} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *ProcessGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessGetRequest.Unmarshal(m, b) -} -func (m *ProcessGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessGetRequest.Marshal(b, m, deterministic) -} -func (m *ProcessGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessGetRequest.Merge(m, src) +func (x *ProcessGetRequest) Reset() { + *x = ProcessGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessGetRequest) XXX_Size() int { - return xxx_messageInfo_ProcessGetRequest.Size(m) + +func (x *ProcessGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessGetRequest.DiscardUnknown(m) + +func (*ProcessGetRequest) ProtoMessage() {} + +func (x *ProcessGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessGetRequest proto.InternalMessageInfo +// Deprecated: Use ProcessGetRequest.ProtoReflect.Descriptor instead. +func (*ProcessGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{4} +} -func (m *ProcessGetRequest) GetName() string { - if m != nil { - return m.Name +func (x *ProcessGetRequest) GetName() string { + if x != nil { + return x.Name } return "" } type ProcessResponse struct { - Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - Status *ProcessStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - Deleted bool `protobuf:"varint,3,opt,name=deleted,proto3" json:"deleted,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessResponse) Reset() { *m = ProcessResponse{} } -func (m *ProcessResponse) String() string { return proto.CompactTextString(m) } -func (*ProcessResponse) ProtoMessage() {} -func (*ProcessResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{5} + Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` + Status *ProcessStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` + Deleted bool `protobuf:"varint,3,opt,name=deleted,proto3" json:"deleted,omitempty"` } -func (m *ProcessResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessResponse.Unmarshal(m, b) -} -func (m *ProcessResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessResponse.Marshal(b, m, deterministic) -} -func (m *ProcessResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessResponse.Merge(m, src) +func (x *ProcessResponse) Reset() { + *x = ProcessResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessResponse) XXX_Size() int { - return xxx_messageInfo_ProcessResponse.Size(m) + +func (x *ProcessResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessResponse.DiscardUnknown(m) + +func (*ProcessResponse) ProtoMessage() {} + +func (x *ProcessResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessResponse proto.InternalMessageInfo +// Deprecated: Use ProcessResponse.ProtoReflect.Descriptor instead. +func (*ProcessResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{5} +} -func (m *ProcessResponse) GetSpec() *ProcessSpec { - if m != nil { - return m.Spec +func (x *ProcessResponse) GetSpec() *ProcessSpec { + if x != nil { + return x.Spec } return nil } -func (m *ProcessResponse) GetStatus() *ProcessStatus { - if m != nil { - return m.Status +func (x *ProcessResponse) GetStatus() *ProcessStatus { + if x != nil { + return x.Status } return nil } -func (m *ProcessResponse) GetDeleted() bool { - if m != nil { - return m.Deleted +func (x *ProcessResponse) GetDeleted() bool { + if x != nil { + return x.Deleted } return false } type ProcessListRequest struct { - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields } -func (m *ProcessListRequest) Reset() { *m = ProcessListRequest{} } -func (m *ProcessListRequest) String() string { return proto.CompactTextString(m) } -func (*ProcessListRequest) ProtoMessage() {} -func (*ProcessListRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{6} +func (x *ProcessListRequest) Reset() { + *x = ProcessListRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessListRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessListRequest.Unmarshal(m, b) -} -func (m *ProcessListRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessListRequest.Marshal(b, m, deterministic) -} -func (m *ProcessListRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessListRequest.Merge(m, src) -} -func (m *ProcessListRequest) XXX_Size() int { - return xxx_messageInfo_ProcessListRequest.Size(m) -} -func (m *ProcessListRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessListRequest.DiscardUnknown(m) +func (x *ProcessListRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -var xxx_messageInfo_ProcessListRequest proto.InternalMessageInfo +func (*ProcessListRequest) ProtoMessage() {} -type ProcessListResponse struct { - Processes map[string]*ProcessResponse `protobuf:"bytes,1,rep,name=processes,proto3" json:"processes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` +func (x *ProcessListRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -func (m *ProcessListResponse) Reset() { *m = ProcessListResponse{} } -func (m *ProcessListResponse) String() string { return proto.CompactTextString(m) } -func (*ProcessListResponse) ProtoMessage() {} -func (*ProcessListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{7} +// Deprecated: Use ProcessListRequest.ProtoReflect.Descriptor instead. +func (*ProcessListRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{6} } -func (m *ProcessListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessListResponse.Unmarshal(m, b) -} -func (m *ProcessListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessListResponse.Marshal(b, m, deterministic) +type ProcessListResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Processes map[string]*ProcessResponse `protobuf:"bytes,1,rep,name=processes,proto3" json:"processes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *ProcessListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessListResponse.Merge(m, src) + +func (x *ProcessListResponse) Reset() { + *x = ProcessListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessListResponse) XXX_Size() int { - return xxx_messageInfo_ProcessListResponse.Size(m) + +func (x *ProcessListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessListResponse.DiscardUnknown(m) + +func (*ProcessListResponse) ProtoMessage() {} + +func (x *ProcessListResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessListResponse proto.InternalMessageInfo +// Deprecated: Use ProcessListResponse.ProtoReflect.Descriptor instead. +func (*ProcessListResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{7} +} -func (m *ProcessListResponse) GetProcesses() map[string]*ProcessResponse { - if m != nil { - return m.Processes +func (x *ProcessListResponse) GetProcesses() map[string]*ProcessResponse { + if x != nil { + return x.Processes } return nil } type LogRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *LogRequest) Reset() { *m = LogRequest{} } -func (m *LogRequest) String() string { return proto.CompactTextString(m) } -func (*LogRequest) ProtoMessage() {} -func (*LogRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{8} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *LogRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LogRequest.Unmarshal(m, b) -} -func (m *LogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LogRequest.Marshal(b, m, deterministic) -} -func (m *LogRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_LogRequest.Merge(m, src) +func (x *LogRequest) Reset() { + *x = LogRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *LogRequest) XXX_Size() int { - return xxx_messageInfo_LogRequest.Size(m) + +func (x *LogRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LogRequest) XXX_DiscardUnknown() { - xxx_messageInfo_LogRequest.DiscardUnknown(m) + +func (*LogRequest) ProtoMessage() {} + +func (x *LogRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_LogRequest proto.InternalMessageInfo +// Deprecated: Use LogRequest.ProtoReflect.Descriptor instead. +func (*LogRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{8} +} -func (m *LogRequest) GetName() string { - if m != nil { - return m.Name +func (x *LogRequest) GetName() string { + if x != nil { + return x.Name } return "" } type ProcessReplaceRequest struct { - Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - TerminateSignal string `protobuf:"bytes,2,opt,name=terminate_signal,json=terminateSignal,proto3" json:"terminate_signal,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessReplaceRequest) Reset() { *m = ProcessReplaceRequest{} } -func (m *ProcessReplaceRequest) String() string { return proto.CompactTextString(m) } -func (*ProcessReplaceRequest) ProtoMessage() {} -func (*ProcessReplaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{9} + Spec *ProcessSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` + TerminateSignal string `protobuf:"bytes,2,opt,name=terminate_signal,json=terminateSignal,proto3" json:"terminate_signal,omitempty"` } -func (m *ProcessReplaceRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessReplaceRequest.Unmarshal(m, b) -} -func (m *ProcessReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessReplaceRequest.Marshal(b, m, deterministic) -} -func (m *ProcessReplaceRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessReplaceRequest.Merge(m, src) +func (x *ProcessReplaceRequest) Reset() { + *x = ProcessReplaceRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessReplaceRequest) XXX_Size() int { - return xxx_messageInfo_ProcessReplaceRequest.Size(m) + +func (x *ProcessReplaceRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessReplaceRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessReplaceRequest.DiscardUnknown(m) + +func (*ProcessReplaceRequest) ProtoMessage() {} + +func (x *ProcessReplaceRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessReplaceRequest proto.InternalMessageInfo +// Deprecated: Use ProcessReplaceRequest.ProtoReflect.Descriptor instead. +func (*ProcessReplaceRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{9} +} -func (m *ProcessReplaceRequest) GetSpec() *ProcessSpec { - if m != nil { - return m.Spec +func (x *ProcessReplaceRequest) GetSpec() *ProcessSpec { + if x != nil { + return x.Spec } return nil } -func (m *ProcessReplaceRequest) GetTerminateSignal() string { - if m != nil { - return m.TerminateSignal +func (x *ProcessReplaceRequest) GetTerminateSignal() string { + if x != nil { + return x.TerminateSignal } return "" } type LogResponse struct { - Line string `protobuf:"bytes,2,opt,name=line,proto3" json:"line,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *LogResponse) Reset() { *m = LogResponse{} } -func (m *LogResponse) String() string { return proto.CompactTextString(m) } -func (*LogResponse) ProtoMessage() {} -func (*LogResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{10} + Line string `protobuf:"bytes,2,opt,name=line,proto3" json:"line,omitempty"` } -func (m *LogResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_LogResponse.Unmarshal(m, b) -} -func (m *LogResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_LogResponse.Marshal(b, m, deterministic) -} -func (m *LogResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_LogResponse.Merge(m, src) +func (x *LogResponse) Reset() { + *x = LogResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *LogResponse) XXX_Size() int { - return xxx_messageInfo_LogResponse.Size(m) + +func (x *LogResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LogResponse) XXX_DiscardUnknown() { - xxx_messageInfo_LogResponse.DiscardUnknown(m) + +func (*LogResponse) ProtoMessage() {} + +func (x *LogResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_LogResponse proto.InternalMessageInfo +// Deprecated: Use LogResponse.ProtoReflect.Descriptor instead. +func (*LogResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{10} +} -func (m *LogResponse) GetLine() string { - if m != nil { - return m.Line +func (x *LogResponse) GetLine() string { + if x != nil { + return x.Line } return "" } type VersionResponse struct { - Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` - GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` - BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` - InstanceManagerAPIVersion int64 `protobuf:"varint,4,opt,name=instanceManagerAPIVersion,proto3" json:"instanceManagerAPIVersion,omitempty"` - InstanceManagerAPIMinVersion int64 `protobuf:"varint,5,opt,name=instanceManagerAPIMinVersion,proto3" json:"instanceManagerAPIMinVersion,omitempty"` - InstanceManagerProxyAPIVersion int64 `protobuf:"varint,6,opt,name=instanceManagerProxyAPIVersion,proto3" json:"instanceManagerProxyAPIVersion,omitempty"` - InstanceManagerProxyAPIMinVersion int64 `protobuf:"varint,7,opt,name=instanceManagerProxyAPIMinVersion,proto3" json:"instanceManagerProxyAPIMinVersion,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *VersionResponse) Reset() { *m = VersionResponse{} } -func (m *VersionResponse) String() string { return proto.CompactTextString(m) } -func (*VersionResponse) ProtoMessage() {} -func (*VersionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_6c5cc5d51c61a331, []int{11} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *VersionResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VersionResponse.Unmarshal(m, b) + Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` + GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` + BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` + InstanceManagerAPIVersion int64 `protobuf:"varint,4,opt,name=instanceManagerAPIVersion,proto3" json:"instanceManagerAPIVersion,omitempty"` + InstanceManagerAPIMinVersion int64 `protobuf:"varint,5,opt,name=instanceManagerAPIMinVersion,proto3" json:"instanceManagerAPIMinVersion,omitempty"` + InstanceManagerProxyAPIVersion int64 `protobuf:"varint,6,opt,name=instanceManagerProxyAPIVersion,proto3" json:"instanceManagerProxyAPIVersion,omitempty"` + InstanceManagerProxyAPIMinVersion int64 `protobuf:"varint,7,opt,name=instanceManagerProxyAPIMinVersion,proto3" json:"instanceManagerProxyAPIMinVersion,omitempty"` } -func (m *VersionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VersionResponse.Marshal(b, m, deterministic) -} -func (m *VersionResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_VersionResponse.Merge(m, src) + +func (x *VersionResponse) Reset() { + *x = VersionResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *VersionResponse) XXX_Size() int { - return xxx_messageInfo_VersionResponse.Size(m) + +func (x *VersionResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *VersionResponse) XXX_DiscardUnknown() { - xxx_messageInfo_VersionResponse.DiscardUnknown(m) + +func (*VersionResponse) ProtoMessage() {} + +func (x *VersionResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_VersionResponse proto.InternalMessageInfo +// Deprecated: Use VersionResponse.ProtoReflect.Descriptor instead. +func (*VersionResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP(), []int{11} +} -func (m *VersionResponse) GetVersion() string { - if m != nil { - return m.Version +func (x *VersionResponse) GetVersion() string { + if x != nil { + return x.Version } return "" } -func (m *VersionResponse) GetGitCommit() string { - if m != nil { - return m.GitCommit +func (x *VersionResponse) GetGitCommit() string { + if x != nil { + return x.GitCommit } return "" } -func (m *VersionResponse) GetBuildDate() string { - if m != nil { - return m.BuildDate +func (x *VersionResponse) GetBuildDate() string { + if x != nil { + return x.BuildDate } return "" } -func (m *VersionResponse) GetInstanceManagerAPIVersion() int64 { - if m != nil { - return m.InstanceManagerAPIVersion +func (x *VersionResponse) GetInstanceManagerAPIVersion() int64 { + if x != nil { + return x.InstanceManagerAPIVersion } return 0 } -func (m *VersionResponse) GetInstanceManagerAPIMinVersion() int64 { - if m != nil { - return m.InstanceManagerAPIMinVersion +func (x *VersionResponse) GetInstanceManagerAPIMinVersion() int64 { + if x != nil { + return x.InstanceManagerAPIMinVersion } return 0 } -func (m *VersionResponse) GetInstanceManagerProxyAPIVersion() int64 { - if m != nil { - return m.InstanceManagerProxyAPIVersion +func (x *VersionResponse) GetInstanceManagerProxyAPIVersion() int64 { + if x != nil { + return x.InstanceManagerProxyAPIVersion } return 0 } -func (m *VersionResponse) GetInstanceManagerProxyAPIMinVersion() int64 { - if m != nil { - return m.InstanceManagerProxyAPIMinVersion +func (x *VersionResponse) GetInstanceManagerProxyAPIMinVersion() int64 { + if x != nil { + return x.InstanceManagerProxyAPIMinVersion } return 0 } -func init() { - proto.RegisterType((*ProcessSpec)(nil), "ProcessSpec") - proto.RegisterType((*ProcessStatus)(nil), "ProcessStatus") - proto.RegisterType((*ProcessCreateRequest)(nil), "ProcessCreateRequest") - proto.RegisterType((*ProcessDeleteRequest)(nil), "ProcessDeleteRequest") - proto.RegisterType((*ProcessGetRequest)(nil), "ProcessGetRequest") - proto.RegisterType((*ProcessResponse)(nil), "ProcessResponse") - proto.RegisterType((*ProcessListRequest)(nil), "ProcessListRequest") - proto.RegisterType((*ProcessListResponse)(nil), "ProcessListResponse") - proto.RegisterMapType((map[string]*ProcessResponse)(nil), "ProcessListResponse.ProcessesEntry") - proto.RegisterType((*LogRequest)(nil), "LogRequest") - proto.RegisterType((*ProcessReplaceRequest)(nil), "ProcessReplaceRequest") - proto.RegisterType((*LogResponse)(nil), "LogResponse") - proto.RegisterType((*VersionResponse)(nil), "VersionResponse") -} - -func init() { - proto.RegisterFile("github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto", fileDescriptor_6c5cc5d51c61a331) -} - -var fileDescriptor_6c5cc5d51c61a331 = []byte{ - // 755 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x55, 0xef, 0x4e, 0xdb, 0x30, - 0x10, 0x27, 0xa4, 0x7f, 0xe8, 0x95, 0x01, 0x33, 0x05, 0x85, 0xc2, 0xa6, 0x92, 0x49, 0x8c, 0x6d, - 0x22, 0x9d, 0xba, 0x69, 0x42, 0x88, 0x2f, 0xac, 0xb0, 0x69, 0x52, 0x99, 0x50, 0x2a, 0x6d, 0x1f, - 0xab, 0x34, 0xf5, 0x42, 0x44, 0x62, 0x67, 0xb6, 0x83, 0x56, 0x69, 0x2f, 0xb0, 0x37, 0xd9, 0x73, - 0xed, 0x45, 0x36, 0xc5, 0x71, 0xd2, 0x96, 0xa6, 0xb0, 0x2f, 0x95, 0xef, 0x77, 0xbf, 0xbb, 0xfb, - 0xf5, 0xe2, 0x3b, 0x43, 0xd7, 0xf3, 0xc5, 0x75, 0x3c, 0xb4, 0x5c, 0x1a, 0xb6, 0x03, 0x4a, 0xbc, - 0x6b, 0xca, 0x48, 0x7e, 0x38, 0xf2, 0x09, 0x17, 0x0e, 0x71, 0xf1, 0x51, 0xe8, 0x10, 0xc7, 0xc3, - 0xac, 0x1d, 0xdd, 0x78, 0x6d, 0x3f, 0x64, 0x91, 0x9b, 0xfe, 0x5a, 0x11, 0xa3, 0x82, 0x36, 0x77, - 0x3d, 0x4a, 0xbd, 0x00, 0xb7, 0xa5, 0x35, 0x8c, 0xbf, 0xb5, 0x71, 0x18, 0x89, 0x71, 0xea, 0x34, - 0x7f, 0x69, 0x50, 0xbf, 0x62, 0xd4, 0xc5, 0x9c, 0xf7, 0x23, 0xec, 0x22, 0x04, 0x25, 0xe2, 0x84, - 0xd8, 0xd0, 0x5a, 0xda, 0x61, 0xcd, 0x96, 0x67, 0xb4, 0x0d, 0x95, 0xa1, 0x4f, 0x1c, 0x36, 0x36, - 0x96, 0x25, 0xaa, 0xac, 0x84, 0xeb, 0x30, 0x8f, 0x1b, 0x7a, 0x4b, 0x4f, 0xb8, 0xc9, 0x19, 0x3d, - 0x01, 0x88, 0x28, 0x13, 0x03, 0x97, 0xc6, 0x44, 0x18, 0xa5, 0x96, 0x76, 0x58, 0xb6, 0x6b, 0x09, - 0xd2, 0x4d, 0x00, 0xb4, 0x0b, 0xd2, 0x18, 0xc8, 0xb8, 0xb2, 0x8c, 0x5b, 0x49, 0x80, 0x33, 0xe6, - 0x71, 0xf3, 0x27, 0x3c, 0xca, 0xa4, 0x08, 0x47, 0xc4, 0x1c, 0x35, 0xa0, 0xcc, 0x85, 0x23, 0x32, - 0x35, 0xa9, 0x91, 0xe4, 0xc0, 0x8c, 0x51, 0x36, 0x08, 0xb9, 0xa7, 0x14, 0xad, 0x48, 0xe0, 0x92, - 0x7b, 0x79, 0x7d, 0x2e, 0x1c, 0x26, 0x0c, 0x7d, 0x52, 0xbf, 0x9f, 0x00, 0x68, 0x07, 0x64, 0xb9, - 0x01, 0x26, 0x23, 0x25, 0xae, 0x9a, 0xd8, 0x17, 0x64, 0x64, 0x1e, 0x43, 0x43, 0x55, 0xef, 0x32, - 0xec, 0x08, 0x6c, 0xe3, 0xef, 0x31, 0xe6, 0x02, 0xb5, 0xa0, 0xc4, 0x23, 0xec, 0x4a, 0x0d, 0xf5, - 0xce, 0xaa, 0x35, 0xd5, 0x2d, 0x5b, 0x7a, 0xcc, 0x97, 0x79, 0xe4, 0x39, 0x0e, 0xf0, 0x24, 0xb2, - 0xa0, 0x97, 0xe6, 0x73, 0x78, 0xac, 0xb8, 0x1f, 0xb1, 0xb8, 0x8f, 0x18, 0xc3, 0xba, 0x22, 0xda, - 0x98, 0x47, 0x94, 0x70, 0xfc, 0xb0, 0x12, 0x74, 0x00, 0x15, 0x2e, 0x5b, 0x27, 0xfb, 0x52, 0xef, - 0xac, 0x59, 0x33, 0x0d, 0xb5, 0x95, 0x17, 0x19, 0x50, 0x1d, 0x49, 0xa9, 0x23, 0xd9, 0xa2, 0x15, - 0x3b, 0x33, 0xcd, 0x06, 0x20, 0x15, 0xd2, 0xf3, 0x79, 0x26, 0xd0, 0xfc, 0xad, 0xc1, 0xe6, 0x0c, - 0xac, 0x14, 0x9d, 0x41, 0x2d, 0x4a, 0x61, 0xcc, 0x0d, 0xad, 0xa5, 0x1f, 0xd6, 0x3b, 0xcf, 0xac, - 0x02, 0x62, 0x86, 0x61, 0x7e, 0x41, 0x04, 0x1b, 0xdb, 0x93, 0xa8, 0xe6, 0x67, 0x58, 0x9b, 0x75, - 0xa2, 0x0d, 0xd0, 0x6f, 0xf0, 0x58, 0x35, 0x23, 0x39, 0xa2, 0x03, 0x28, 0xdf, 0x3a, 0x41, 0x8c, - 0xd5, 0xbf, 0xda, 0xb0, 0xee, 0x74, 0xc6, 0x4e, 0xdd, 0x27, 0xcb, 0xc7, 0x9a, 0xd9, 0x02, 0xe8, - 0x51, 0xef, 0xbe, 0xce, 0x8e, 0x60, 0x2b, 0x8f, 0x8f, 0x02, 0xc7, 0xfd, 0xff, 0x2f, 0x8d, 0x5e, - 0xc0, 0x86, 0xc0, 0x2c, 0xf4, 0x89, 0x23, 0xf0, 0x80, 0xfb, 0x1e, 0x71, 0x02, 0x75, 0x03, 0xd7, - 0x73, 0xbc, 0x2f, 0x61, 0x73, 0x1f, 0xea, 0x52, 0x87, 0xea, 0x14, 0x82, 0x52, 0xe0, 0x13, 0xac, - 0xd8, 0xf2, 0x6c, 0xfe, 0x5d, 0x86, 0xf5, 0x2f, 0x98, 0x71, 0x9f, 0x92, 0x9c, 0x67, 0x40, 0xf5, - 0x36, 0x85, 0x94, 0xe6, 0xcc, 0x44, 0x7b, 0x50, 0xf3, 0x7c, 0xd1, 0xa5, 0x61, 0xe8, 0x0b, 0x95, - 0x66, 0x02, 0x24, 0xde, 0x61, 0xec, 0x07, 0xa3, 0xf3, 0x64, 0x5c, 0xf4, 0xd4, 0x9b, 0x03, 0xe8, - 0x14, 0x76, 0xb2, 0x65, 0x71, 0x99, 0xee, 0x8a, 0xb3, 0xab, 0x4f, 0xaa, 0xb4, 0x9c, 0x03, 0xdd, - 0x5e, 0x4c, 0x40, 0xef, 0x61, 0x6f, 0xde, 0x79, 0xe9, 0x93, 0x2c, 0x41, 0x59, 0x26, 0xb8, 0x97, - 0x83, 0x3e, 0xc0, 0xd3, 0x3b, 0xfe, 0x2b, 0x46, 0x7f, 0x8c, 0xa7, 0x64, 0x54, 0x64, 0x96, 0x07, - 0x58, 0xa8, 0x07, 0xfb, 0x0b, 0x18, 0x53, 0x82, 0xaa, 0x32, 0xd5, 0xc3, 0xc4, 0xce, 0x1f, 0x3d, - 0xbf, 0x0b, 0x8a, 0xd4, 0xc7, 0xec, 0xd6, 0x77, 0x31, 0x3a, 0xc9, 0x77, 0x51, 0xba, 0x0d, 0xd0, - 0x96, 0x55, 0xb4, 0x1d, 0x9a, 0x73, 0x77, 0xd1, 0x5c, 0x9a, 0x8a, 0x4d, 0xf7, 0xc1, 0x24, 0x76, - 0x66, 0x3f, 0x14, 0xc6, 0xbe, 0x05, 0x98, 0xec, 0x07, 0x84, 0xac, 0xb9, 0x65, 0xb1, 0xa0, 0x62, - 0x7d, 0x6a, 0xea, 0xd0, 0xa6, 0x35, 0x3f, 0xc3, 0xcd, 0x46, 0xd1, 0x60, 0x9a, 0x4b, 0xe8, 0x55, - 0x5e, 0xb1, 0x47, 0x3d, 0x54, 0xb7, 0x26, 0xd3, 0xd3, 0x5c, 0xb5, 0xa6, 0xae, 0xb0, 0xb9, 0xf4, - 0x5a, 0x43, 0xa7, 0xb0, 0xaa, 0xc8, 0x5f, 0x1d, 0xe1, 0x5e, 0xa3, 0x6d, 0x2b, 0x7d, 0x5c, 0xac, - 0xec, 0x71, 0xb1, 0x2e, 0x92, 0xc7, 0xa5, 0x48, 0xa4, 0x8c, 0x5e, 0x9b, 0x9d, 0x3c, 0xb4, 0x6d, - 0x15, 0x8e, 0x62, 0xe1, 0x9f, 0x7c, 0x07, 0xa0, 0xbe, 0x5b, 0xd2, 0x9a, 0xc5, 0x95, 0xef, 0x8c, - 0xd4, 0xb0, 0x22, 0x19, 0x6f, 0xfe, 0x05, 0x00, 0x00, 0xff, 0xff, 0x68, 0xc1, 0x92, 0x03, 0x4d, - 0x07, 0x00, 0x00, +var File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDesc = []byte{ + 0x0a, 0x43, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x22, 0x89, 0x01, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, + 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x12, + 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, + 0x67, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x05, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x72, 0x67, 0x73, 0x22, 0x7c, + 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, + 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, + 0x73, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x6e, 0x64, 0x22, 0x38, 0x0a, 0x14, + 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x22, 0x2a, 0x0a, 0x14, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x27, 0x0a, 0x11, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x75, 0x0a, 0x0f, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x20, + 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, + 0x12, 0x26, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x0e, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xa8, 0x01, 0x0a, 0x13, 0x50, 0x72, 0x6f, + 0x63, 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x41, 0x0a, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x65, 0x73, 0x1a, 0x4e, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x65, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x20, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x64, 0x0a, 0x15, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, + 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, + 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, + 0x12, 0x29, 0x0a, 0x10, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x69, + 0x67, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x74, 0x65, 0x72, 0x6d, + 0x69, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x22, 0x21, 0x0a, 0x0b, 0x4c, + 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6c, 0x69, + 0x6e, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0xff, + 0x02, 0x0a, 0x0f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, + 0x67, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x67, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x75, + 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, + 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x3c, 0x0a, 0x19, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x41, 0x50, 0x49, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x19, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x41, 0x50, 0x49, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, + 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x1c, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x41, 0x50, 0x49, + 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x46, 0x0a, 0x1e, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x1e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, + 0x6f, 0x6e, 0x12, 0x4c, 0x0a, 0x21, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x21, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x32, 0xe2, 0x03, 0x0a, 0x15, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x0d, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x15, 0x2e, 0x50, 0x72, + 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x15, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, + 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x34, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, + 0x12, 0x12, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x13, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, + 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x50, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x2b, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x4c, + 0x6f, 0x67, 0x12, 0x0b, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x0c, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, + 0x01, 0x12, 0x3c, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x57, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x10, 0x2e, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x30, 0x01, 0x12, + 0x3c, 0x0a, 0x0e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, + 0x65, 0x12, 0x16, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x50, 0x72, 0x6f, 0x63, + 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, + 0x0a, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x1a, 0x10, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x39, 0x5a, 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, + 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescData = file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDescData +} + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_goTypes = []interface{}{ + (*ProcessSpec)(nil), // 0: ProcessSpec + (*ProcessStatus)(nil), // 1: ProcessStatus + (*ProcessCreateRequest)(nil), // 2: ProcessCreateRequest + (*ProcessDeleteRequest)(nil), // 3: ProcessDeleteRequest + (*ProcessGetRequest)(nil), // 4: ProcessGetRequest + (*ProcessResponse)(nil), // 5: ProcessResponse + (*ProcessListRequest)(nil), // 6: ProcessListRequest + (*ProcessListResponse)(nil), // 7: ProcessListResponse + (*LogRequest)(nil), // 8: LogRequest + (*ProcessReplaceRequest)(nil), // 9: ProcessReplaceRequest + (*LogResponse)(nil), // 10: LogResponse + (*VersionResponse)(nil), // 11: VersionResponse + nil, // 12: ProcessListResponse.ProcessesEntry + (*emptypb.Empty)(nil), // 13: google.protobuf.Empty +} +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_depIdxs = []int32{ + 0, // 0: ProcessCreateRequest.spec:type_name -> ProcessSpec + 0, // 1: ProcessResponse.spec:type_name -> ProcessSpec + 1, // 2: ProcessResponse.status:type_name -> ProcessStatus + 12, // 3: ProcessListResponse.processes:type_name -> ProcessListResponse.ProcessesEntry + 0, // 4: ProcessReplaceRequest.spec:type_name -> ProcessSpec + 5, // 5: ProcessListResponse.ProcessesEntry.value:type_name -> ProcessResponse + 2, // 6: ProcessManagerService.ProcessCreate:input_type -> ProcessCreateRequest + 3, // 7: ProcessManagerService.ProcessDelete:input_type -> ProcessDeleteRequest + 4, // 8: ProcessManagerService.ProcessGet:input_type -> ProcessGetRequest + 6, // 9: ProcessManagerService.ProcessList:input_type -> ProcessListRequest + 8, // 10: ProcessManagerService.ProcessLog:input_type -> LogRequest + 13, // 11: ProcessManagerService.ProcessWatch:input_type -> google.protobuf.Empty + 9, // 12: ProcessManagerService.ProcessReplace:input_type -> ProcessReplaceRequest + 13, // 13: ProcessManagerService.VersionGet:input_type -> google.protobuf.Empty + 5, // 14: ProcessManagerService.ProcessCreate:output_type -> ProcessResponse + 5, // 15: ProcessManagerService.ProcessDelete:output_type -> ProcessResponse + 5, // 16: ProcessManagerService.ProcessGet:output_type -> ProcessResponse + 7, // 17: ProcessManagerService.ProcessList:output_type -> ProcessListResponse + 10, // 18: ProcessManagerService.ProcessLog:output_type -> LogResponse + 5, // 19: ProcessManagerService.ProcessWatch:output_type -> ProcessResponse + 5, // 20: ProcessManagerService.ProcessReplace:output_type -> ProcessResponse + 11, // 21: ProcessManagerService.VersionGet:output_type -> VersionResponse + 14, // [14:22] is the sub-list for method output_type + 6, // [6:14] is the sub-list for method input_type + 6, // [6:6] is the sub-list for extension type_name + 6, // [6:6] is the sub-list for extension extendee + 0, // [0:6] is the sub-list for field type_name +} + +func init() { file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_init() } +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_init() { + if File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessSpec); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessListRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LogRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessReplaceRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LogResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VersionResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDesc, + NumEnums: 0, + NumMessages: 13, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_depIdxs, + MessageInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_msgTypes, + }.Build() + File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto = out.File + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_rawDesc = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_goTypes = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_depIdxs = nil } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConn +var _ grpc.ClientConnInterface // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +const _ = grpc.SupportPackageIsVersion6 // ProcessManagerServiceClient is the client API for ProcessManagerService service. // @@ -702,16 +1081,16 @@ type ProcessManagerServiceClient interface { ProcessGet(ctx context.Context, in *ProcessGetRequest, opts ...grpc.CallOption) (*ProcessResponse, error) ProcessList(ctx context.Context, in *ProcessListRequest, opts ...grpc.CallOption) (*ProcessListResponse, error) ProcessLog(ctx context.Context, in *LogRequest, opts ...grpc.CallOption) (ProcessManagerService_ProcessLogClient, error) - ProcessWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (ProcessManagerService_ProcessWatchClient, error) + ProcessWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (ProcessManagerService_ProcessWatchClient, error) ProcessReplace(ctx context.Context, in *ProcessReplaceRequest, opts ...grpc.CallOption) (*ProcessResponse, error) - VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) + VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error) } type processManagerServiceClient struct { - cc *grpc.ClientConn + cc grpc.ClientConnInterface } -func NewProcessManagerServiceClient(cc *grpc.ClientConn) ProcessManagerServiceClient { +func NewProcessManagerServiceClient(cc grpc.ClientConnInterface) ProcessManagerServiceClient { return &processManagerServiceClient{cc} } @@ -783,7 +1162,7 @@ func (x *processManagerServiceProcessLogClient) Recv() (*LogResponse, error) { return m, nil } -func (c *processManagerServiceClient) ProcessWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (ProcessManagerService_ProcessWatchClient, error) { +func (c *processManagerServiceClient) ProcessWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (ProcessManagerService_ProcessWatchClient, error) { stream, err := c.cc.NewStream(ctx, &_ProcessManagerService_serviceDesc.Streams[1], "/ProcessManagerService/ProcessWatch", opts...) if err != nil { return nil, err @@ -824,7 +1203,7 @@ func (c *processManagerServiceClient) ProcessReplace(ctx context.Context, in *Pr return out, nil } -func (c *processManagerServiceClient) VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { +func (c *processManagerServiceClient) VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { out := new(VersionResponse) err := c.cc.Invoke(ctx, "/ProcessManagerService/VersionGet", in, out, opts...) if err != nil { @@ -840,37 +1219,37 @@ type ProcessManagerServiceServer interface { ProcessGet(context.Context, *ProcessGetRequest) (*ProcessResponse, error) ProcessList(context.Context, *ProcessListRequest) (*ProcessListResponse, error) ProcessLog(*LogRequest, ProcessManagerService_ProcessLogServer) error - ProcessWatch(*empty.Empty, ProcessManagerService_ProcessWatchServer) error + ProcessWatch(*emptypb.Empty, ProcessManagerService_ProcessWatchServer) error ProcessReplace(context.Context, *ProcessReplaceRequest) (*ProcessResponse, error) - VersionGet(context.Context, *empty.Empty) (*VersionResponse, error) + VersionGet(context.Context, *emptypb.Empty) (*VersionResponse, error) } // UnimplementedProcessManagerServiceServer can be embedded to have forward compatible implementations. type UnimplementedProcessManagerServiceServer struct { } -func (*UnimplementedProcessManagerServiceServer) ProcessCreate(ctx context.Context, req *ProcessCreateRequest) (*ProcessResponse, error) { +func (*UnimplementedProcessManagerServiceServer) ProcessCreate(context.Context, *ProcessCreateRequest) (*ProcessResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProcessCreate not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessDelete(ctx context.Context, req *ProcessDeleteRequest) (*ProcessResponse, error) { +func (*UnimplementedProcessManagerServiceServer) ProcessDelete(context.Context, *ProcessDeleteRequest) (*ProcessResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProcessDelete not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessGet(ctx context.Context, req *ProcessGetRequest) (*ProcessResponse, error) { +func (*UnimplementedProcessManagerServiceServer) ProcessGet(context.Context, *ProcessGetRequest) (*ProcessResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProcessGet not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessList(ctx context.Context, req *ProcessListRequest) (*ProcessListResponse, error) { +func (*UnimplementedProcessManagerServiceServer) ProcessList(context.Context, *ProcessListRequest) (*ProcessListResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProcessList not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessLog(req *LogRequest, srv ProcessManagerService_ProcessLogServer) error { +func (*UnimplementedProcessManagerServiceServer) ProcessLog(*LogRequest, ProcessManagerService_ProcessLogServer) error { return status.Errorf(codes.Unimplemented, "method ProcessLog not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessWatch(req *empty.Empty, srv ProcessManagerService_ProcessWatchServer) error { +func (*UnimplementedProcessManagerServiceServer) ProcessWatch(*emptypb.Empty, ProcessManagerService_ProcessWatchServer) error { return status.Errorf(codes.Unimplemented, "method ProcessWatch not implemented") } -func (*UnimplementedProcessManagerServiceServer) ProcessReplace(ctx context.Context, req *ProcessReplaceRequest) (*ProcessResponse, error) { +func (*UnimplementedProcessManagerServiceServer) ProcessReplace(context.Context, *ProcessReplaceRequest) (*ProcessResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ProcessReplace not implemented") } -func (*UnimplementedProcessManagerServiceServer) VersionGet(ctx context.Context, req *empty.Empty) (*VersionResponse, error) { +func (*UnimplementedProcessManagerServiceServer) VersionGet(context.Context, *emptypb.Empty) (*VersionResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VersionGet not implemented") } @@ -972,7 +1351,7 @@ func (x *processManagerServiceProcessLogServer) Send(m *LogResponse) error { } func _ProcessManagerService_ProcessWatch_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(empty.Empty) + m := new(emptypb.Empty) if err := stream.RecvMsg(m); err != nil { return err } @@ -1011,7 +1390,7 @@ func _ProcessManagerService_ProcessReplace_Handler(srv interface{}, ctx context. } func _ProcessManagerService_VersionGet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -1023,7 +1402,7 @@ func _ProcessManagerService_VersionGet_Handler(srv interface{}, ctx context.Cont FullMethod: "/ProcessManagerService/VersionGet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ProcessManagerServiceServer).VersionGet(ctx, req.(*empty.Empty)) + return srv.(ProcessManagerServiceServer).VersionGet(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto index 46ce76ff88..105e5ca115 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto @@ -1,6 +1,7 @@ syntax="proto3"; import "google/protobuf/empty.proto"; +option go_package = "github.com/longhorn/longhorn-instance-manager/pkg/imrpc"; service ProcessManagerService { rpc ProcessCreate(ProcessCreateRequest) returns (ProcessResponse) {} diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.pb.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.pb.go index 8721425bd8..0f6ba5613e 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.pb.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.pb.go @@ -1,765 +1,1179 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 // source: github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto package imrpc import ( context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - empty "github.com/golang/protobuf/ptypes/empty" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type ProcessInstanceSpec struct { - Binary string `protobuf:"bytes,1,opt,name=binary,proto3" json:"binary,omitempty"` - Args []string `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProcessInstanceSpec) Reset() { *m = ProcessInstanceSpec{} } -func (m *ProcessInstanceSpec) String() string { return proto.CompactTextString(m) } -func (*ProcessInstanceSpec) ProtoMessage() {} -func (*ProcessInstanceSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{0} + Binary string `protobuf:"bytes,1,opt,name=binary,proto3" json:"binary,omitempty"` + Args []string `protobuf:"bytes,2,rep,name=args,proto3" json:"args,omitempty"` } -func (m *ProcessInstanceSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProcessInstanceSpec.Unmarshal(m, b) -} -func (m *ProcessInstanceSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProcessInstanceSpec.Marshal(b, m, deterministic) -} -func (m *ProcessInstanceSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProcessInstanceSpec.Merge(m, src) +func (x *ProcessInstanceSpec) Reset() { + *x = ProcessInstanceSpec{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProcessInstanceSpec) XXX_Size() int { - return xxx_messageInfo_ProcessInstanceSpec.Size(m) + +func (x *ProcessInstanceSpec) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProcessInstanceSpec) XXX_DiscardUnknown() { - xxx_messageInfo_ProcessInstanceSpec.DiscardUnknown(m) + +func (*ProcessInstanceSpec) ProtoMessage() {} + +func (x *ProcessInstanceSpec) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProcessInstanceSpec proto.InternalMessageInfo +// Deprecated: Use ProcessInstanceSpec.ProtoReflect.Descriptor instead. +func (*ProcessInstanceSpec) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{0} +} -func (m *ProcessInstanceSpec) GetBinary() string { - if m != nil { - return m.Binary +func (x *ProcessInstanceSpec) GetBinary() string { + if x != nil { + return x.Binary } return "" } -func (m *ProcessInstanceSpec) GetArgs() []string { - if m != nil { - return m.Args +func (x *ProcessInstanceSpec) GetArgs() []string { + if x != nil { + return x.Args } return nil } type SpdkInstanceSpec struct { - ReplicaAddressMap map[string]string `protobuf:"bytes,1,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - Size uint64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"` - ExposeRequired bool `protobuf:"varint,5,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` - Frontend string `protobuf:"bytes,6,opt,name=frontend,proto3" json:"frontend,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *SpdkInstanceSpec) Reset() { *m = SpdkInstanceSpec{} } -func (m *SpdkInstanceSpec) String() string { return proto.CompactTextString(m) } -func (*SpdkInstanceSpec) ProtoMessage() {} -func (*SpdkInstanceSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{1} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *SpdkInstanceSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SpdkInstanceSpec.Unmarshal(m, b) -} -func (m *SpdkInstanceSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SpdkInstanceSpec.Marshal(b, m, deterministic) + ReplicaAddressMap map[string]string `protobuf:"bytes,1,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + DiskName string `protobuf:"bytes,2,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,3,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + Size uint64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"` + ExposeRequired bool `protobuf:"varint,5,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` + Frontend string `protobuf:"bytes,6,opt,name=frontend,proto3" json:"frontend,omitempty"` } -func (m *SpdkInstanceSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_SpdkInstanceSpec.Merge(m, src) + +func (x *SpdkInstanceSpec) Reset() { + *x = SpdkInstanceSpec{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *SpdkInstanceSpec) XXX_Size() int { - return xxx_messageInfo_SpdkInstanceSpec.Size(m) + +func (x *SpdkInstanceSpec) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *SpdkInstanceSpec) XXX_DiscardUnknown() { - xxx_messageInfo_SpdkInstanceSpec.DiscardUnknown(m) + +func (*SpdkInstanceSpec) ProtoMessage() {} + +func (x *SpdkInstanceSpec) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_SpdkInstanceSpec proto.InternalMessageInfo +// Deprecated: Use SpdkInstanceSpec.ProtoReflect.Descriptor instead. +func (*SpdkInstanceSpec) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{1} +} -func (m *SpdkInstanceSpec) GetReplicaAddressMap() map[string]string { - if m != nil { - return m.ReplicaAddressMap +func (x *SpdkInstanceSpec) GetReplicaAddressMap() map[string]string { + if x != nil { + return x.ReplicaAddressMap } return nil } -func (m *SpdkInstanceSpec) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *SpdkInstanceSpec) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *SpdkInstanceSpec) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *SpdkInstanceSpec) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *SpdkInstanceSpec) GetSize() uint64 { - if m != nil { - return m.Size +func (x *SpdkInstanceSpec) GetSize() uint64 { + if x != nil { + return x.Size } return 0 } -func (m *SpdkInstanceSpec) GetExposeRequired() bool { - if m != nil { - return m.ExposeRequired +func (x *SpdkInstanceSpec) GetExposeRequired() bool { + if x != nil { + return x.ExposeRequired } return false } -func (m *SpdkInstanceSpec) GetFrontend() string { - if m != nil { - return m.Frontend +func (x *SpdkInstanceSpec) GetFrontend() string { + if x != nil { + return x.Frontend } return "" } type InstanceSpec struct { - BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` - VolumeName string `protobuf:"bytes,4,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` - PortCount int32 `protobuf:"varint,5,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` - PortArgs []string `protobuf:"bytes,6,rep,name=port_args,json=portArgs,proto3" json:"port_args,omitempty"` - ProcessInstanceSpec *ProcessInstanceSpec `protobuf:"bytes,7,opt,name=process_instance_spec,json=processInstanceSpec,proto3" json:"process_instance_spec,omitempty"` - SpdkInstanceSpec *SpdkInstanceSpec `protobuf:"bytes,8,opt,name=spdk_instance_spec,json=spdkInstanceSpec,proto3" json:"spdk_instance_spec,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *InstanceSpec) Reset() { *m = InstanceSpec{} } -func (m *InstanceSpec) String() string { return proto.CompactTextString(m) } -func (*InstanceSpec) ProtoMessage() {} -func (*InstanceSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{2} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceSpec) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceSpec.Unmarshal(m, b) + BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` + VolumeName string `protobuf:"bytes,4,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` + PortCount int32 `protobuf:"varint,5,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` + PortArgs []string `protobuf:"bytes,6,rep,name=port_args,json=portArgs,proto3" json:"port_args,omitempty"` + ProcessInstanceSpec *ProcessInstanceSpec `protobuf:"bytes,7,opt,name=process_instance_spec,json=processInstanceSpec,proto3" json:"process_instance_spec,omitempty"` + SpdkInstanceSpec *SpdkInstanceSpec `protobuf:"bytes,8,opt,name=spdk_instance_spec,json=spdkInstanceSpec,proto3" json:"spdk_instance_spec,omitempty"` } -func (m *InstanceSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceSpec.Marshal(b, m, deterministic) -} -func (m *InstanceSpec) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceSpec.Merge(m, src) + +func (x *InstanceSpec) Reset() { + *x = InstanceSpec{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceSpec) XXX_Size() int { - return xxx_messageInfo_InstanceSpec.Size(m) + +func (x *InstanceSpec) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceSpec) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceSpec.DiscardUnknown(m) + +func (*InstanceSpec) ProtoMessage() {} + +func (x *InstanceSpec) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceSpec proto.InternalMessageInfo +// Deprecated: Use InstanceSpec.ProtoReflect.Descriptor instead. +func (*InstanceSpec) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{2} +} -func (m *InstanceSpec) GetBackendStoreDriver() BackendStoreDriver { - if m != nil { - return m.BackendStoreDriver +func (x *InstanceSpec) GetBackendStoreDriver() BackendStoreDriver { + if x != nil { + return x.BackendStoreDriver } return BackendStoreDriver_v1 } -func (m *InstanceSpec) GetName() string { - if m != nil { - return m.Name +func (x *InstanceSpec) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *InstanceSpec) GetType() string { - if m != nil { - return m.Type +func (x *InstanceSpec) GetType() string { + if x != nil { + return x.Type } return "" } -func (m *InstanceSpec) GetVolumeName() string { - if m != nil { - return m.VolumeName +func (x *InstanceSpec) GetVolumeName() string { + if x != nil { + return x.VolumeName } return "" } -func (m *InstanceSpec) GetPortCount() int32 { - if m != nil { - return m.PortCount +func (x *InstanceSpec) GetPortCount() int32 { + if x != nil { + return x.PortCount } return 0 } -func (m *InstanceSpec) GetPortArgs() []string { - if m != nil { - return m.PortArgs +func (x *InstanceSpec) GetPortArgs() []string { + if x != nil { + return x.PortArgs } return nil } -func (m *InstanceSpec) GetProcessInstanceSpec() *ProcessInstanceSpec { - if m != nil { - return m.ProcessInstanceSpec +func (x *InstanceSpec) GetProcessInstanceSpec() *ProcessInstanceSpec { + if x != nil { + return x.ProcessInstanceSpec } return nil } -func (m *InstanceSpec) GetSpdkInstanceSpec() *SpdkInstanceSpec { - if m != nil { - return m.SpdkInstanceSpec +func (x *InstanceSpec) GetSpdkInstanceSpec() *SpdkInstanceSpec { + if x != nil { + return x.SpdkInstanceSpec } return nil } type InstanceStatus struct { - State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"` - ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` - PortStart int32 `protobuf:"varint,3,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` - PortEnd int32 `protobuf:"varint,4,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *InstanceStatus) Reset() { *m = InstanceStatus{} } -func (m *InstanceStatus) String() string { return proto.CompactTextString(m) } -func (*InstanceStatus) ProtoMessage() {} -func (*InstanceStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{3} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceStatus.Unmarshal(m, b) -} -func (m *InstanceStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceStatus.Marshal(b, m, deterministic) + State string `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"` + ErrorMsg string `protobuf:"bytes,2,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` + PortStart int32 `protobuf:"varint,3,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` + PortEnd int32 `protobuf:"varint,4,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` } -func (m *InstanceStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceStatus.Merge(m, src) + +func (x *InstanceStatus) Reset() { + *x = InstanceStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceStatus) XXX_Size() int { - return xxx_messageInfo_InstanceStatus.Size(m) + +func (x *InstanceStatus) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceStatus) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceStatus.DiscardUnknown(m) + +func (*InstanceStatus) ProtoMessage() {} + +func (x *InstanceStatus) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceStatus proto.InternalMessageInfo +// Deprecated: Use InstanceStatus.ProtoReflect.Descriptor instead. +func (*InstanceStatus) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{3} +} -func (m *InstanceStatus) GetState() string { - if m != nil { - return m.State +func (x *InstanceStatus) GetState() string { + if x != nil { + return x.State } return "" } -func (m *InstanceStatus) GetErrorMsg() string { - if m != nil { - return m.ErrorMsg +func (x *InstanceStatus) GetErrorMsg() string { + if x != nil { + return x.ErrorMsg } return "" } -func (m *InstanceStatus) GetPortStart() int32 { - if m != nil { - return m.PortStart +func (x *InstanceStatus) GetPortStart() int32 { + if x != nil { + return x.PortStart } return 0 } -func (m *InstanceStatus) GetPortEnd() int32 { - if m != nil { - return m.PortEnd +func (x *InstanceStatus) GetPortEnd() int32 { + if x != nil { + return x.PortEnd } return 0 } type InstanceCreateRequest struct { - Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceCreateRequest) Reset() { *m = InstanceCreateRequest{} } -func (m *InstanceCreateRequest) String() string { return proto.CompactTextString(m) } -func (*InstanceCreateRequest) ProtoMessage() {} -func (*InstanceCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{4} + Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` } -func (m *InstanceCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceCreateRequest.Unmarshal(m, b) -} -func (m *InstanceCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceCreateRequest.Marshal(b, m, deterministic) -} -func (m *InstanceCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceCreateRequest.Merge(m, src) +func (x *InstanceCreateRequest) Reset() { + *x = InstanceCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceCreateRequest) XXX_Size() int { - return xxx_messageInfo_InstanceCreateRequest.Size(m) + +func (x *InstanceCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceCreateRequest.DiscardUnknown(m) + +func (*InstanceCreateRequest) ProtoMessage() {} + +func (x *InstanceCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceCreateRequest proto.InternalMessageInfo +// Deprecated: Use InstanceCreateRequest.ProtoReflect.Descriptor instead. +func (*InstanceCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{4} +} -func (m *InstanceCreateRequest) GetSpec() *InstanceSpec { - if m != nil { - return m.Spec +func (x *InstanceCreateRequest) GetSpec() *InstanceSpec { + if x != nil { + return x.Spec } return nil } type InstanceDeleteRequest struct { - BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` - DiskUuid string `protobuf:"bytes,4,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - CleanupRequired bool `protobuf:"varint,5,opt,name=cleanup_required,json=cleanupRequired,proto3" json:"cleanup_required,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *InstanceDeleteRequest) Reset() { *m = InstanceDeleteRequest{} } -func (m *InstanceDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*InstanceDeleteRequest) ProtoMessage() {} -func (*InstanceDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{5} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceDeleteRequest.Unmarshal(m, b) -} -func (m *InstanceDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceDeleteRequest.Marshal(b, m, deterministic) + BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` + DiskUuid string `protobuf:"bytes,4,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + CleanupRequired bool `protobuf:"varint,5,opt,name=cleanup_required,json=cleanupRequired,proto3" json:"cleanup_required,omitempty"` } -func (m *InstanceDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceDeleteRequest.Merge(m, src) + +func (x *InstanceDeleteRequest) Reset() { + *x = InstanceDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceDeleteRequest) XXX_Size() int { - return xxx_messageInfo_InstanceDeleteRequest.Size(m) + +func (x *InstanceDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceDeleteRequest.DiscardUnknown(m) + +func (*InstanceDeleteRequest) ProtoMessage() {} + +func (x *InstanceDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceDeleteRequest proto.InternalMessageInfo +// Deprecated: Use InstanceDeleteRequest.ProtoReflect.Descriptor instead. +func (*InstanceDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{5} +} -func (m *InstanceDeleteRequest) GetBackendStoreDriver() BackendStoreDriver { - if m != nil { - return m.BackendStoreDriver +func (x *InstanceDeleteRequest) GetBackendStoreDriver() BackendStoreDriver { + if x != nil { + return x.BackendStoreDriver } return BackendStoreDriver_v1 } -func (m *InstanceDeleteRequest) GetName() string { - if m != nil { - return m.Name +func (x *InstanceDeleteRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *InstanceDeleteRequest) GetType() string { - if m != nil { - return m.Type +func (x *InstanceDeleteRequest) GetType() string { + if x != nil { + return x.Type } return "" } -func (m *InstanceDeleteRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *InstanceDeleteRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *InstanceDeleteRequest) GetCleanupRequired() bool { - if m != nil { - return m.CleanupRequired +func (x *InstanceDeleteRequest) GetCleanupRequired() bool { + if x != nil { + return x.CleanupRequired } return false } type InstanceGetRequest struct { - BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceGetRequest) Reset() { *m = InstanceGetRequest{} } -func (m *InstanceGetRequest) String() string { return proto.CompactTextString(m) } -func (*InstanceGetRequest) ProtoMessage() {} -func (*InstanceGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{6} + BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` } -func (m *InstanceGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceGetRequest.Unmarshal(m, b) -} -func (m *InstanceGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceGetRequest.Marshal(b, m, deterministic) -} -func (m *InstanceGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceGetRequest.Merge(m, src) +func (x *InstanceGetRequest) Reset() { + *x = InstanceGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceGetRequest) XXX_Size() int { - return xxx_messageInfo_InstanceGetRequest.Size(m) + +func (x *InstanceGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceGetRequest.DiscardUnknown(m) + +func (*InstanceGetRequest) ProtoMessage() {} + +func (x *InstanceGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceGetRequest proto.InternalMessageInfo +// Deprecated: Use InstanceGetRequest.ProtoReflect.Descriptor instead. +func (*InstanceGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{6} +} -func (m *InstanceGetRequest) GetBackendStoreDriver() BackendStoreDriver { - if m != nil { - return m.BackendStoreDriver +func (x *InstanceGetRequest) GetBackendStoreDriver() BackendStoreDriver { + if x != nil { + return x.BackendStoreDriver } return BackendStoreDriver_v1 } -func (m *InstanceGetRequest) GetName() string { - if m != nil { - return m.Name +func (x *InstanceGetRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *InstanceGetRequest) GetType() string { - if m != nil { - return m.Type +func (x *InstanceGetRequest) GetType() string { + if x != nil { + return x.Type } return "" } type InstanceResponse struct { - Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - Status *InstanceStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - Deleted bool `protobuf:"varint,3,opt,name=deleted,proto3" json:"deleted,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceResponse) Reset() { *m = InstanceResponse{} } -func (m *InstanceResponse) String() string { return proto.CompactTextString(m) } -func (*InstanceResponse) ProtoMessage() {} -func (*InstanceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{7} + Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` + Status *InstanceStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` + Deleted bool `protobuf:"varint,3,opt,name=deleted,proto3" json:"deleted,omitempty"` } -func (m *InstanceResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceResponse.Unmarshal(m, b) -} -func (m *InstanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceResponse.Marshal(b, m, deterministic) -} -func (m *InstanceResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceResponse.Merge(m, src) +func (x *InstanceResponse) Reset() { + *x = InstanceResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceResponse) XXX_Size() int { - return xxx_messageInfo_InstanceResponse.Size(m) + +func (x *InstanceResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceResponse) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceResponse.DiscardUnknown(m) + +func (*InstanceResponse) ProtoMessage() {} + +func (x *InstanceResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceResponse proto.InternalMessageInfo +// Deprecated: Use InstanceResponse.ProtoReflect.Descriptor instead. +func (*InstanceResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{7} +} -func (m *InstanceResponse) GetSpec() *InstanceSpec { - if m != nil { - return m.Spec +func (x *InstanceResponse) GetSpec() *InstanceSpec { + if x != nil { + return x.Spec } return nil } -func (m *InstanceResponse) GetStatus() *InstanceStatus { - if m != nil { - return m.Status +func (x *InstanceResponse) GetStatus() *InstanceStatus { + if x != nil { + return x.Status } return nil } -func (m *InstanceResponse) GetDeleted() bool { - if m != nil { - return m.Deleted +func (x *InstanceResponse) GetDeleted() bool { + if x != nil { + return x.Deleted } return false } type InstanceListResponse struct { - Instances map[string]*InstanceResponse `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceListResponse) Reset() { *m = InstanceListResponse{} } -func (m *InstanceListResponse) String() string { return proto.CompactTextString(m) } -func (*InstanceListResponse) ProtoMessage() {} -func (*InstanceListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{8} + Instances map[string]*InstanceResponse `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *InstanceListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceListResponse.Unmarshal(m, b) -} -func (m *InstanceListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceListResponse.Marshal(b, m, deterministic) -} -func (m *InstanceListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceListResponse.Merge(m, src) +func (x *InstanceListResponse) Reset() { + *x = InstanceListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceListResponse) XXX_Size() int { - return xxx_messageInfo_InstanceListResponse.Size(m) + +func (x *InstanceListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceListResponse.DiscardUnknown(m) + +func (*InstanceListResponse) ProtoMessage() {} + +func (x *InstanceListResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceListResponse proto.InternalMessageInfo +// Deprecated: Use InstanceListResponse.ProtoReflect.Descriptor instead. +func (*InstanceListResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{8} +} -func (m *InstanceListResponse) GetInstances() map[string]*InstanceResponse { - if m != nil { - return m.Instances +func (x *InstanceListResponse) GetInstances() map[string]*InstanceResponse { + if x != nil { + return x.Instances } return nil } type InstanceLogRequest struct { - BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceLogRequest) Reset() { *m = InstanceLogRequest{} } -func (m *InstanceLogRequest) String() string { return proto.CompactTextString(m) } -func (*InstanceLogRequest) ProtoMessage() {} -func (*InstanceLogRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{9} + BackendStoreDriver BackendStoreDriver `protobuf:"varint,1,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Type string `protobuf:"bytes,3,opt,name=type,proto3" json:"type,omitempty"` } -func (m *InstanceLogRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceLogRequest.Unmarshal(m, b) -} -func (m *InstanceLogRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceLogRequest.Marshal(b, m, deterministic) -} -func (m *InstanceLogRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceLogRequest.Merge(m, src) +func (x *InstanceLogRequest) Reset() { + *x = InstanceLogRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceLogRequest) XXX_Size() int { - return xxx_messageInfo_InstanceLogRequest.Size(m) + +func (x *InstanceLogRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceLogRequest) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceLogRequest.DiscardUnknown(m) + +func (*InstanceLogRequest) ProtoMessage() {} + +func (x *InstanceLogRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceLogRequest proto.InternalMessageInfo +// Deprecated: Use InstanceLogRequest.ProtoReflect.Descriptor instead. +func (*InstanceLogRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{9} +} -func (m *InstanceLogRequest) GetBackendStoreDriver() BackendStoreDriver { - if m != nil { - return m.BackendStoreDriver +func (x *InstanceLogRequest) GetBackendStoreDriver() BackendStoreDriver { + if x != nil { + return x.BackendStoreDriver } return BackendStoreDriver_v1 } -func (m *InstanceLogRequest) GetName() string { - if m != nil { - return m.Name +func (x *InstanceLogRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *InstanceLogRequest) GetType() string { - if m != nil { - return m.Type +func (x *InstanceLogRequest) GetType() string { + if x != nil { + return x.Type } return "" } type InstanceReplaceRequest struct { - Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` - TerminateSignal string `protobuf:"bytes,2,opt,name=terminate_signal,json=terminateSignal,proto3" json:"terminate_signal,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *InstanceReplaceRequest) Reset() { *m = InstanceReplaceRequest{} } -func (m *InstanceReplaceRequest) String() string { return proto.CompactTextString(m) } -func (*InstanceReplaceRequest) ProtoMessage() {} -func (*InstanceReplaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_d3868a06a3fd0bb0, []int{10} + Spec *InstanceSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` + TerminateSignal string `protobuf:"bytes,2,opt,name=terminate_signal,json=terminateSignal,proto3" json:"terminate_signal,omitempty"` } -func (m *InstanceReplaceRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_InstanceReplaceRequest.Unmarshal(m, b) -} -func (m *InstanceReplaceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_InstanceReplaceRequest.Marshal(b, m, deterministic) -} -func (m *InstanceReplaceRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_InstanceReplaceRequest.Merge(m, src) +func (x *InstanceReplaceRequest) Reset() { + *x = InstanceReplaceRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *InstanceReplaceRequest) XXX_Size() int { - return xxx_messageInfo_InstanceReplaceRequest.Size(m) + +func (x *InstanceReplaceRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *InstanceReplaceRequest) XXX_DiscardUnknown() { - xxx_messageInfo_InstanceReplaceRequest.DiscardUnknown(m) + +func (*InstanceReplaceRequest) ProtoMessage() {} + +func (x *InstanceReplaceRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_InstanceReplaceRequest proto.InternalMessageInfo +// Deprecated: Use InstanceReplaceRequest.ProtoReflect.Descriptor instead. +func (*InstanceReplaceRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP(), []int{10} +} -func (m *InstanceReplaceRequest) GetSpec() *InstanceSpec { - if m != nil { - return m.Spec +func (x *InstanceReplaceRequest) GetSpec() *InstanceSpec { + if x != nil { + return x.Spec } return nil } -func (m *InstanceReplaceRequest) GetTerminateSignal() string { - if m != nil { - return m.TerminateSignal +func (x *InstanceReplaceRequest) GetTerminateSignal() string { + if x != nil { + return x.TerminateSignal } return "" } -func init() { - proto.RegisterType((*ProcessInstanceSpec)(nil), "imrpc.ProcessInstanceSpec") - proto.RegisterType((*SpdkInstanceSpec)(nil), "imrpc.SpdkInstanceSpec") - proto.RegisterMapType((map[string]string)(nil), "imrpc.SpdkInstanceSpec.ReplicaAddressMapEntry") - proto.RegisterType((*InstanceSpec)(nil), "imrpc.InstanceSpec") - proto.RegisterType((*InstanceStatus)(nil), "imrpc.InstanceStatus") - proto.RegisterType((*InstanceCreateRequest)(nil), "imrpc.InstanceCreateRequest") - proto.RegisterType((*InstanceDeleteRequest)(nil), "imrpc.InstanceDeleteRequest") - proto.RegisterType((*InstanceGetRequest)(nil), "imrpc.InstanceGetRequest") - proto.RegisterType((*InstanceResponse)(nil), "imrpc.InstanceResponse") - proto.RegisterType((*InstanceListResponse)(nil), "imrpc.InstanceListResponse") - proto.RegisterMapType((map[string]*InstanceResponse)(nil), "imrpc.InstanceListResponse.InstancesEntry") - proto.RegisterType((*InstanceLogRequest)(nil), "imrpc.InstanceLogRequest") - proto.RegisterType((*InstanceReplaceRequest)(nil), "imrpc.InstanceReplaceRequest") -} - -func init() { - proto.RegisterFile("github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto", fileDescriptor_d3868a06a3fd0bb0) -} - -var fileDescriptor_d3868a06a3fd0bb0 = []byte{ - // 943 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x56, 0x4f, 0x6f, 0xe3, 0x44, - 0x14, 0x5f, 0xa7, 0x69, 0x36, 0x99, 0x2c, 0x6d, 0x98, 0xfe, 0xc1, 0x75, 0x59, 0x11, 0xf9, 0xb2, - 0x01, 0xa9, 0x0e, 0x0a, 0x12, 0x42, 0x7b, 0xa2, 0xa4, 0x01, 0x56, 0xdb, 0x5d, 0x21, 0x47, 0x0b, - 0x37, 0xac, 0x89, 0xfd, 0xd6, 0xb5, 0x62, 0xcf, 0x0c, 0x33, 0xe3, 0x8a, 0x22, 0x71, 0xe3, 0xc2, - 0x27, 0x42, 0x7c, 0x06, 0xae, 0x7c, 0x17, 0xae, 0x68, 0xc6, 0x76, 0x9c, 0xb8, 0x4d, 0x05, 0x7b, - 0xe9, 0x25, 0x9a, 0xf9, 0xcd, 0x9b, 0x37, 0xef, 0xfd, 0xde, 0xef, 0xbd, 0x18, 0x7d, 0x1d, 0x27, - 0xea, 0x2a, 0x5f, 0x78, 0x21, 0xcb, 0xc6, 0x29, 0xa3, 0xf1, 0x15, 0x13, 0x74, 0xb5, 0x38, 0x4b, - 0xa8, 0x54, 0x84, 0x86, 0x70, 0x96, 0x11, 0x4a, 0x62, 0x10, 0x63, 0xbe, 0x8c, 0xc7, 0x49, 0x26, - 0x78, 0x38, 0xae, 0x8e, 0x3c, 0x2e, 0x98, 0x62, 0x78, 0xd7, 0xa0, 0xce, 0x69, 0xcc, 0x58, 0x9c, - 0xc2, 0xd8, 0x80, 0x8b, 0xfc, 0xed, 0x18, 0x32, 0xae, 0x6e, 0x0a, 0x1b, 0xe7, 0xe2, 0x5d, 0xdf, - 0x0a, 0x59, 0x96, 0x31, 0x5a, 0x7a, 0x99, 0xbe, 0x73, 0xc4, 0xfa, 0xb7, 0x70, 0xe2, 0x9e, 0xa3, - 0x83, 0xef, 0x04, 0x0b, 0x41, 0xca, 0x17, 0xe5, 0x85, 0x39, 0x87, 0x10, 0x1f, 0xa3, 0xce, 0x22, - 0xa1, 0x44, 0xdc, 0xd8, 0xd6, 0xd0, 0x1a, 0xf5, 0xfc, 0x72, 0x87, 0x31, 0x6a, 0x13, 0x11, 0x4b, - 0xbb, 0x35, 0xdc, 0x19, 0xf5, 0x7c, 0xb3, 0x76, 0xff, 0x6a, 0xa1, 0xc1, 0x9c, 0x47, 0xcb, 0x0d, - 0x07, 0x3f, 0xa2, 0x03, 0x01, 0x3c, 0x4d, 0x42, 0x12, 0x90, 0x28, 0x12, 0x20, 0x65, 0x90, 0x11, - 0x6e, 0x5b, 0xc3, 0x9d, 0x51, 0x7f, 0xe2, 0x79, 0x45, 0x08, 0xcd, 0x5b, 0x9e, 0x5f, 0x5c, 0x39, - 0x2f, 0x6e, 0xbc, 0x22, 0x7c, 0x46, 0x95, 0xb8, 0xf1, 0xdf, 0x17, 0x4d, 0x1c, 0x9f, 0xa2, 0x5e, - 0x94, 0xc8, 0x65, 0x40, 0x49, 0x06, 0x76, 0xcb, 0xc4, 0xd8, 0xd5, 0xc0, 0x6b, 0x92, 0xc1, 0xea, - 0x30, 0xcf, 0x93, 0xc8, 0xde, 0xa9, 0x0f, 0xdf, 0xe4, 0x49, 0xa4, 0x53, 0x90, 0xc9, 0x2f, 0x60, - 0xb7, 0x87, 0xd6, 0xa8, 0xed, 0x9b, 0x35, 0x7e, 0x86, 0xf6, 0xe1, 0x67, 0xce, 0x24, 0x04, 0x02, - 0x7e, 0xca, 0x13, 0x01, 0x91, 0xbd, 0x3b, 0xb4, 0x46, 0x5d, 0x7f, 0xaf, 0x80, 0xfd, 0x12, 0xc5, - 0x0e, 0xea, 0xbe, 0x15, 0x8c, 0x2a, 0xa0, 0x91, 0xdd, 0x29, 0x1c, 0x57, 0x7b, 0xe7, 0x02, 0x1d, - 0xdf, 0x1d, 0x3f, 0x1e, 0xa0, 0x9d, 0x25, 0x54, 0x54, 0xea, 0x25, 0x3e, 0x44, 0xbb, 0xd7, 0x24, - 0xcd, 0xab, 0xd0, 0x8b, 0xcd, 0xf3, 0xd6, 0x17, 0x96, 0xfb, 0x4f, 0x0b, 0x3d, 0xd9, 0x60, 0xf2, - 0x25, 0x3a, 0x5c, 0x90, 0x70, 0x09, 0x34, 0x0a, 0xa4, 0x62, 0x02, 0x82, 0x48, 0x24, 0xd7, 0x20, - 0x8c, 0xb7, 0xbd, 0xc9, 0x49, 0x49, 0xe5, 0x57, 0x85, 0xc9, 0x5c, 0x5b, 0x5c, 0x18, 0x03, 0x1f, - 0x2f, 0x6e, 0x61, 0x3a, 0xf9, 0x35, 0xc6, 0xcc, 0x5a, 0x63, 0xea, 0x86, 0x43, 0x49, 0x94, 0x59, - 0xe3, 0x8f, 0x50, 0xff, 0x9a, 0xa5, 0x79, 0x06, 0x05, 0xc1, 0x6d, 0x73, 0x84, 0x0a, 0xc8, 0x50, - 0xfc, 0x14, 0x21, 0xce, 0x84, 0x0a, 0x42, 0x96, 0x53, 0x65, 0xc8, 0xda, 0xf5, 0x7b, 0x1a, 0x99, - 0x6a, 0x40, 0x57, 0xc0, 0x1c, 0x1b, 0xb1, 0x74, 0x8c, 0x58, 0xba, 0x1a, 0x38, 0x17, 0xb1, 0xc4, - 0xaf, 0xd1, 0x11, 0x2f, 0x34, 0x17, 0x54, 0x2a, 0x0d, 0x24, 0x87, 0xd0, 0x7e, 0x3c, 0xb4, 0x46, - 0xfd, 0x89, 0x53, 0xa6, 0x74, 0x87, 0x2e, 0xfd, 0x03, 0x7e, 0x87, 0x58, 0x67, 0x08, 0x4b, 0x1e, - 0x2d, 0x1b, 0xce, 0xba, 0xc6, 0xd9, 0x07, 0x5b, 0xa4, 0xe6, 0x0f, 0x64, 0x03, 0x71, 0x7f, 0x45, - 0x7b, 0xab, 0xbd, 0x22, 0x2a, 0x97, 0xba, 0x4a, 0x52, 0x11, 0x05, 0x65, 0xe5, 0x8a, 0x8d, 0xce, - 0x0d, 0x84, 0x60, 0x22, 0xc8, 0x64, 0x5c, 0x49, 0xcf, 0x00, 0xaf, 0x64, 0xbc, 0xe2, 0x45, 0x2a, - 0x22, 0x94, 0xa1, 0xb4, 0xe4, 0x65, 0xae, 0x01, 0x7c, 0x82, 0x0c, 0x0d, 0x81, 0xd6, 0x4f, 0xdb, - 0x1c, 0x3e, 0xd6, 0xfb, 0x19, 0x8d, 0xdc, 0x2f, 0xd1, 0x51, 0xf5, 0xfc, 0x54, 0x00, 0x51, 0x46, - 0x74, 0x20, 0x15, 0x7e, 0x86, 0xda, 0x26, 0x21, 0xcb, 0x24, 0x74, 0x50, 0x26, 0xb4, 0x91, 0x8c, - 0x31, 0x70, 0xff, 0xb6, 0x6a, 0x17, 0x17, 0x90, 0x42, 0xed, 0xe2, 0x41, 0x34, 0xb4, 0xd1, 0x85, - 0xed, 0x46, 0x17, 0x7e, 0x8c, 0x06, 0x61, 0x0a, 0x84, 0xe6, 0xbc, 0xd9, 0x72, 0xfb, 0x25, 0x5e, - 0xf5, 0x9c, 0xfb, 0xbb, 0x85, 0x70, 0x95, 0xd6, 0x37, 0xa0, 0x1e, 0x32, 0x27, 0xf7, 0x37, 0x0b, - 0x0d, 0xaa, 0x58, 0x7c, 0x90, 0x9c, 0x51, 0x09, 0xff, 0xb9, 0x40, 0xf8, 0x0c, 0x75, 0xa4, 0x51, - 0x96, 0x79, 0xa7, 0x3f, 0x39, 0x6a, 0x9a, 0x9a, 0x43, 0xbf, 0x34, 0xc2, 0x36, 0x7a, 0x1c, 0x99, - 0x32, 0x16, 0x43, 0xac, 0xeb, 0x57, 0x5b, 0xf7, 0x0f, 0x0b, 0x1d, 0x56, 0x97, 0x2e, 0x13, 0xa9, - 0x56, 0xa1, 0x7c, 0x8b, 0x7a, 0x55, 0x17, 0xc8, 0x72, 0xd8, 0x7e, 0xd2, 0x78, 0x64, 0xdd, 0x7e, - 0x05, 0xca, 0x62, 0xd0, 0xd6, 0x97, 0x9d, 0x37, 0x75, 0x37, 0xc8, 0x6d, 0x53, 0xec, 0x6c, 0x7d, - 0x8a, 0xd5, 0xbd, 0xd6, 0x24, 0x68, 0x7d, 0xbc, 0xad, 0x17, 0xf3, 0x92, 0xc5, 0x0f, 0x5a, 0xcc, - 0x14, 0x1d, 0xd7, 0xa1, 0xf2, 0x94, 0x84, 0xff, 0xbb, 0xe5, 0xb4, 0x8c, 0x15, 0x88, 0x2c, 0xa1, - 0x44, 0x41, 0x20, 0x93, 0x98, 0x92, 0xb4, 0x7c, 0x76, 0x7f, 0x85, 0xcf, 0x0d, 0x3c, 0xf9, 0xb3, - 0x8d, 0xf6, 0x57, 0x1e, 0x40, 0x5c, 0x27, 0x21, 0xe0, 0x17, 0x35, 0xc9, 0x45, 0xcf, 0xe3, 0x0f, - 0x1b, 0x6f, 0x6d, 0x8c, 0x02, 0x67, 0x1b, 0xc3, 0xee, 0xa3, 0x75, 0x57, 0x45, 0xef, 0xdf, 0x72, - 0xb5, 0x31, 0x12, 0xee, 0x73, 0x35, 0x45, 0xfd, 0xb5, 0x7e, 0xc3, 0x27, 0x0d, 0xcb, 0xba, 0x07, - 0xef, 0x73, 0x32, 0xab, 0xff, 0xc6, 0xb4, 0xe2, 0xf0, 0xb1, 0x57, 0x7c, 0x11, 0x79, 0xd5, 0x17, - 0x91, 0x37, 0xd3, 0x5f, 0x44, 0xce, 0xe9, 0x3d, 0xf2, 0x74, 0x1f, 0xe1, 0xe7, 0x75, 0x2c, 0x97, - 0x2c, 0xbe, 0x15, 0x4b, 0x2d, 0x21, 0xe7, 0x89, 0x67, 0x36, 0xd5, 0xcd, 0x4f, 0x2d, 0x3c, 0x45, - 0xef, 0x55, 0x76, 0x3f, 0x10, 0x15, 0x5e, 0x6d, 0x8d, 0x61, 0x0b, 0x6e, 0x9c, 0xbc, 0xac, 0xab, - 0x56, 0x8a, 0x04, 0x3f, 0xbd, 0x95, 0xf5, 0xba, 0x78, 0xee, 0x23, 0xe5, 0x73, 0x84, 0xbe, 0x07, - 0x21, 0x13, 0x46, 0x35, 0xb1, 0xdb, 0xc2, 0x19, 0x78, 0xa5, 0x51, 0x75, 0x73, 0xd1, 0x31, 0x16, - 0x9f, 0xfd, 0x1b, 0x00, 0x00, 0xff, 0xff, 0x3b, 0xa6, 0xad, 0x6f, 0xa5, 0x0a, 0x00, 0x00, +var File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDesc = []byte{ + 0x0a, 0x46, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x1a, + 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x44, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, + 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, + 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x43, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, + 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, + 0x2d, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x41, 0x0a, 0x13, 0x50, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x16, + 0x0a, 0x06, 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x62, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x61, 0x72, 0x67, 0x73, 0x22, 0xcb, 0x02, 0x0a, 0x10, 0x53, + 0x70, 0x64, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, + 0x5e, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x70, 0x64, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x72, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x12, + 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, + 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x64, 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, + 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x64, 0x1a, 0x44, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xf7, 0x02, 0x0a, 0x0c, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x4b, 0x0a, 0x14, 0x62, 0x61, 0x63, + 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, + 0x65, 0x72, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1f, + 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x72, 0x67, 0x73, 0x12, 0x4e, 0x0a, 0x15, 0x70, + 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, + 0x73, 0x70, 0x65, 0x63, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x13, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x45, 0x0a, 0x12, 0x73, + 0x70, 0x64, 0x6b, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x73, 0x70, 0x65, + 0x63, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x53, 0x70, 0x64, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x10, 0x73, 0x70, 0x64, 0x6b, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, + 0x65, 0x63, 0x22, 0x7d, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x72, + 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x65, + 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x45, 0x6e, + 0x64, 0x22, 0x40, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x73, 0x70, + 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, + 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, + 0x70, 0x65, 0x63, 0x22, 0xd4, 0x01, 0x0a, 0x15, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, + 0x14, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x64, + 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, + 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x6c, 0x65, 0x61, 0x6e, + 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x89, 0x01, 0x0a, 0x12, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x6f, + 0x72, 0x65, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, + 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, + 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x10, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x04, 0x73, + 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, + 0x73, 0x70, 0x65, 0x63, 0x12, 0x2d, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0xb7, 0x01, + 0x0a, 0x14, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, + 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, + 0x1a, 0x55, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x89, 0x01, 0x0a, 0x12, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, + 0x0a, 0x14, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, + 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, + 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, + 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x22, 0x6c, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, + 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, + 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, + 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x29, 0x0a, 0x10, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, + 0x61, 0x74, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x53, 0x69, 0x67, 0x6e, 0x61, + 0x6c, 0x32, 0xb9, 0x04, 0x0a, 0x0f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x49, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x49, 0x0a, 0x0e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x17, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0b, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x45, 0x0a, 0x0c, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, + 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0b, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x6e, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x0c, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x30, 0x01, 0x12, 0x43, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x57, + 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x30, 0x01, 0x12, 0x4b, 0x0a, 0x0f, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x12, 0x1d, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x0a, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x10, 0x2e, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x39, 0x5a, + 0x37, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, + 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, + 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescData = file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDescData +} + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_goTypes = []interface{}{ + (*ProcessInstanceSpec)(nil), // 0: imrpc.ProcessInstanceSpec + (*SpdkInstanceSpec)(nil), // 1: imrpc.SpdkInstanceSpec + (*InstanceSpec)(nil), // 2: imrpc.InstanceSpec + (*InstanceStatus)(nil), // 3: imrpc.InstanceStatus + (*InstanceCreateRequest)(nil), // 4: imrpc.InstanceCreateRequest + (*InstanceDeleteRequest)(nil), // 5: imrpc.InstanceDeleteRequest + (*InstanceGetRequest)(nil), // 6: imrpc.InstanceGetRequest + (*InstanceResponse)(nil), // 7: imrpc.InstanceResponse + (*InstanceListResponse)(nil), // 8: imrpc.InstanceListResponse + (*InstanceLogRequest)(nil), // 9: imrpc.InstanceLogRequest + (*InstanceReplaceRequest)(nil), // 10: imrpc.InstanceReplaceRequest + nil, // 11: imrpc.SpdkInstanceSpec.ReplicaAddressMapEntry + nil, // 12: imrpc.InstanceListResponse.InstancesEntry + (BackendStoreDriver)(0), // 13: imrpc.BackendStoreDriver + (*emptypb.Empty)(nil), // 14: google.protobuf.Empty + (*LogResponse)(nil), // 15: LogResponse + (*VersionResponse)(nil), // 16: VersionResponse +} +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_depIdxs = []int32{ + 11, // 0: imrpc.SpdkInstanceSpec.replica_address_map:type_name -> imrpc.SpdkInstanceSpec.ReplicaAddressMapEntry + 13, // 1: imrpc.InstanceSpec.backend_store_driver:type_name -> imrpc.BackendStoreDriver + 0, // 2: imrpc.InstanceSpec.process_instance_spec:type_name -> imrpc.ProcessInstanceSpec + 1, // 3: imrpc.InstanceSpec.spdk_instance_spec:type_name -> imrpc.SpdkInstanceSpec + 2, // 4: imrpc.InstanceCreateRequest.spec:type_name -> imrpc.InstanceSpec + 13, // 5: imrpc.InstanceDeleteRequest.backend_store_driver:type_name -> imrpc.BackendStoreDriver + 13, // 6: imrpc.InstanceGetRequest.backend_store_driver:type_name -> imrpc.BackendStoreDriver + 2, // 7: imrpc.InstanceResponse.spec:type_name -> imrpc.InstanceSpec + 3, // 8: imrpc.InstanceResponse.status:type_name -> imrpc.InstanceStatus + 12, // 9: imrpc.InstanceListResponse.instances:type_name -> imrpc.InstanceListResponse.InstancesEntry + 13, // 10: imrpc.InstanceLogRequest.backend_store_driver:type_name -> imrpc.BackendStoreDriver + 2, // 11: imrpc.InstanceReplaceRequest.spec:type_name -> imrpc.InstanceSpec + 7, // 12: imrpc.InstanceListResponse.InstancesEntry.value:type_name -> imrpc.InstanceResponse + 4, // 13: imrpc.InstanceService.InstanceCreate:input_type -> imrpc.InstanceCreateRequest + 5, // 14: imrpc.InstanceService.InstanceDelete:input_type -> imrpc.InstanceDeleteRequest + 6, // 15: imrpc.InstanceService.InstanceGet:input_type -> imrpc.InstanceGetRequest + 14, // 16: imrpc.InstanceService.InstanceList:input_type -> google.protobuf.Empty + 9, // 17: imrpc.InstanceService.InstanceLog:input_type -> imrpc.InstanceLogRequest + 14, // 18: imrpc.InstanceService.InstanceWatch:input_type -> google.protobuf.Empty + 10, // 19: imrpc.InstanceService.InstanceReplace:input_type -> imrpc.InstanceReplaceRequest + 14, // 20: imrpc.InstanceService.VersionGet:input_type -> google.protobuf.Empty + 7, // 21: imrpc.InstanceService.InstanceCreate:output_type -> imrpc.InstanceResponse + 7, // 22: imrpc.InstanceService.InstanceDelete:output_type -> imrpc.InstanceResponse + 7, // 23: imrpc.InstanceService.InstanceGet:output_type -> imrpc.InstanceResponse + 8, // 24: imrpc.InstanceService.InstanceList:output_type -> imrpc.InstanceListResponse + 15, // 25: imrpc.InstanceService.InstanceLog:output_type -> LogResponse + 14, // 26: imrpc.InstanceService.InstanceWatch:output_type -> google.protobuf.Empty + 7, // 27: imrpc.InstanceService.InstanceReplace:output_type -> imrpc.InstanceResponse + 16, // 28: imrpc.InstanceService.VersionGet:output_type -> VersionResponse + 21, // [21:29] is the sub-list for method output_type + 13, // [13:21] is the sub-list for method input_type + 13, // [13:13] is the sub-list for extension type_name + 13, // [13:13] is the sub-list for extension extendee + 0, // [0:13] is the sub-list for field type_name +} + +func init() { file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_init() } +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_init() { + if File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto != nil { + return + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_init() + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_imrpc_proto_init() + if !protoimpl.UnsafeEnabled { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProcessInstanceSpec); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SpdkInstanceSpec); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceSpec); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceLogRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstanceReplaceRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDesc, + NumEnums: 0, + NumMessages: 13, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_depIdxs, + MessageInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_msgTypes, + }.Build() + File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto = out.File + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_rawDesc = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_goTypes = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_instance_proto_depIdxs = nil } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConn +var _ grpc.ClientConnInterface // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +const _ = grpc.SupportPackageIsVersion6 // InstanceServiceClient is the client API for InstanceService service. // @@ -768,18 +1182,18 @@ type InstanceServiceClient interface { InstanceCreate(ctx context.Context, in *InstanceCreateRequest, opts ...grpc.CallOption) (*InstanceResponse, error) InstanceDelete(ctx context.Context, in *InstanceDeleteRequest, opts ...grpc.CallOption) (*InstanceResponse, error) InstanceGet(ctx context.Context, in *InstanceGetRequest, opts ...grpc.CallOption) (*InstanceResponse, error) - InstanceList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*InstanceListResponse, error) + InstanceList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InstanceListResponse, error) InstanceLog(ctx context.Context, in *InstanceLogRequest, opts ...grpc.CallOption) (InstanceService_InstanceLogClient, error) - InstanceWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (InstanceService_InstanceWatchClient, error) + InstanceWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (InstanceService_InstanceWatchClient, error) InstanceReplace(ctx context.Context, in *InstanceReplaceRequest, opts ...grpc.CallOption) (*InstanceResponse, error) - VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) + VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error) } type instanceServiceClient struct { - cc *grpc.ClientConn + cc grpc.ClientConnInterface } -func NewInstanceServiceClient(cc *grpc.ClientConn) InstanceServiceClient { +func NewInstanceServiceClient(cc grpc.ClientConnInterface) InstanceServiceClient { return &instanceServiceClient{cc} } @@ -810,7 +1224,7 @@ func (c *instanceServiceClient) InstanceGet(ctx context.Context, in *InstanceGet return out, nil } -func (c *instanceServiceClient) InstanceList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*InstanceListResponse, error) { +func (c *instanceServiceClient) InstanceList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*InstanceListResponse, error) { out := new(InstanceListResponse) err := c.cc.Invoke(ctx, "/imrpc.InstanceService/InstanceList", in, out, opts...) if err != nil { @@ -851,7 +1265,7 @@ func (x *instanceServiceInstanceLogClient) Recv() (*LogResponse, error) { return m, nil } -func (c *instanceServiceClient) InstanceWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (InstanceService_InstanceWatchClient, error) { +func (c *instanceServiceClient) InstanceWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (InstanceService_InstanceWatchClient, error) { stream, err := c.cc.NewStream(ctx, &_InstanceService_serviceDesc.Streams[1], "/imrpc.InstanceService/InstanceWatch", opts...) if err != nil { return nil, err @@ -867,7 +1281,7 @@ func (c *instanceServiceClient) InstanceWatch(ctx context.Context, in *empty.Emp } type InstanceService_InstanceWatchClient interface { - Recv() (*empty.Empty, error) + Recv() (*emptypb.Empty, error) grpc.ClientStream } @@ -875,8 +1289,8 @@ type instanceServiceInstanceWatchClient struct { grpc.ClientStream } -func (x *instanceServiceInstanceWatchClient) Recv() (*empty.Empty, error) { - m := new(empty.Empty) +func (x *instanceServiceInstanceWatchClient) Recv() (*emptypb.Empty, error) { + m := new(emptypb.Empty) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } @@ -892,7 +1306,7 @@ func (c *instanceServiceClient) InstanceReplace(ctx context.Context, in *Instanc return out, nil } -func (c *instanceServiceClient) VersionGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { +func (c *instanceServiceClient) VersionGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionResponse, error) { out := new(VersionResponse) err := c.cc.Invoke(ctx, "/imrpc.InstanceService/VersionGet", in, out, opts...) if err != nil { @@ -906,39 +1320,39 @@ type InstanceServiceServer interface { InstanceCreate(context.Context, *InstanceCreateRequest) (*InstanceResponse, error) InstanceDelete(context.Context, *InstanceDeleteRequest) (*InstanceResponse, error) InstanceGet(context.Context, *InstanceGetRequest) (*InstanceResponse, error) - InstanceList(context.Context, *empty.Empty) (*InstanceListResponse, error) + InstanceList(context.Context, *emptypb.Empty) (*InstanceListResponse, error) InstanceLog(*InstanceLogRequest, InstanceService_InstanceLogServer) error - InstanceWatch(*empty.Empty, InstanceService_InstanceWatchServer) error + InstanceWatch(*emptypb.Empty, InstanceService_InstanceWatchServer) error InstanceReplace(context.Context, *InstanceReplaceRequest) (*InstanceResponse, error) - VersionGet(context.Context, *empty.Empty) (*VersionResponse, error) + VersionGet(context.Context, *emptypb.Empty) (*VersionResponse, error) } // UnimplementedInstanceServiceServer can be embedded to have forward compatible implementations. type UnimplementedInstanceServiceServer struct { } -func (*UnimplementedInstanceServiceServer) InstanceCreate(ctx context.Context, req *InstanceCreateRequest) (*InstanceResponse, error) { +func (*UnimplementedInstanceServiceServer) InstanceCreate(context.Context, *InstanceCreateRequest) (*InstanceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method InstanceCreate not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceDelete(ctx context.Context, req *InstanceDeleteRequest) (*InstanceResponse, error) { +func (*UnimplementedInstanceServiceServer) InstanceDelete(context.Context, *InstanceDeleteRequest) (*InstanceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method InstanceDelete not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceGet(ctx context.Context, req *InstanceGetRequest) (*InstanceResponse, error) { +func (*UnimplementedInstanceServiceServer) InstanceGet(context.Context, *InstanceGetRequest) (*InstanceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method InstanceGet not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceList(ctx context.Context, req *empty.Empty) (*InstanceListResponse, error) { +func (*UnimplementedInstanceServiceServer) InstanceList(context.Context, *emptypb.Empty) (*InstanceListResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method InstanceList not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceLog(req *InstanceLogRequest, srv InstanceService_InstanceLogServer) error { +func (*UnimplementedInstanceServiceServer) InstanceLog(*InstanceLogRequest, InstanceService_InstanceLogServer) error { return status.Errorf(codes.Unimplemented, "method InstanceLog not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceWatch(req *empty.Empty, srv InstanceService_InstanceWatchServer) error { +func (*UnimplementedInstanceServiceServer) InstanceWatch(*emptypb.Empty, InstanceService_InstanceWatchServer) error { return status.Errorf(codes.Unimplemented, "method InstanceWatch not implemented") } -func (*UnimplementedInstanceServiceServer) InstanceReplace(ctx context.Context, req *InstanceReplaceRequest) (*InstanceResponse, error) { +func (*UnimplementedInstanceServiceServer) InstanceReplace(context.Context, *InstanceReplaceRequest) (*InstanceResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method InstanceReplace not implemented") } -func (*UnimplementedInstanceServiceServer) VersionGet(ctx context.Context, req *empty.Empty) (*VersionResponse, error) { +func (*UnimplementedInstanceServiceServer) VersionGet(context.Context, *emptypb.Empty) (*VersionResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VersionGet not implemented") } @@ -1001,7 +1415,7 @@ func _InstanceService_InstanceGet_Handler(srv interface{}, ctx context.Context, } func _InstanceService_InstanceList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -1013,7 +1427,7 @@ func _InstanceService_InstanceList_Handler(srv interface{}, ctx context.Context, FullMethod: "/imrpc.InstanceService/InstanceList", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InstanceServiceServer).InstanceList(ctx, req.(*empty.Empty)) + return srv.(InstanceServiceServer).InstanceList(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } @@ -1040,7 +1454,7 @@ func (x *instanceServiceInstanceLogServer) Send(m *LogResponse) error { } func _InstanceService_InstanceWatch_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(empty.Empty) + m := new(emptypb.Empty) if err := stream.RecvMsg(m); err != nil { return err } @@ -1048,7 +1462,7 @@ func _InstanceService_InstanceWatch_Handler(srv interface{}, stream grpc.ServerS } type InstanceService_InstanceWatchServer interface { - Send(*empty.Empty) error + Send(*emptypb.Empty) error grpc.ServerStream } @@ -1056,7 +1470,7 @@ type instanceServiceInstanceWatchServer struct { grpc.ServerStream } -func (x *instanceServiceInstanceWatchServer) Send(m *empty.Empty) error { +func (x *instanceServiceInstanceWatchServer) Send(m *emptypb.Empty) error { return x.ServerStream.SendMsg(m) } @@ -1079,7 +1493,7 @@ func _InstanceService_InstanceReplace_Handler(srv interface{}, ctx context.Conte } func _InstanceService_VersionGet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -1091,7 +1505,7 @@ func _InstanceService_VersionGet_Handler(srv interface{}, ctx context.Context, d FullMethod: "/imrpc.InstanceService/VersionGet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(InstanceServiceServer).VersionGet(ctx, req.(*empty.Empty)) + return srv.(InstanceServiceServer).VersionGet(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto index dcd51a5e96..a518f4b9dd 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/instance.proto @@ -2,6 +2,8 @@ syntax="proto3"; package imrpc; +option go_package = "github.com/longhorn/longhorn-instance-manager/pkg/imrpc"; + import "google/protobuf/empty.proto"; import "github.com/longhorn/longhorn-instance-manager/pkg/imrpc/common.proto"; import "github.com/longhorn/longhorn-instance-manager/pkg/imrpc/imrpc.proto"; diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.pb.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.pb.go index a317730e23..7b5f8d2f41 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.pb.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.pb.go @@ -1,673 +1,775 @@ // Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 // source: github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto package imrpc import ( context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - empty "github.com/golang/protobuf/ptypes/empty" ptypes "github.com/longhorn/longhorn-engine/proto/ptypes" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type ProxyEngineRequest struct { - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - BackendStoreDriver BackendStoreDriver `protobuf:"varint,2,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` - EngineName string `protobuf:"bytes,3,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` - VolumeName string `protobuf:"bytes,4,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ProxyEngineRequest) Reset() { *m = ProxyEngineRequest{} } -func (m *ProxyEngineRequest) String() string { return proto.CompactTextString(m) } -func (*ProxyEngineRequest) ProtoMessage() {} -func (*ProxyEngineRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{0} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ProxyEngineRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ProxyEngineRequest.Unmarshal(m, b) -} -func (m *ProxyEngineRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ProxyEngineRequest.Marshal(b, m, deterministic) + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` + BackendStoreDriver BackendStoreDriver `protobuf:"varint,2,opt,name=backend_store_driver,json=backendStoreDriver,proto3,enum=imrpc.BackendStoreDriver" json:"backend_store_driver,omitempty"` + EngineName string `protobuf:"bytes,3,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` + VolumeName string `protobuf:"bytes,4,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` } -func (m *ProxyEngineRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ProxyEngineRequest.Merge(m, src) + +func (x *ProxyEngineRequest) Reset() { + *x = ProxyEngineRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ProxyEngineRequest) XXX_Size() int { - return xxx_messageInfo_ProxyEngineRequest.Size(m) + +func (x *ProxyEngineRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ProxyEngineRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ProxyEngineRequest.DiscardUnknown(m) + +func (*ProxyEngineRequest) ProtoMessage() {} + +func (x *ProxyEngineRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ProxyEngineRequest proto.InternalMessageInfo +// Deprecated: Use ProxyEngineRequest.ProtoReflect.Descriptor instead. +func (*ProxyEngineRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{0} +} -func (m *ProxyEngineRequest) GetAddress() string { - if m != nil { - return m.Address +func (x *ProxyEngineRequest) GetAddress() string { + if x != nil { + return x.Address } return "" } -func (m *ProxyEngineRequest) GetBackendStoreDriver() BackendStoreDriver { - if m != nil { - return m.BackendStoreDriver +func (x *ProxyEngineRequest) GetBackendStoreDriver() BackendStoreDriver { + if x != nil { + return x.BackendStoreDriver } return BackendStoreDriver_v1 } -func (m *ProxyEngineRequest) GetEngineName() string { - if m != nil { - return m.EngineName +func (x *ProxyEngineRequest) GetEngineName() string { + if x != nil { + return x.EngineName } return "" } -func (m *ProxyEngineRequest) GetVolumeName() string { - if m != nil { - return m.VolumeName +func (x *ProxyEngineRequest) GetVolumeName() string { + if x != nil { + return x.VolumeName } return "" } type EngineVersionProxyResponse struct { - Version *ptypes.VersionOutput `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVersionProxyResponse) Reset() { *m = EngineVersionProxyResponse{} } -func (m *EngineVersionProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineVersionProxyResponse) ProtoMessage() {} -func (*EngineVersionProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{1} + Version *ptypes.VersionOutput `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` } -func (m *EngineVersionProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVersionProxyResponse.Unmarshal(m, b) -} -func (m *EngineVersionProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVersionProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineVersionProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVersionProxyResponse.Merge(m, src) +func (x *EngineVersionProxyResponse) Reset() { + *x = EngineVersionProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVersionProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineVersionProxyResponse.Size(m) + +func (x *EngineVersionProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVersionProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVersionProxyResponse.DiscardUnknown(m) + +func (*EngineVersionProxyResponse) ProtoMessage() {} + +func (x *EngineVersionProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVersionProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineVersionProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineVersionProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{1} +} -func (m *EngineVersionProxyResponse) GetVersion() *ptypes.VersionOutput { - if m != nil { - return m.Version +func (x *EngineVersionProxyResponse) GetVersion() *ptypes.VersionOutput { + if x != nil { + return x.Version } return nil } type EngineVolumeGetProxyResponse struct { - Volume *ptypes.Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVolumeGetProxyResponse) Reset() { *m = EngineVolumeGetProxyResponse{} } -func (m *EngineVolumeGetProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineVolumeGetProxyResponse) ProtoMessage() {} -func (*EngineVolumeGetProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{2} + Volume *ptypes.Volume `protobuf:"bytes,1,opt,name=volume,proto3" json:"volume,omitempty"` } -func (m *EngineVolumeGetProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeGetProxyResponse.Unmarshal(m, b) -} -func (m *EngineVolumeGetProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeGetProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineVolumeGetProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeGetProxyResponse.Merge(m, src) +func (x *EngineVolumeGetProxyResponse) Reset() { + *x = EngineVolumeGetProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeGetProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineVolumeGetProxyResponse.Size(m) + +func (x *EngineVolumeGetProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVolumeGetProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeGetProxyResponse.DiscardUnknown(m) + +func (*EngineVolumeGetProxyResponse) ProtoMessage() {} + +func (x *EngineVolumeGetProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeGetProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineVolumeGetProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineVolumeGetProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{2} +} -func (m *EngineVolumeGetProxyResponse) GetVolume() *ptypes.Volume { - if m != nil { - return m.Volume +func (x *EngineVolumeGetProxyResponse) GetVolume() *ptypes.Volume { + if x != nil { + return x.Volume } return nil } type EngineVolumeExpandRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - Expand *ptypes.VolumeExpandRequest `protobuf:"bytes,2,opt,name=expand,proto3" json:"expand,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVolumeExpandRequest) Reset() { *m = EngineVolumeExpandRequest{} } -func (m *EngineVolumeExpandRequest) String() string { return proto.CompactTextString(m) } -func (*EngineVolumeExpandRequest) ProtoMessage() {} -func (*EngineVolumeExpandRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{3} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + Expand *ptypes.VolumeExpandRequest `protobuf:"bytes,2,opt,name=expand,proto3" json:"expand,omitempty"` } -func (m *EngineVolumeExpandRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeExpandRequest.Unmarshal(m, b) -} -func (m *EngineVolumeExpandRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeExpandRequest.Marshal(b, m, deterministic) -} -func (m *EngineVolumeExpandRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeExpandRequest.Merge(m, src) +func (x *EngineVolumeExpandRequest) Reset() { + *x = EngineVolumeExpandRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeExpandRequest) XXX_Size() int { - return xxx_messageInfo_EngineVolumeExpandRequest.Size(m) + +func (x *EngineVolumeExpandRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVolumeExpandRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeExpandRequest.DiscardUnknown(m) + +func (*EngineVolumeExpandRequest) ProtoMessage() {} + +func (x *EngineVolumeExpandRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeExpandRequest proto.InternalMessageInfo +// Deprecated: Use EngineVolumeExpandRequest.ProtoReflect.Descriptor instead. +func (*EngineVolumeExpandRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{3} +} -func (m *EngineVolumeExpandRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineVolumeExpandRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineVolumeExpandRequest) GetExpand() *ptypes.VolumeExpandRequest { - if m != nil { - return m.Expand +func (x *EngineVolumeExpandRequest) GetExpand() *ptypes.VolumeExpandRequest { + if x != nil { + return x.Expand } return nil } type EngineVolumeFrontendStartRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - FrontendStart *ptypes.VolumeFrontendStartRequest `protobuf:"bytes,2,opt,name=frontend_start,json=frontendStart,proto3" json:"frontend_start,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVolumeFrontendStartRequest) Reset() { *m = EngineVolumeFrontendStartRequest{} } -func (m *EngineVolumeFrontendStartRequest) String() string { return proto.CompactTextString(m) } -func (*EngineVolumeFrontendStartRequest) ProtoMessage() {} -func (*EngineVolumeFrontendStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{4} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + FrontendStart *ptypes.VolumeFrontendStartRequest `protobuf:"bytes,2,opt,name=frontend_start,json=frontendStart,proto3" json:"frontend_start,omitempty"` } -func (m *EngineVolumeFrontendStartRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeFrontendStartRequest.Unmarshal(m, b) -} -func (m *EngineVolumeFrontendStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeFrontendStartRequest.Marshal(b, m, deterministic) -} -func (m *EngineVolumeFrontendStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeFrontendStartRequest.Merge(m, src) +func (x *EngineVolumeFrontendStartRequest) Reset() { + *x = EngineVolumeFrontendStartRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeFrontendStartRequest) XXX_Size() int { - return xxx_messageInfo_EngineVolumeFrontendStartRequest.Size(m) + +func (x *EngineVolumeFrontendStartRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVolumeFrontendStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeFrontendStartRequest.DiscardUnknown(m) + +func (*EngineVolumeFrontendStartRequest) ProtoMessage() {} + +func (x *EngineVolumeFrontendStartRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeFrontendStartRequest proto.InternalMessageInfo +// Deprecated: Use EngineVolumeFrontendStartRequest.ProtoReflect.Descriptor instead. +func (*EngineVolumeFrontendStartRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{4} +} -func (m *EngineVolumeFrontendStartRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineVolumeFrontendStartRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineVolumeFrontendStartRequest) GetFrontendStart() *ptypes.VolumeFrontendStartRequest { - if m != nil { - return m.FrontendStart +func (x *EngineVolumeFrontendStartRequest) GetFrontendStart() *ptypes.VolumeFrontendStartRequest { + if x != nil { + return x.FrontendStart } return nil } type EngineVolumeSnapshotRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - SnapshotVolume *ptypes.VolumeSnapshotRequest `protobuf:"bytes,2,opt,name=snapshot_volume,json=snapshotVolume,proto3" json:"snapshot_volume,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVolumeSnapshotRequest) Reset() { *m = EngineVolumeSnapshotRequest{} } -func (m *EngineVolumeSnapshotRequest) String() string { return proto.CompactTextString(m) } -func (*EngineVolumeSnapshotRequest) ProtoMessage() {} -func (*EngineVolumeSnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{5} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + SnapshotVolume *ptypes.VolumeSnapshotRequest `protobuf:"bytes,2,opt,name=snapshot_volume,json=snapshotVolume,proto3" json:"snapshot_volume,omitempty"` } -func (m *EngineVolumeSnapshotRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeSnapshotRequest.Unmarshal(m, b) -} -func (m *EngineVolumeSnapshotRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeSnapshotRequest.Marshal(b, m, deterministic) -} -func (m *EngineVolumeSnapshotRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeSnapshotRequest.Merge(m, src) +func (x *EngineVolumeSnapshotRequest) Reset() { + *x = EngineVolumeSnapshotRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeSnapshotRequest) XXX_Size() int { - return xxx_messageInfo_EngineVolumeSnapshotRequest.Size(m) + +func (x *EngineVolumeSnapshotRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVolumeSnapshotRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeSnapshotRequest.DiscardUnknown(m) + +func (*EngineVolumeSnapshotRequest) ProtoMessage() {} + +func (x *EngineVolumeSnapshotRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeSnapshotRequest proto.InternalMessageInfo +// Deprecated: Use EngineVolumeSnapshotRequest.ProtoReflect.Descriptor instead. +func (*EngineVolumeSnapshotRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{5} +} -func (m *EngineVolumeSnapshotRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineVolumeSnapshotRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineVolumeSnapshotRequest) GetSnapshotVolume() *ptypes.VolumeSnapshotRequest { - if m != nil { - return m.SnapshotVolume +func (x *EngineVolumeSnapshotRequest) GetSnapshotVolume() *ptypes.VolumeSnapshotRequest { + if x != nil { + return x.SnapshotVolume } return nil } type EngineVolumeSnapshotProxyResponse struct { - Snapshot *ptypes.VolumeSnapshotReply `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineVolumeSnapshotProxyResponse) Reset() { *m = EngineVolumeSnapshotProxyResponse{} } -func (m *EngineVolumeSnapshotProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineVolumeSnapshotProxyResponse) ProtoMessage() {} -func (*EngineVolumeSnapshotProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{6} + Snapshot *ptypes.VolumeSnapshotReply `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"` } -func (m *EngineVolumeSnapshotProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeSnapshotProxyResponse.Unmarshal(m, b) -} -func (m *EngineVolumeSnapshotProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeSnapshotProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineVolumeSnapshotProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeSnapshotProxyResponse.Merge(m, src) +func (x *EngineVolumeSnapshotProxyResponse) Reset() { + *x = EngineVolumeSnapshotProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeSnapshotProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineVolumeSnapshotProxyResponse.Size(m) + +func (x *EngineVolumeSnapshotProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineVolumeSnapshotProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeSnapshotProxyResponse.DiscardUnknown(m) + +func (*EngineVolumeSnapshotProxyResponse) ProtoMessage() {} + +func (x *EngineVolumeSnapshotProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeSnapshotProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineVolumeSnapshotProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineVolumeSnapshotProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{6} +} -func (m *EngineVolumeSnapshotProxyResponse) GetSnapshot() *ptypes.VolumeSnapshotReply { - if m != nil { - return m.Snapshot +func (x *EngineVolumeSnapshotProxyResponse) GetSnapshot() *ptypes.VolumeSnapshotReply { + if x != nil { + return x.Snapshot } return nil } type EngineVolumeUnmapMarkSnapChainRemovedSetRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - UnmapMarkSnap *ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest `protobuf:"bytes,2,opt,name=unmap_mark_snap,json=unmapMarkSnap,proto3" json:"unmap_mark_snap,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + UnmapMarkSnap *ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest `protobuf:"bytes,2,opt,name=unmap_mark_snap,json=unmapMarkSnap,proto3" json:"unmap_mark_snap,omitempty"` } -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) Reset() { - *m = EngineVolumeUnmapMarkSnapChainRemovedSetRequest{} +func (x *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) Reset() { + *x = EngineVolumeUnmapMarkSnapChainRemovedSetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) String() string { - return proto.CompactTextString(m) + +func (x *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } + func (*EngineVolumeUnmapMarkSnapChainRemovedSetRequest) ProtoMessage() {} -func (*EngineVolumeUnmapMarkSnapChainRemovedSetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{7} -} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest.Unmarshal(m, b) -} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest.Marshal(b, m, deterministic) -} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest.Merge(m, src) -} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) XXX_Size() int { - return xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest.Size(m) -} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest.DiscardUnknown(m) +func (x *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineVolumeUnmapMarkSnapChainRemovedSetRequest proto.InternalMessageInfo +// Deprecated: Use EngineVolumeUnmapMarkSnapChainRemovedSetRequest.ProtoReflect.Descriptor instead. +func (*EngineVolumeUnmapMarkSnapChainRemovedSetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{7} +} -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) GetUnmapMarkSnap() *ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest { - if m != nil { - return m.UnmapMarkSnap +func (x *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) GetUnmapMarkSnap() *ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest { + if x != nil { + return x.UnmapMarkSnap } return nil } type EngineSnapshotListProxyResponse struct { - Disks map[string]*EngineSnapshotDiskInfo `protobuf:"bytes,1,rep,name=disks,proto3" json:"disks,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotListProxyResponse) Reset() { *m = EngineSnapshotListProxyResponse{} } -func (m *EngineSnapshotListProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotListProxyResponse) ProtoMessage() {} -func (*EngineSnapshotListProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{8} + Disks map[string]*EngineSnapshotDiskInfo `protobuf:"bytes,1,rep,name=disks,proto3" json:"disks,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineSnapshotListProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotListProxyResponse.Unmarshal(m, b) -} -func (m *EngineSnapshotListProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotListProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotListProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotListProxyResponse.Merge(m, src) +func (x *EngineSnapshotListProxyResponse) Reset() { + *x = EngineSnapshotListProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotListProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotListProxyResponse.Size(m) + +func (x *EngineSnapshotListProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotListProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotListProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotListProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotListProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotListProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotListProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotListProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{8} +} -func (m *EngineSnapshotListProxyResponse) GetDisks() map[string]*EngineSnapshotDiskInfo { - if m != nil { - return m.Disks +func (x *EngineSnapshotListProxyResponse) GetDisks() map[string]*EngineSnapshotDiskInfo { + if x != nil { + return x.Disks } return nil } type EngineSnapshotDiskInfo struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Parent string `protobuf:"bytes,2,opt,name=parent,proto3" json:"parent,omitempty"` - Children map[string]bool `protobuf:"bytes,3,rep,name=children,proto3" json:"children,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - Removed bool `protobuf:"varint,4,opt,name=removed,proto3" json:"removed,omitempty"` - UserCreated bool `protobuf:"varint,5,opt,name=user_created,json=userCreated,proto3" json:"user_created,omitempty"` - Created string `protobuf:"bytes,6,opt,name=created,proto3" json:"created,omitempty"` - Size string `protobuf:"bytes,7,opt,name=size,proto3" json:"size,omitempty"` - Labels map[string]string `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EngineSnapshotDiskInfo) Reset() { *m = EngineSnapshotDiskInfo{} } -func (m *EngineSnapshotDiskInfo) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotDiskInfo) ProtoMessage() {} -func (*EngineSnapshotDiskInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{9} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotDiskInfo) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotDiskInfo.Unmarshal(m, b) + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Parent string `protobuf:"bytes,2,opt,name=parent,proto3" json:"parent,omitempty"` + Children map[string]bool `protobuf:"bytes,3,rep,name=children,proto3" json:"children,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + Removed bool `protobuf:"varint,4,opt,name=removed,proto3" json:"removed,omitempty"` + UserCreated bool `protobuf:"varint,5,opt,name=user_created,json=userCreated,proto3" json:"user_created,omitempty"` + Created string `protobuf:"bytes,6,opt,name=created,proto3" json:"created,omitempty"` + Size string `protobuf:"bytes,7,opt,name=size,proto3" json:"size,omitempty"` + Labels map[string]string `protobuf:"bytes,8,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineSnapshotDiskInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotDiskInfo.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotDiskInfo) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotDiskInfo.Merge(m, src) + +func (x *EngineSnapshotDiskInfo) Reset() { + *x = EngineSnapshotDiskInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotDiskInfo) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotDiskInfo.Size(m) + +func (x *EngineSnapshotDiskInfo) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotDiskInfo) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotDiskInfo.DiscardUnknown(m) + +func (*EngineSnapshotDiskInfo) ProtoMessage() {} + +func (x *EngineSnapshotDiskInfo) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotDiskInfo proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotDiskInfo.ProtoReflect.Descriptor instead. +func (*EngineSnapshotDiskInfo) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{9} +} -func (m *EngineSnapshotDiskInfo) GetName() string { - if m != nil { - return m.Name +func (x *EngineSnapshotDiskInfo) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *EngineSnapshotDiskInfo) GetParent() string { - if m != nil { - return m.Parent +func (x *EngineSnapshotDiskInfo) GetParent() string { + if x != nil { + return x.Parent } return "" } -func (m *EngineSnapshotDiskInfo) GetChildren() map[string]bool { - if m != nil { - return m.Children +func (x *EngineSnapshotDiskInfo) GetChildren() map[string]bool { + if x != nil { + return x.Children } return nil } -func (m *EngineSnapshotDiskInfo) GetRemoved() bool { - if m != nil { - return m.Removed +func (x *EngineSnapshotDiskInfo) GetRemoved() bool { + if x != nil { + return x.Removed } return false } -func (m *EngineSnapshotDiskInfo) GetUserCreated() bool { - if m != nil { - return m.UserCreated +func (x *EngineSnapshotDiskInfo) GetUserCreated() bool { + if x != nil { + return x.UserCreated } return false } -func (m *EngineSnapshotDiskInfo) GetCreated() string { - if m != nil { - return m.Created +func (x *EngineSnapshotDiskInfo) GetCreated() string { + if x != nil { + return x.Created } return "" } -func (m *EngineSnapshotDiskInfo) GetSize() string { - if m != nil { - return m.Size +func (x *EngineSnapshotDiskInfo) GetSize() string { + if x != nil { + return x.Size } return "" } -func (m *EngineSnapshotDiskInfo) GetLabels() map[string]string { - if m != nil { - return m.Labels +func (x *EngineSnapshotDiskInfo) GetLabels() map[string]string { + if x != nil { + return x.Labels } return nil } type EngineSnapshotRevertRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotRevertRequest) Reset() { *m = EngineSnapshotRevertRequest{} } -func (m *EngineSnapshotRevertRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotRevertRequest) ProtoMessage() {} -func (*EngineSnapshotRevertRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{10} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` } -func (m *EngineSnapshotRevertRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotRevertRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotRevertRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotRevertRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotRevertRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotRevertRequest.Merge(m, src) +func (x *EngineSnapshotRevertRequest) Reset() { + *x = EngineSnapshotRevertRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotRevertRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotRevertRequest.Size(m) + +func (x *EngineSnapshotRevertRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotRevertRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotRevertRequest.DiscardUnknown(m) + +func (*EngineSnapshotRevertRequest) ProtoMessage() {} + +func (x *EngineSnapshotRevertRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotRevertRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotRevertRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotRevertRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{10} +} -func (m *EngineSnapshotRevertRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotRevertRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotRevertRequest) GetName() string { - if m != nil { - return m.Name +func (x *EngineSnapshotRevertRequest) GetName() string { + if x != nil { + return x.Name } return "" } type EngineSnapshotPurgeRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - SkipIfInProgress bool `protobuf:"varint,2,opt,name=skip_if_in_progress,json=skipIfInProgress,proto3" json:"skip_if_in_progress,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotPurgeRequest) Reset() { *m = EngineSnapshotPurgeRequest{} } -func (m *EngineSnapshotPurgeRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotPurgeRequest) ProtoMessage() {} -func (*EngineSnapshotPurgeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{11} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + SkipIfInProgress bool `protobuf:"varint,2,opt,name=skip_if_in_progress,json=skipIfInProgress,proto3" json:"skip_if_in_progress,omitempty"` } -func (m *EngineSnapshotPurgeRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotPurgeRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotPurgeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotPurgeRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotPurgeRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotPurgeRequest.Merge(m, src) +func (x *EngineSnapshotPurgeRequest) Reset() { + *x = EngineSnapshotPurgeRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotPurgeRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotPurgeRequest.Size(m) + +func (x *EngineSnapshotPurgeRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotPurgeRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotPurgeRequest.DiscardUnknown(m) + +func (*EngineSnapshotPurgeRequest) ProtoMessage() {} + +func (x *EngineSnapshotPurgeRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotPurgeRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotPurgeRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotPurgeRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{11} +} -func (m *EngineSnapshotPurgeRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotPurgeRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotPurgeRequest) GetSkipIfInProgress() bool { - if m != nil { - return m.SkipIfInProgress +func (x *EngineSnapshotPurgeRequest) GetSkipIfInProgress() bool { + if x != nil { + return x.SkipIfInProgress } return false } type EngineSnapshotPurgeStatusProxyResponse struct { - Status map[string]*ptypes.SnapshotPurgeStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotPurgeStatusProxyResponse) Reset() { - *m = EngineSnapshotPurgeStatusProxyResponse{} -} -func (m *EngineSnapshotPurgeStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotPurgeStatusProxyResponse) ProtoMessage() {} -func (*EngineSnapshotPurgeStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{12} + Status map[string]*ptypes.SnapshotPurgeStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineSnapshotPurgeStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse.Unmarshal(m, b) -} -func (m *EngineSnapshotPurgeStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotPurgeStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse.Merge(m, src) +func (x *EngineSnapshotPurgeStatusProxyResponse) Reset() { + *x = EngineSnapshotPurgeStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotPurgeStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse.Size(m) + +func (x *EngineSnapshotPurgeStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotPurgeStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotPurgeStatusProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotPurgeStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotPurgeStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotPurgeStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotPurgeStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{12} +} -func (m *EngineSnapshotPurgeStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotPurgeStatusResponse { - if m != nil { - return m.Status +func (x *EngineSnapshotPurgeStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotPurgeStatusResponse { + if x != nil { + return x.Status } return nil } type EngineSnapshotCloneRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` FromEngineAddress string `protobuf:"bytes,2,opt,name=from_engine_address,json=fromEngineAddress,proto3" json:"from_engine_address,omitempty"` SnapshotName string `protobuf:"bytes,3,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` @@ -675,174 +777,196 @@ type EngineSnapshotCloneRequest struct { FileSyncHttpClientTimeout int32 `protobuf:"varint,5,opt,name=file_sync_http_client_timeout,json=fileSyncHttpClientTimeout,proto3" json:"file_sync_http_client_timeout,omitempty"` FromEngineName string `protobuf:"bytes,6,opt,name=from_engine_name,json=fromEngineName,proto3" json:"from_engine_name,omitempty"` FromVolumeName string `protobuf:"bytes,7,opt,name=from_volume_name,json=fromVolumeName,proto3" json:"from_volume_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` } -func (m *EngineSnapshotCloneRequest) Reset() { *m = EngineSnapshotCloneRequest{} } -func (m *EngineSnapshotCloneRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotCloneRequest) ProtoMessage() {} -func (*EngineSnapshotCloneRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{13} +func (x *EngineSnapshotCloneRequest) Reset() { + *x = EngineSnapshotCloneRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotCloneRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotCloneRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotCloneRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotCloneRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotCloneRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotCloneRequest.Merge(m, src) +func (x *EngineSnapshotCloneRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotCloneRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotCloneRequest.Size(m) -} -func (m *EngineSnapshotCloneRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotCloneRequest.DiscardUnknown(m) + +func (*EngineSnapshotCloneRequest) ProtoMessage() {} + +func (x *EngineSnapshotCloneRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotCloneRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotCloneRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotCloneRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{13} +} -func (m *EngineSnapshotCloneRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotCloneRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotCloneRequest) GetFromEngineAddress() string { - if m != nil { - return m.FromEngineAddress +func (x *EngineSnapshotCloneRequest) GetFromEngineAddress() string { + if x != nil { + return x.FromEngineAddress } return "" } -func (m *EngineSnapshotCloneRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *EngineSnapshotCloneRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } -func (m *EngineSnapshotCloneRequest) GetExportBackingImageIfExist() bool { - if m != nil { - return m.ExportBackingImageIfExist +func (x *EngineSnapshotCloneRequest) GetExportBackingImageIfExist() bool { + if x != nil { + return x.ExportBackingImageIfExist } return false } -func (m *EngineSnapshotCloneRequest) GetFileSyncHttpClientTimeout() int32 { - if m != nil { - return m.FileSyncHttpClientTimeout +func (x *EngineSnapshotCloneRequest) GetFileSyncHttpClientTimeout() int32 { + if x != nil { + return x.FileSyncHttpClientTimeout } return 0 } -func (m *EngineSnapshotCloneRequest) GetFromEngineName() string { - if m != nil { - return m.FromEngineName +func (x *EngineSnapshotCloneRequest) GetFromEngineName() string { + if x != nil { + return x.FromEngineName } return "" } -func (m *EngineSnapshotCloneRequest) GetFromVolumeName() string { - if m != nil { - return m.FromVolumeName +func (x *EngineSnapshotCloneRequest) GetFromVolumeName() string { + if x != nil { + return x.FromVolumeName } return "" } type EngineSnapshotCloneStatusProxyResponse struct { - Status map[string]*ptypes.SnapshotCloneStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotCloneStatusProxyResponse) Reset() { - *m = EngineSnapshotCloneStatusProxyResponse{} -} -func (m *EngineSnapshotCloneStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotCloneStatusProxyResponse) ProtoMessage() {} -func (*EngineSnapshotCloneStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{14} + Status map[string]*ptypes.SnapshotCloneStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineSnapshotCloneStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse.Unmarshal(m, b) -} -func (m *EngineSnapshotCloneStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotCloneStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse.Merge(m, src) +func (x *EngineSnapshotCloneStatusProxyResponse) Reset() { + *x = EngineSnapshotCloneStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotCloneStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse.Size(m) + +func (x *EngineSnapshotCloneStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotCloneStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotCloneStatusProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotCloneStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotCloneStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotCloneStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotCloneStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{14} +} -func (m *EngineSnapshotCloneStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotCloneStatusResponse { - if m != nil { - return m.Status +func (x *EngineSnapshotCloneStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotCloneStatusResponse { + if x != nil { + return x.Status } return nil } type EngineSnapshotRemoveRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - Names []string `protobuf:"bytes,2,rep,name=names,proto3" json:"names,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotRemoveRequest) Reset() { *m = EngineSnapshotRemoveRequest{} } -func (m *EngineSnapshotRemoveRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotRemoveRequest) ProtoMessage() {} -func (*EngineSnapshotRemoveRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{15} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + Names []string `protobuf:"bytes,2,rep,name=names,proto3" json:"names,omitempty"` } -func (m *EngineSnapshotRemoveRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotRemoveRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotRemoveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotRemoveRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotRemoveRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotRemoveRequest.Merge(m, src) +func (x *EngineSnapshotRemoveRequest) Reset() { + *x = EngineSnapshotRemoveRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotRemoveRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotRemoveRequest.Size(m) + +func (x *EngineSnapshotRemoveRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotRemoveRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotRemoveRequest.DiscardUnknown(m) + +func (*EngineSnapshotRemoveRequest) ProtoMessage() {} + +func (x *EngineSnapshotRemoveRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotRemoveRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotRemoveRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotRemoveRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{15} +} -func (m *EngineSnapshotRemoveRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotRemoveRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotRemoveRequest) GetNames() []string { - if m != nil { - return m.Names +func (x *EngineSnapshotRemoveRequest) GetNames() []string { + if x != nil { + return x.Names } return nil } type EngineSnapshotBackupRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` Envs []string `protobuf:"bytes,8,rep,name=envs,proto3" json:"envs,omitempty"` BackupName string `protobuf:"bytes,2,opt,name=backup_name,json=backupName,proto3" json:"backup_name,omitempty"` @@ -854,567 +978,627 @@ type EngineSnapshotBackupRequest struct { CompressionMethod string `protobuf:"bytes,9,opt,name=compression_method,json=compressionMethod,proto3" json:"compression_method,omitempty"` ConcurrentLimit int32 `protobuf:"varint,10,opt,name=concurrent_limit,json=concurrentLimit,proto3" json:"concurrent_limit,omitempty"` StorageClassName string `protobuf:"bytes,11,opt,name=storage_class_name,json=storageClassName,proto3" json:"storage_class_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` } -func (m *EngineSnapshotBackupRequest) Reset() { *m = EngineSnapshotBackupRequest{} } -func (m *EngineSnapshotBackupRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotBackupRequest) ProtoMessage() {} -func (*EngineSnapshotBackupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{16} +func (x *EngineSnapshotBackupRequest) Reset() { + *x = EngineSnapshotBackupRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotBackupRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotBackupRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotBackupRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotBackupRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotBackupRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotBackupRequest.Merge(m, src) -} -func (m *EngineSnapshotBackupRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotBackupRequest.Size(m) +func (x *EngineSnapshotBackupRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotBackupRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotBackupRequest.DiscardUnknown(m) + +func (*EngineSnapshotBackupRequest) ProtoMessage() {} + +func (x *EngineSnapshotBackupRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotBackupRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotBackupRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotBackupRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{16} +} -func (m *EngineSnapshotBackupRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotBackupRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotBackupRequest) GetEnvs() []string { - if m != nil { - return m.Envs +func (x *EngineSnapshotBackupRequest) GetEnvs() []string { + if x != nil { + return x.Envs } return nil } -func (m *EngineSnapshotBackupRequest) GetBackupName() string { - if m != nil { - return m.BackupName +func (x *EngineSnapshotBackupRequest) GetBackupName() string { + if x != nil { + return x.BackupName } return "" } -func (m *EngineSnapshotBackupRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *EngineSnapshotBackupRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } -func (m *EngineSnapshotBackupRequest) GetBackupTarget() string { - if m != nil { - return m.BackupTarget +func (x *EngineSnapshotBackupRequest) GetBackupTarget() string { + if x != nil { + return x.BackupTarget } return "" } -func (m *EngineSnapshotBackupRequest) GetBackingImageName() string { - if m != nil { - return m.BackingImageName +func (x *EngineSnapshotBackupRequest) GetBackingImageName() string { + if x != nil { + return x.BackingImageName } return "" } -func (m *EngineSnapshotBackupRequest) GetBackingImageChecksum() string { - if m != nil { - return m.BackingImageChecksum +func (x *EngineSnapshotBackupRequest) GetBackingImageChecksum() string { + if x != nil { + return x.BackingImageChecksum } return "" } -func (m *EngineSnapshotBackupRequest) GetLabels() map[string]string { - if m != nil { - return m.Labels +func (x *EngineSnapshotBackupRequest) GetLabels() map[string]string { + if x != nil { + return x.Labels } return nil } -func (m *EngineSnapshotBackupRequest) GetCompressionMethod() string { - if m != nil { - return m.CompressionMethod +func (x *EngineSnapshotBackupRequest) GetCompressionMethod() string { + if x != nil { + return x.CompressionMethod } return "" } -func (m *EngineSnapshotBackupRequest) GetConcurrentLimit() int32 { - if m != nil { - return m.ConcurrentLimit +func (x *EngineSnapshotBackupRequest) GetConcurrentLimit() int32 { + if x != nil { + return x.ConcurrentLimit } return 0 } -func (m *EngineSnapshotBackupRequest) GetStorageClassName() string { - if m != nil { - return m.StorageClassName +func (x *EngineSnapshotBackupRequest) GetStorageClassName() string { + if x != nil { + return x.StorageClassName } return "" } type EngineSnapshotBackupProxyResponse struct { - BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"` - Replica string `protobuf:"bytes,2,opt,name=replica,proto3" json:"replica,omitempty"` - IsIncremental bool `protobuf:"varint,3,opt,name=is_incremental,json=isIncremental,proto3" json:"is_incremental,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotBackupProxyResponse) Reset() { *m = EngineSnapshotBackupProxyResponse{} } -func (m *EngineSnapshotBackupProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotBackupProxyResponse) ProtoMessage() {} -func (*EngineSnapshotBackupProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{17} + BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"` + Replica string `protobuf:"bytes,2,opt,name=replica,proto3" json:"replica,omitempty"` + IsIncremental bool `protobuf:"varint,3,opt,name=is_incremental,json=isIncremental,proto3" json:"is_incremental,omitempty"` } -func (m *EngineSnapshotBackupProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotBackupProxyResponse.Unmarshal(m, b) -} -func (m *EngineSnapshotBackupProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotBackupProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotBackupProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotBackupProxyResponse.Merge(m, src) +func (x *EngineSnapshotBackupProxyResponse) Reset() { + *x = EngineSnapshotBackupProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotBackupProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotBackupProxyResponse.Size(m) + +func (x *EngineSnapshotBackupProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotBackupProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotBackupProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotBackupProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotBackupProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotBackupProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotBackupProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotBackupProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{17} +} -func (m *EngineSnapshotBackupProxyResponse) GetBackupId() string { - if m != nil { - return m.BackupId +func (x *EngineSnapshotBackupProxyResponse) GetBackupId() string { + if x != nil { + return x.BackupId } return "" } -func (m *EngineSnapshotBackupProxyResponse) GetReplica() string { - if m != nil { - return m.Replica +func (x *EngineSnapshotBackupProxyResponse) GetReplica() string { + if x != nil { + return x.Replica } return "" } -func (m *EngineSnapshotBackupProxyResponse) GetIsIncremental() bool { - if m != nil { - return m.IsIncremental +func (x *EngineSnapshotBackupProxyResponse) GetIsIncremental() bool { + if x != nil { + return x.IsIncremental } return false } type EngineSnapshotBackupStatusRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - BackupName string `protobuf:"bytes,2,opt,name=backup_name,json=backupName,proto3" json:"backup_name,omitempty"` - ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - ReplicaName string `protobuf:"bytes,4,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotBackupStatusRequest) Reset() { *m = EngineSnapshotBackupStatusRequest{} } -func (m *EngineSnapshotBackupStatusRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotBackupStatusRequest) ProtoMessage() {} -func (*EngineSnapshotBackupStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{18} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + BackupName string `protobuf:"bytes,2,opt,name=backup_name,json=backupName,proto3" json:"backup_name,omitempty"` + ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` + ReplicaName string `protobuf:"bytes,4,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` } -func (m *EngineSnapshotBackupStatusRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotBackupStatusRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotBackupStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotBackupStatusRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotBackupStatusRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotBackupStatusRequest.Merge(m, src) +func (x *EngineSnapshotBackupStatusRequest) Reset() { + *x = EngineSnapshotBackupStatusRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotBackupStatusRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotBackupStatusRequest.Size(m) + +func (x *EngineSnapshotBackupStatusRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotBackupStatusRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotBackupStatusRequest.DiscardUnknown(m) + +func (*EngineSnapshotBackupStatusRequest) ProtoMessage() {} + +func (x *EngineSnapshotBackupStatusRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotBackupStatusRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotBackupStatusRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotBackupStatusRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{18} +} -func (m *EngineSnapshotBackupStatusRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotBackupStatusRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotBackupStatusRequest) GetBackupName() string { - if m != nil { - return m.BackupName +func (x *EngineSnapshotBackupStatusRequest) GetBackupName() string { + if x != nil { + return x.BackupName } return "" } -func (m *EngineSnapshotBackupStatusRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineSnapshotBackupStatusRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } -func (m *EngineSnapshotBackupStatusRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineSnapshotBackupStatusRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } type EngineSnapshotBackupStatusProxyResponse struct { - BackupUrl string `protobuf:"bytes,1,opt,name=backup_url,json=backupUrl,proto3" json:"backup_url,omitempty"` - Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` - Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"` - SnapshotName string `protobuf:"bytes,4,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` - State string `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"` - ReplicaAddress string `protobuf:"bytes,6,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EngineSnapshotBackupStatusProxyResponse) Reset() { - *m = EngineSnapshotBackupStatusProxyResponse{} -} -func (m *EngineSnapshotBackupStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotBackupStatusProxyResponse) ProtoMessage() {} -func (*EngineSnapshotBackupStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{19} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotBackupStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse.Unmarshal(m, b) + BackupUrl string `protobuf:"bytes,1,opt,name=backup_url,json=backupUrl,proto3" json:"backup_url,omitempty"` + Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"` + Progress int32 `protobuf:"varint,3,opt,name=progress,proto3" json:"progress,omitempty"` + SnapshotName string `protobuf:"bytes,4,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` + State string `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"` + ReplicaAddress string `protobuf:"bytes,6,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` } -func (m *EngineSnapshotBackupStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotBackupStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse.Merge(m, src) + +func (x *EngineSnapshotBackupStatusProxyResponse) Reset() { + *x = EngineSnapshotBackupStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotBackupStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse.Size(m) + +func (x *EngineSnapshotBackupStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotBackupStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotBackupStatusProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotBackupStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotBackupStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotBackupStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotBackupStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{19} +} -func (m *EngineSnapshotBackupStatusProxyResponse) GetBackupUrl() string { - if m != nil { - return m.BackupUrl +func (x *EngineSnapshotBackupStatusProxyResponse) GetBackupUrl() string { + if x != nil { + return x.BackupUrl } return "" } -func (m *EngineSnapshotBackupStatusProxyResponse) GetError() string { - if m != nil { - return m.Error +func (x *EngineSnapshotBackupStatusProxyResponse) GetError() string { + if x != nil { + return x.Error } return "" } -func (m *EngineSnapshotBackupStatusProxyResponse) GetProgress() int32 { - if m != nil { - return m.Progress +func (x *EngineSnapshotBackupStatusProxyResponse) GetProgress() int32 { + if x != nil { + return x.Progress } return 0 } -func (m *EngineSnapshotBackupStatusProxyResponse) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *EngineSnapshotBackupStatusProxyResponse) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } -func (m *EngineSnapshotBackupStatusProxyResponse) GetState() string { - if m != nil { - return m.State +func (x *EngineSnapshotBackupStatusProxyResponse) GetState() string { + if x != nil { + return x.State } return "" } -func (m *EngineSnapshotBackupStatusProxyResponse) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineSnapshotBackupStatusProxyResponse) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } type EngineBackupRestoreRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - Envs []string `protobuf:"bytes,2,rep,name=envs,proto3" json:"envs,omitempty"` - Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` - Target string `protobuf:"bytes,4,opt,name=target,proto3" json:"target,omitempty"` - VolumeName string `protobuf:"bytes,5,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` - ConcurrentLimit int32 `protobuf:"varint,6,opt,name=concurrent_limit,json=concurrentLimit,proto3" json:"concurrent_limit,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EngineBackupRestoreRequest) Reset() { *m = EngineBackupRestoreRequest{} } -func (m *EngineBackupRestoreRequest) String() string { return proto.CompactTextString(m) } -func (*EngineBackupRestoreRequest) ProtoMessage() {} -func (*EngineBackupRestoreRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{20} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineBackupRestoreRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineBackupRestoreRequest.Unmarshal(m, b) -} -func (m *EngineBackupRestoreRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineBackupRestoreRequest.Marshal(b, m, deterministic) + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + Envs []string `protobuf:"bytes,2,rep,name=envs,proto3" json:"envs,omitempty"` + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` + Target string `protobuf:"bytes,4,opt,name=target,proto3" json:"target,omitempty"` + VolumeName string `protobuf:"bytes,5,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` + ConcurrentLimit int32 `protobuf:"varint,6,opt,name=concurrent_limit,json=concurrentLimit,proto3" json:"concurrent_limit,omitempty"` } -func (m *EngineBackupRestoreRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineBackupRestoreRequest.Merge(m, src) + +func (x *EngineBackupRestoreRequest) Reset() { + *x = EngineBackupRestoreRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineBackupRestoreRequest) XXX_Size() int { - return xxx_messageInfo_EngineBackupRestoreRequest.Size(m) + +func (x *EngineBackupRestoreRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineBackupRestoreRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineBackupRestoreRequest.DiscardUnknown(m) + +func (*EngineBackupRestoreRequest) ProtoMessage() {} + +func (x *EngineBackupRestoreRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineBackupRestoreRequest proto.InternalMessageInfo +// Deprecated: Use EngineBackupRestoreRequest.ProtoReflect.Descriptor instead. +func (*EngineBackupRestoreRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{20} +} -func (m *EngineBackupRestoreRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineBackupRestoreRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineBackupRestoreRequest) GetEnvs() []string { - if m != nil { - return m.Envs +func (x *EngineBackupRestoreRequest) GetEnvs() []string { + if x != nil { + return x.Envs } return nil } -func (m *EngineBackupRestoreRequest) GetUrl() string { - if m != nil { - return m.Url +func (x *EngineBackupRestoreRequest) GetUrl() string { + if x != nil { + return x.Url } return "" } -func (m *EngineBackupRestoreRequest) GetTarget() string { - if m != nil { - return m.Target +func (x *EngineBackupRestoreRequest) GetTarget() string { + if x != nil { + return x.Target } return "" } -func (m *EngineBackupRestoreRequest) GetVolumeName() string { - if m != nil { - return m.VolumeName +func (x *EngineBackupRestoreRequest) GetVolumeName() string { + if x != nil { + return x.VolumeName } return "" } -func (m *EngineBackupRestoreRequest) GetConcurrentLimit() int32 { - if m != nil { - return m.ConcurrentLimit +func (x *EngineBackupRestoreRequest) GetConcurrentLimit() int32 { + if x != nil { + return x.ConcurrentLimit } return 0 } type EngineBackupRestoreProxyResponse struct { - TaskError []byte `protobuf:"bytes,1,opt,name=taskError,proto3" json:"taskError,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineBackupRestoreProxyResponse) Reset() { *m = EngineBackupRestoreProxyResponse{} } -func (m *EngineBackupRestoreProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineBackupRestoreProxyResponse) ProtoMessage() {} -func (*EngineBackupRestoreProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{21} + TaskError []byte `protobuf:"bytes,1,opt,name=taskError,proto3" json:"taskError,omitempty"` } -func (m *EngineBackupRestoreProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineBackupRestoreProxyResponse.Unmarshal(m, b) -} -func (m *EngineBackupRestoreProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineBackupRestoreProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineBackupRestoreProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineBackupRestoreProxyResponse.Merge(m, src) +func (x *EngineBackupRestoreProxyResponse) Reset() { + *x = EngineBackupRestoreProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineBackupRestoreProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineBackupRestoreProxyResponse.Size(m) + +func (x *EngineBackupRestoreProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineBackupRestoreProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineBackupRestoreProxyResponse.DiscardUnknown(m) + +func (*EngineBackupRestoreProxyResponse) ProtoMessage() {} + +func (x *EngineBackupRestoreProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineBackupRestoreProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineBackupRestoreProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineBackupRestoreProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{21} +} -func (m *EngineBackupRestoreProxyResponse) GetTaskError() []byte { - if m != nil { - return m.TaskError +func (x *EngineBackupRestoreProxyResponse) GetTaskError() []byte { + if x != nil { + return x.TaskError } return nil } type EngineBackupRestoreStatusProxyResponse struct { - Status map[string]*EngineBackupRestoreStatus `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineBackupRestoreStatusProxyResponse) Reset() { - *m = EngineBackupRestoreStatusProxyResponse{} -} -func (m *EngineBackupRestoreStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineBackupRestoreStatusProxyResponse) ProtoMessage() {} -func (*EngineBackupRestoreStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{22} + Status map[string]*EngineBackupRestoreStatus `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineBackupRestoreStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineBackupRestoreStatusProxyResponse.Unmarshal(m, b) -} -func (m *EngineBackupRestoreStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineBackupRestoreStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineBackupRestoreStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineBackupRestoreStatusProxyResponse.Merge(m, src) +func (x *EngineBackupRestoreStatusProxyResponse) Reset() { + *x = EngineBackupRestoreStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineBackupRestoreStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineBackupRestoreStatusProxyResponse.Size(m) + +func (x *EngineBackupRestoreStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineBackupRestoreStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineBackupRestoreStatusProxyResponse.DiscardUnknown(m) + +func (*EngineBackupRestoreStatusProxyResponse) ProtoMessage() {} + +func (x *EngineBackupRestoreStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineBackupRestoreStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineBackupRestoreStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineBackupRestoreStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{22} +} -func (m *EngineBackupRestoreStatusProxyResponse) GetStatus() map[string]*EngineBackupRestoreStatus { - if m != nil { - return m.Status +func (x *EngineBackupRestoreStatusProxyResponse) GetStatus() map[string]*EngineBackupRestoreStatus { + if x != nil { + return x.Status } return nil } type EngineBackupRestoreStatus struct { - IsRestoring bool `protobuf:"varint,1,opt,name=is_restoring,json=isRestoring,proto3" json:"is_restoring,omitempty"` - LastRestored string `protobuf:"bytes,2,opt,name=last_restored,json=lastRestored,proto3" json:"last_restored,omitempty"` - CurrentRestoringBackup string `protobuf:"bytes,3,opt,name=current_restoring_backup,json=currentRestoringBackup,proto3" json:"current_restoring_backup,omitempty"` - Progress int32 `protobuf:"varint,4,opt,name=progress,proto3" json:"progress,omitempty"` - Error string `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"` - Filename string `protobuf:"bytes,6,opt,name=filename,proto3" json:"filename,omitempty"` - State string `protobuf:"bytes,7,opt,name=state,proto3" json:"state,omitempty"` - BackupUrl string `protobuf:"bytes,8,opt,name=backup_url,json=backupUrl,proto3" json:"backup_url,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EngineBackupRestoreStatus) Reset() { *m = EngineBackupRestoreStatus{} } -func (m *EngineBackupRestoreStatus) String() string { return proto.CompactTextString(m) } -func (*EngineBackupRestoreStatus) ProtoMessage() {} -func (*EngineBackupRestoreStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{23} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineBackupRestoreStatus) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineBackupRestoreStatus.Unmarshal(m, b) -} -func (m *EngineBackupRestoreStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineBackupRestoreStatus.Marshal(b, m, deterministic) + IsRestoring bool `protobuf:"varint,1,opt,name=is_restoring,json=isRestoring,proto3" json:"is_restoring,omitempty"` + LastRestored string `protobuf:"bytes,2,opt,name=last_restored,json=lastRestored,proto3" json:"last_restored,omitempty"` + CurrentRestoringBackup string `protobuf:"bytes,3,opt,name=current_restoring_backup,json=currentRestoringBackup,proto3" json:"current_restoring_backup,omitempty"` + Progress int32 `protobuf:"varint,4,opt,name=progress,proto3" json:"progress,omitempty"` + Error string `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"` + Filename string `protobuf:"bytes,6,opt,name=filename,proto3" json:"filename,omitempty"` + State string `protobuf:"bytes,7,opt,name=state,proto3" json:"state,omitempty"` + BackupUrl string `protobuf:"bytes,8,opt,name=backup_url,json=backupUrl,proto3" json:"backup_url,omitempty"` } -func (m *EngineBackupRestoreStatus) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineBackupRestoreStatus.Merge(m, src) + +func (x *EngineBackupRestoreStatus) Reset() { + *x = EngineBackupRestoreStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineBackupRestoreStatus) XXX_Size() int { - return xxx_messageInfo_EngineBackupRestoreStatus.Size(m) + +func (x *EngineBackupRestoreStatus) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineBackupRestoreStatus) XXX_DiscardUnknown() { - xxx_messageInfo_EngineBackupRestoreStatus.DiscardUnknown(m) + +func (*EngineBackupRestoreStatus) ProtoMessage() {} + +func (x *EngineBackupRestoreStatus) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineBackupRestoreStatus proto.InternalMessageInfo +// Deprecated: Use EngineBackupRestoreStatus.ProtoReflect.Descriptor instead. +func (*EngineBackupRestoreStatus) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{23} +} -func (m *EngineBackupRestoreStatus) GetIsRestoring() bool { - if m != nil { - return m.IsRestoring +func (x *EngineBackupRestoreStatus) GetIsRestoring() bool { + if x != nil { + return x.IsRestoring } return false } -func (m *EngineBackupRestoreStatus) GetLastRestored() string { - if m != nil { - return m.LastRestored +func (x *EngineBackupRestoreStatus) GetLastRestored() string { + if x != nil { + return x.LastRestored } return "" } -func (m *EngineBackupRestoreStatus) GetCurrentRestoringBackup() string { - if m != nil { - return m.CurrentRestoringBackup +func (x *EngineBackupRestoreStatus) GetCurrentRestoringBackup() string { + if x != nil { + return x.CurrentRestoringBackup } return "" } -func (m *EngineBackupRestoreStatus) GetProgress() int32 { - if m != nil { - return m.Progress +func (x *EngineBackupRestoreStatus) GetProgress() int32 { + if x != nil { + return x.Progress } return 0 } -func (m *EngineBackupRestoreStatus) GetError() string { - if m != nil { - return m.Error +func (x *EngineBackupRestoreStatus) GetError() string { + if x != nil { + return x.Error } return "" } -func (m *EngineBackupRestoreStatus) GetFilename() string { - if m != nil { - return m.Filename +func (x *EngineBackupRestoreStatus) GetFilename() string { + if x != nil { + return x.Filename } return "" } -func (m *EngineBackupRestoreStatus) GetState() string { - if m != nil { - return m.State +func (x *EngineBackupRestoreStatus) GetState() string { + if x != nil { + return x.State } return "" } -func (m *EngineBackupRestoreStatus) GetBackupUrl() string { - if m != nil { - return m.BackupUrl +func (x *EngineBackupRestoreStatus) GetBackupUrl() string { + if x != nil { + return x.BackupUrl } return "" } type EngineReplicaAddRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` Restore bool `protobuf:"varint,3,opt,name=restore,proto3" json:"restore,omitempty"` @@ -1423,726 +1607,1832 @@ type EngineReplicaAddRequest struct { FastSync bool `protobuf:"varint,6,opt,name=fast_sync,json=fastSync,proto3" json:"fast_sync,omitempty"` FileSyncHttpClientTimeout int32 `protobuf:"varint,7,opt,name=file_sync_http_client_timeout,json=fileSyncHttpClientTimeout,proto3" json:"file_sync_http_client_timeout,omitempty"` ReplicaName string `protobuf:"bytes,8,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` } -func (m *EngineReplicaAddRequest) Reset() { *m = EngineReplicaAddRequest{} } -func (m *EngineReplicaAddRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaAddRequest) ProtoMessage() {} -func (*EngineReplicaAddRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{24} +func (x *EngineReplicaAddRequest) Reset() { + *x = EngineReplicaAddRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaAddRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaAddRequest.Unmarshal(m, b) -} -func (m *EngineReplicaAddRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaAddRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaAddRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaAddRequest.Merge(m, src) +func (x *EngineReplicaAddRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaAddRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaAddRequest.Size(m) -} -func (m *EngineReplicaAddRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaAddRequest.DiscardUnknown(m) + +func (*EngineReplicaAddRequest) ProtoMessage() {} + +func (x *EngineReplicaAddRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaAddRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaAddRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaAddRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{24} +} -func (m *EngineReplicaAddRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineReplicaAddRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineReplicaAddRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaAddRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } -func (m *EngineReplicaAddRequest) GetRestore() bool { - if m != nil { - return m.Restore +func (x *EngineReplicaAddRequest) GetRestore() bool { + if x != nil { + return x.Restore } return false } -func (m *EngineReplicaAddRequest) GetSize() int64 { - if m != nil { - return m.Size +func (x *EngineReplicaAddRequest) GetSize() int64 { + if x != nil { + return x.Size } return 0 } -func (m *EngineReplicaAddRequest) GetCurrentSize() int64 { - if m != nil { - return m.CurrentSize +func (x *EngineReplicaAddRequest) GetCurrentSize() int64 { + if x != nil { + return x.CurrentSize } return 0 } -func (m *EngineReplicaAddRequest) GetFastSync() bool { - if m != nil { - return m.FastSync +func (x *EngineReplicaAddRequest) GetFastSync() bool { + if x != nil { + return x.FastSync } return false } -func (m *EngineReplicaAddRequest) GetFileSyncHttpClientTimeout() int32 { - if m != nil { - return m.FileSyncHttpClientTimeout +func (x *EngineReplicaAddRequest) GetFileSyncHttpClientTimeout() int32 { + if x != nil { + return x.FileSyncHttpClientTimeout } return 0 } -func (m *EngineReplicaAddRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineReplicaAddRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } type EngineReplicaListProxyResponse struct { - ReplicaList *ptypes.ReplicaListReply `protobuf:"bytes,1,opt,name=replica_list,json=replicaList,proto3" json:"replica_list,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaListProxyResponse) Reset() { *m = EngineReplicaListProxyResponse{} } -func (m *EngineReplicaListProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaListProxyResponse) ProtoMessage() {} -func (*EngineReplicaListProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{25} + ReplicaList *ptypes.ReplicaListReply `protobuf:"bytes,1,opt,name=replica_list,json=replicaList,proto3" json:"replica_list,omitempty"` } -func (m *EngineReplicaListProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaListProxyResponse.Unmarshal(m, b) -} -func (m *EngineReplicaListProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaListProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineReplicaListProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaListProxyResponse.Merge(m, src) +func (x *EngineReplicaListProxyResponse) Reset() { + *x = EngineReplicaListProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaListProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineReplicaListProxyResponse.Size(m) + +func (x *EngineReplicaListProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaListProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaListProxyResponse.DiscardUnknown(m) + +func (*EngineReplicaListProxyResponse) ProtoMessage() {} + +func (x *EngineReplicaListProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaListProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineReplicaListProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineReplicaListProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{25} +} -func (m *EngineReplicaListProxyResponse) GetReplicaList() *ptypes.ReplicaListReply { - if m != nil { - return m.ReplicaList +func (x *EngineReplicaListProxyResponse) GetReplicaList() *ptypes.ReplicaListReply { + if x != nil { + return x.ReplicaList } return nil } type EngineReplicaVerifyRebuildRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - ReplicaName string `protobuf:"bytes,3,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaVerifyRebuildRequest) Reset() { *m = EngineReplicaVerifyRebuildRequest{} } -func (m *EngineReplicaVerifyRebuildRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaVerifyRebuildRequest) ProtoMessage() {} -func (*EngineReplicaVerifyRebuildRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{26} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` + ReplicaName string `protobuf:"bytes,3,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` } -func (m *EngineReplicaVerifyRebuildRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaVerifyRebuildRequest.Unmarshal(m, b) -} -func (m *EngineReplicaVerifyRebuildRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaVerifyRebuildRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaVerifyRebuildRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaVerifyRebuildRequest.Merge(m, src) +func (x *EngineReplicaVerifyRebuildRequest) Reset() { + *x = EngineReplicaVerifyRebuildRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaVerifyRebuildRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaVerifyRebuildRequest.Size(m) + +func (x *EngineReplicaVerifyRebuildRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaVerifyRebuildRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaVerifyRebuildRequest.DiscardUnknown(m) + +func (*EngineReplicaVerifyRebuildRequest) ProtoMessage() {} + +func (x *EngineReplicaVerifyRebuildRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaVerifyRebuildRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaVerifyRebuildRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaVerifyRebuildRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{26} +} -func (m *EngineReplicaVerifyRebuildRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineReplicaVerifyRebuildRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineReplicaVerifyRebuildRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaVerifyRebuildRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } -func (m *EngineReplicaVerifyRebuildRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineReplicaVerifyRebuildRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } type EngineReplicaRebuildStatusProxyResponse struct { - Status map[string]*ptypes.ReplicaRebuildStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaRebuildStatusProxyResponse) Reset() { - *m = EngineReplicaRebuildStatusProxyResponse{} -} -func (m *EngineReplicaRebuildStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaRebuildStatusProxyResponse) ProtoMessage() {} -func (*EngineReplicaRebuildStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{27} + Status map[string]*ptypes.ReplicaRebuildStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineReplicaRebuildStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse.Unmarshal(m, b) -} -func (m *EngineReplicaRebuildStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineReplicaRebuildStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse.Merge(m, src) +func (x *EngineReplicaRebuildStatusProxyResponse) Reset() { + *x = EngineReplicaRebuildStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaRebuildStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse.Size(m) + +func (x *EngineReplicaRebuildStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaRebuildStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse.DiscardUnknown(m) + +func (*EngineReplicaRebuildStatusProxyResponse) ProtoMessage() {} + +func (x *EngineReplicaRebuildStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaRebuildStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineReplicaRebuildStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineReplicaRebuildStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{27} +} -func (m *EngineReplicaRebuildStatusProxyResponse) GetStatus() map[string]*ptypes.ReplicaRebuildStatusResponse { - if m != nil { - return m.Status +func (x *EngineReplicaRebuildStatusProxyResponse) GetStatus() map[string]*ptypes.ReplicaRebuildStatusResponse { + if x != nil { + return x.Status } return nil } type EngineReplicaRemoveRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - ReplicaName string `protobuf:"bytes,3,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaRemoveRequest) Reset() { *m = EngineReplicaRemoveRequest{} } -func (m *EngineReplicaRemoveRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaRemoveRequest) ProtoMessage() {} -func (*EngineReplicaRemoveRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{28} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` + ReplicaName string `protobuf:"bytes,3,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` } -func (m *EngineReplicaRemoveRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaRemoveRequest.Unmarshal(m, b) -} -func (m *EngineReplicaRemoveRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaRemoveRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaRemoveRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaRemoveRequest.Merge(m, src) +func (x *EngineReplicaRemoveRequest) Reset() { + *x = EngineReplicaRemoveRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaRemoveRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaRemoveRequest.Size(m) + +func (x *EngineReplicaRemoveRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaRemoveRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaRemoveRequest.DiscardUnknown(m) + +func (*EngineReplicaRemoveRequest) ProtoMessage() {} + +func (x *EngineReplicaRemoveRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaRemoveRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaRemoveRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaRemoveRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{28} +} -func (m *EngineReplicaRemoveRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineReplicaRemoveRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineReplicaRemoveRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaRemoveRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } -func (m *EngineReplicaRemoveRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineReplicaRemoveRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } type EngineReplicaModeUpdateRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - Mode ptypes.ReplicaMode `protobuf:"varint,3,opt,name=mode,proto3,enum=ptypes.ReplicaMode" json:"mode,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaModeUpdateRequest) Reset() { *m = EngineReplicaModeUpdateRequest{} } -func (m *EngineReplicaModeUpdateRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaModeUpdateRequest) ProtoMessage() {} -func (*EngineReplicaModeUpdateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{29} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + ReplicaAddress string `protobuf:"bytes,2,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` + Mode ptypes.ReplicaMode `protobuf:"varint,3,opt,name=mode,proto3,enum=ptypes.ReplicaMode" json:"mode,omitempty"` } -func (m *EngineReplicaModeUpdateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaModeUpdateRequest.Unmarshal(m, b) -} -func (m *EngineReplicaModeUpdateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaModeUpdateRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaModeUpdateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaModeUpdateRequest.Merge(m, src) +func (x *EngineReplicaModeUpdateRequest) Reset() { + *x = EngineReplicaModeUpdateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaModeUpdateRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaModeUpdateRequest.Size(m) + +func (x *EngineReplicaModeUpdateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaModeUpdateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaModeUpdateRequest.DiscardUnknown(m) + +func (*EngineReplicaModeUpdateRequest) ProtoMessage() {} + +func (x *EngineReplicaModeUpdateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaModeUpdateRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaModeUpdateRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaModeUpdateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{29} +} -func (m *EngineReplicaModeUpdateRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineReplicaModeUpdateRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineReplicaModeUpdateRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaModeUpdateRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } -func (m *EngineReplicaModeUpdateRequest) GetMode() ptypes.ReplicaMode { - if m != nil { - return m.Mode +func (x *EngineReplicaModeUpdateRequest) GetMode() ptypes.ReplicaMode { + if x != nil { + return x.Mode } return ptypes.ReplicaMode_WO } type EngineSnapshotHashRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` - Rehash bool `protobuf:"varint,3,opt,name=rehash,proto3" json:"rehash,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotHashRequest) Reset() { *m = EngineSnapshotHashRequest{} } -func (m *EngineSnapshotHashRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotHashRequest) ProtoMessage() {} -func (*EngineSnapshotHashRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{30} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` + Rehash bool `protobuf:"varint,3,opt,name=rehash,proto3" json:"rehash,omitempty"` } -func (m *EngineSnapshotHashRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotHashRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotHashRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotHashRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotHashRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotHashRequest.Merge(m, src) +func (x *EngineSnapshotHashRequest) Reset() { + *x = EngineSnapshotHashRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotHashRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotHashRequest.Size(m) + +func (x *EngineSnapshotHashRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotHashRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotHashRequest.DiscardUnknown(m) + +func (*EngineSnapshotHashRequest) ProtoMessage() {} + +func (x *EngineSnapshotHashRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotHashRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotHashRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotHashRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{30} +} -func (m *EngineSnapshotHashRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotHashRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotHashRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *EngineSnapshotHashRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } -func (m *EngineSnapshotHashRequest) GetRehash() bool { - if m != nil { - return m.Rehash +func (x *EngineSnapshotHashRequest) GetRehash() bool { + if x != nil { + return x.Rehash } return false } type EngineSnapshotHashStatusRequest struct { - ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` - SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotHashStatusRequest) Reset() { *m = EngineSnapshotHashStatusRequest{} } -func (m *EngineSnapshotHashStatusRequest) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotHashStatusRequest) ProtoMessage() {} -func (*EngineSnapshotHashStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{31} + ProxyEngineRequest *ProxyEngineRequest `protobuf:"bytes,1,opt,name=proxy_engine_request,json=proxyEngineRequest,proto3" json:"proxy_engine_request,omitempty"` + SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` } -func (m *EngineSnapshotHashStatusRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotHashStatusRequest.Unmarshal(m, b) -} -func (m *EngineSnapshotHashStatusRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotHashStatusRequest.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotHashStatusRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotHashStatusRequest.Merge(m, src) +func (x *EngineSnapshotHashStatusRequest) Reset() { + *x = EngineSnapshotHashStatusRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotHashStatusRequest) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotHashStatusRequest.Size(m) + +func (x *EngineSnapshotHashStatusRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotHashStatusRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotHashStatusRequest.DiscardUnknown(m) + +func (*EngineSnapshotHashStatusRequest) ProtoMessage() {} + +func (x *EngineSnapshotHashStatusRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotHashStatusRequest proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotHashStatusRequest.ProtoReflect.Descriptor instead. +func (*EngineSnapshotHashStatusRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{31} +} -func (m *EngineSnapshotHashStatusRequest) GetProxyEngineRequest() *ProxyEngineRequest { - if m != nil { - return m.ProxyEngineRequest +func (x *EngineSnapshotHashStatusRequest) GetProxyEngineRequest() *ProxyEngineRequest { + if x != nil { + return x.ProxyEngineRequest } return nil } -func (m *EngineSnapshotHashStatusRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *EngineSnapshotHashStatusRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } type EngineSnapshotHashStatusProxyResponse struct { - Status map[string]*ptypes.SnapshotHashStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineSnapshotHashStatusProxyResponse) Reset() { *m = EngineSnapshotHashStatusProxyResponse{} } -func (m *EngineSnapshotHashStatusProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineSnapshotHashStatusProxyResponse) ProtoMessage() {} -func (*EngineSnapshotHashStatusProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{32} + Status map[string]*ptypes.SnapshotHashStatusResponse `protobuf:"bytes,1,rep,name=status,proto3" json:"status,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineSnapshotHashStatusProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineSnapshotHashStatusProxyResponse.Unmarshal(m, b) -} -func (m *EngineSnapshotHashStatusProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineSnapshotHashStatusProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineSnapshotHashStatusProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineSnapshotHashStatusProxyResponse.Merge(m, src) +func (x *EngineSnapshotHashStatusProxyResponse) Reset() { + *x = EngineSnapshotHashStatusProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineSnapshotHashStatusProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineSnapshotHashStatusProxyResponse.Size(m) + +func (x *EngineSnapshotHashStatusProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineSnapshotHashStatusProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineSnapshotHashStatusProxyResponse.DiscardUnknown(m) + +func (*EngineSnapshotHashStatusProxyResponse) ProtoMessage() {} + +func (x *EngineSnapshotHashStatusProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineSnapshotHashStatusProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineSnapshotHashStatusProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineSnapshotHashStatusProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{32} +} -func (m *EngineSnapshotHashStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotHashStatusResponse { - if m != nil { - return m.Status +func (x *EngineSnapshotHashStatusProxyResponse) GetStatus() map[string]*ptypes.SnapshotHashStatusResponse { + if x != nil { + return x.Status } return nil } type EngineMetricsGetProxyResponse struct { - Metrics *ptypes.Metrics `protobuf:"bytes,1,opt,name=metrics,proto3" json:"metrics,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineMetricsGetProxyResponse) Reset() { *m = EngineMetricsGetProxyResponse{} } -func (m *EngineMetricsGetProxyResponse) String() string { return proto.CompactTextString(m) } -func (*EngineMetricsGetProxyResponse) ProtoMessage() {} -func (*EngineMetricsGetProxyResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_c29cfec1128f1245, []int{33} + Metrics *ptypes.Metrics `protobuf:"bytes,1,opt,name=metrics,proto3" json:"metrics,omitempty"` } -func (m *EngineMetricsGetProxyResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineMetricsGetProxyResponse.Unmarshal(m, b) -} -func (m *EngineMetricsGetProxyResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineMetricsGetProxyResponse.Marshal(b, m, deterministic) -} -func (m *EngineMetricsGetProxyResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineMetricsGetProxyResponse.Merge(m, src) +func (x *EngineMetricsGetProxyResponse) Reset() { + *x = EngineMetricsGetProxyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineMetricsGetProxyResponse) XXX_Size() int { - return xxx_messageInfo_EngineMetricsGetProxyResponse.Size(m) + +func (x *EngineMetricsGetProxyResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineMetricsGetProxyResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineMetricsGetProxyResponse.DiscardUnknown(m) + +func (*EngineMetricsGetProxyResponse) ProtoMessage() {} + +func (x *EngineMetricsGetProxyResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineMetricsGetProxyResponse proto.InternalMessageInfo +// Deprecated: Use EngineMetricsGetProxyResponse.ProtoReflect.Descriptor instead. +func (*EngineMetricsGetProxyResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP(), []int{33} +} -func (m *EngineMetricsGetProxyResponse) GetMetrics() *ptypes.Metrics { - if m != nil { - return m.Metrics +func (x *EngineMetricsGetProxyResponse) GetMetrics() *ptypes.Metrics { + if x != nil { + return x.Metrics } return nil } -func init() { - proto.RegisterType((*ProxyEngineRequest)(nil), "imrpc.ProxyEngineRequest") - proto.RegisterType((*EngineVersionProxyResponse)(nil), "imrpc.EngineVersionProxyResponse") - proto.RegisterType((*EngineVolumeGetProxyResponse)(nil), "imrpc.EngineVolumeGetProxyResponse") - proto.RegisterType((*EngineVolumeExpandRequest)(nil), "imrpc.EngineVolumeExpandRequest") - proto.RegisterType((*EngineVolumeFrontendStartRequest)(nil), "imrpc.EngineVolumeFrontendStartRequest") - proto.RegisterType((*EngineVolumeSnapshotRequest)(nil), "imrpc.EngineVolumeSnapshotRequest") - proto.RegisterType((*EngineVolumeSnapshotProxyResponse)(nil), "imrpc.EngineVolumeSnapshotProxyResponse") - proto.RegisterType((*EngineVolumeUnmapMarkSnapChainRemovedSetRequest)(nil), "imrpc.EngineVolumeUnmapMarkSnapChainRemovedSetRequest") - proto.RegisterType((*EngineSnapshotListProxyResponse)(nil), "imrpc.EngineSnapshotListProxyResponse") - proto.RegisterMapType((map[string]*EngineSnapshotDiskInfo)(nil), "imrpc.EngineSnapshotListProxyResponse.DisksEntry") - proto.RegisterType((*EngineSnapshotDiskInfo)(nil), "imrpc.EngineSnapshotDiskInfo") - proto.RegisterMapType((map[string]bool)(nil), "imrpc.EngineSnapshotDiskInfo.ChildrenEntry") - proto.RegisterMapType((map[string]string)(nil), "imrpc.EngineSnapshotDiskInfo.LabelsEntry") - proto.RegisterType((*EngineSnapshotRevertRequest)(nil), "imrpc.EngineSnapshotRevertRequest") - proto.RegisterType((*EngineSnapshotPurgeRequest)(nil), "imrpc.EngineSnapshotPurgeRequest") - proto.RegisterType((*EngineSnapshotPurgeStatusProxyResponse)(nil), "imrpc.EngineSnapshotPurgeStatusProxyResponse") - proto.RegisterMapType((map[string]*ptypes.SnapshotPurgeStatusResponse)(nil), "imrpc.EngineSnapshotPurgeStatusProxyResponse.StatusEntry") - proto.RegisterType((*EngineSnapshotCloneRequest)(nil), "imrpc.EngineSnapshotCloneRequest") - proto.RegisterType((*EngineSnapshotCloneStatusProxyResponse)(nil), "imrpc.EngineSnapshotCloneStatusProxyResponse") - proto.RegisterMapType((map[string]*ptypes.SnapshotCloneStatusResponse)(nil), "imrpc.EngineSnapshotCloneStatusProxyResponse.StatusEntry") - proto.RegisterType((*EngineSnapshotRemoveRequest)(nil), "imrpc.EngineSnapshotRemoveRequest") - proto.RegisterType((*EngineSnapshotBackupRequest)(nil), "imrpc.EngineSnapshotBackupRequest") - proto.RegisterMapType((map[string]string)(nil), "imrpc.EngineSnapshotBackupRequest.LabelsEntry") - proto.RegisterType((*EngineSnapshotBackupProxyResponse)(nil), "imrpc.EngineSnapshotBackupProxyResponse") - proto.RegisterType((*EngineSnapshotBackupStatusRequest)(nil), "imrpc.EngineSnapshotBackupStatusRequest") - proto.RegisterType((*EngineSnapshotBackupStatusProxyResponse)(nil), "imrpc.EngineSnapshotBackupStatusProxyResponse") - proto.RegisterType((*EngineBackupRestoreRequest)(nil), "imrpc.EngineBackupRestoreRequest") - proto.RegisterType((*EngineBackupRestoreProxyResponse)(nil), "imrpc.EngineBackupRestoreProxyResponse") - proto.RegisterType((*EngineBackupRestoreStatusProxyResponse)(nil), "imrpc.EngineBackupRestoreStatusProxyResponse") - proto.RegisterMapType((map[string]*EngineBackupRestoreStatus)(nil), "imrpc.EngineBackupRestoreStatusProxyResponse.StatusEntry") - proto.RegisterType((*EngineBackupRestoreStatus)(nil), "imrpc.EngineBackupRestoreStatus") - proto.RegisterType((*EngineReplicaAddRequest)(nil), "imrpc.EngineReplicaAddRequest") - proto.RegisterType((*EngineReplicaListProxyResponse)(nil), "imrpc.EngineReplicaListProxyResponse") - proto.RegisterType((*EngineReplicaVerifyRebuildRequest)(nil), "imrpc.EngineReplicaVerifyRebuildRequest") - proto.RegisterType((*EngineReplicaRebuildStatusProxyResponse)(nil), "imrpc.EngineReplicaRebuildStatusProxyResponse") - proto.RegisterMapType((map[string]*ptypes.ReplicaRebuildStatusResponse)(nil), "imrpc.EngineReplicaRebuildStatusProxyResponse.StatusEntry") - proto.RegisterType((*EngineReplicaRemoveRequest)(nil), "imrpc.EngineReplicaRemoveRequest") - proto.RegisterType((*EngineReplicaModeUpdateRequest)(nil), "imrpc.EngineReplicaModeUpdateRequest") - proto.RegisterType((*EngineSnapshotHashRequest)(nil), "imrpc.EngineSnapshotHashRequest") - proto.RegisterType((*EngineSnapshotHashStatusRequest)(nil), "imrpc.EngineSnapshotHashStatusRequest") - proto.RegisterType((*EngineSnapshotHashStatusProxyResponse)(nil), "imrpc.EngineSnapshotHashStatusProxyResponse") - proto.RegisterMapType((map[string]*ptypes.SnapshotHashStatusResponse)(nil), "imrpc.EngineSnapshotHashStatusProxyResponse.StatusEntry") - proto.RegisterType((*EngineMetricsGetProxyResponse)(nil), "imrpc.EngineMetricsGetProxyResponse") -} - -func init() { - proto.RegisterFile("github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto", fileDescriptor_c29cfec1128f1245) -} - -var fileDescriptor_c29cfec1128f1245 = []byte{ - // 2359 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x19, 0xdb, 0x72, 0x1c, 0x47, - 0xb5, 0x56, 0xab, 0x95, 0x56, 0x67, 0x25, 0x59, 0x69, 0x09, 0x65, 0xbd, 0x8a, 0x13, 0x6b, 0x9c, - 0xf8, 0x52, 0xc4, 0xab, 0xc2, 0xa6, 0x82, 0xed, 0xbc, 0xd8, 0x91, 0x65, 0x5b, 0xb6, 0x45, 0xcc, - 0x28, 0x36, 0x50, 0x21, 0x99, 0x1a, 0xcd, 0xf6, 0xee, 0x0e, 0x9a, 0x1b, 0x3d, 0x3d, 0xc2, 0xe2, - 0x81, 0x82, 0x6f, 0xa0, 0x8a, 0x82, 0x07, 0xaa, 0x78, 0xe1, 0x07, 0xa0, 0x78, 0xa1, 0xa0, 0x78, - 0xe0, 0x27, 0x42, 0x51, 0xf0, 0xc0, 0x2f, 0xf0, 0x03, 0x54, 0xdf, 0x66, 0xa7, 0x67, 0x7b, 0x76, - 0xa5, 0xc0, 0x56, 0xde, 0x66, 0x4e, 0x9f, 0x3e, 0xf7, 0x73, 0xfa, 0xf4, 0x69, 0xd8, 0x1d, 0xf8, - 0x74, 0x98, 0x1d, 0x75, 0xbd, 0x38, 0xdc, 0x09, 0xe2, 0x68, 0x30, 0x8c, 0x49, 0x94, 0x7f, 0xdc, - 0xf4, 0xa3, 0x94, 0xba, 0x91, 0x87, 0x6f, 0x86, 0x6e, 0xe4, 0x0e, 0x30, 0xd9, 0x49, 0x8e, 0x07, - 0x3b, 0x7e, 0x48, 0x12, 0x6f, 0x27, 0x21, 0xf1, 0xeb, 0xd3, 0x6e, 0x42, 0x62, 0x1a, 0xa3, 0x06, - 0x07, 0x75, 0xb6, 0x06, 0x71, 0x3c, 0x08, 0xf0, 0x0e, 0x07, 0x1e, 0x65, 0xfd, 0x1d, 0x1c, 0x26, - 0x54, 0xe2, 0x74, 0x1e, 0x4c, 0x64, 0x84, 0xa3, 0x81, 0x1f, 0xc9, 0x9d, 0x3b, 0x09, 0x3d, 0x4d, - 0x70, 0xba, 0xe3, 0xc5, 0x11, 0x25, 0x71, 0x10, 0x60, 0x22, 0x49, 0xdc, 0x3f, 0x37, 0x89, 0xf4, - 0x34, 0xf2, 0xdc, 0x01, 0x8e, 0xa8, 0xa4, 0xf0, 0xf0, 0xcb, 0x6a, 0xeb, 0xc5, 0x61, 0x18, 0x47, - 0x82, 0x8a, 0xf5, 0x97, 0x1a, 0xa0, 0x17, 0x4c, 0xfd, 0x3d, 0xce, 0xd2, 0xc6, 0x3f, 0xca, 0x70, - 0x4a, 0x51, 0x1b, 0x16, 0xdd, 0x5e, 0x8f, 0xe0, 0x34, 0x6d, 0xd7, 0x2e, 0xd7, 0xae, 0x2f, 0xd9, - 0xea, 0x17, 0x3d, 0x83, 0x8d, 0x23, 0xd7, 0x3b, 0xc6, 0x51, 0xcf, 0x49, 0x69, 0x4c, 0xb0, 0xd3, - 0x23, 0xfe, 0x09, 0x26, 0xed, 0xb9, 0xcb, 0xb5, 0xeb, 0xab, 0xb7, 0x2e, 0x76, 0x39, 0x8f, 0xee, - 0x47, 0x02, 0xe5, 0x90, 0x61, 0x3c, 0xe4, 0x08, 0x36, 0x3a, 0x1a, 0x83, 0xa1, 0x77, 0xa0, 0x25, - 0x54, 0x75, 0x22, 0x37, 0xc4, 0xed, 0x3a, 0x67, 0x05, 0x02, 0xf4, 0x6d, 0x37, 0xc4, 0x0c, 0xe1, - 0x24, 0x0e, 0xb2, 0x50, 0x22, 0xcc, 0x0b, 0x04, 0x01, 0x62, 0x08, 0xd6, 0x01, 0x74, 0x84, 0xe4, - 0xaf, 0x30, 0x49, 0xfd, 0x38, 0xe2, 0xba, 0xd8, 0x38, 0x4d, 0xe2, 0x28, 0xc5, 0x68, 0x07, 0x16, - 0x4f, 0x04, 0x9c, 0xab, 0xd1, 0xba, 0xf5, 0xb5, 0xae, 0xb0, 0x66, 0x57, 0xa2, 0x7f, 0x9c, 0xd1, - 0x24, 0xa3, 0xb6, 0xc2, 0xb2, 0x1e, 0xc1, 0x5b, 0x92, 0x1c, 0x67, 0xf1, 0x18, 0x53, 0x9d, 0xe0, - 0x55, 0x58, 0x10, 0xcc, 0x25, 0xbd, 0xd5, 0x9c, 0x1e, 0x87, 0xda, 0x72, 0xd5, 0xfa, 0x4d, 0x0d, - 0x2e, 0x16, 0x09, 0xed, 0xbd, 0x4e, 0xdc, 0xa8, 0xa7, 0xac, 0xfb, 0x0c, 0x36, 0x78, 0xc8, 0x39, - 0x52, 0x79, 0x22, 0xe0, 0x92, 0xa6, 0xb2, 0xe1, 0xb8, 0x5b, 0x6c, 0x94, 0x8c, 0xbb, 0xea, 0x36, - 0x2c, 0x60, 0x4e, 0x9d, 0xbb, 0xa0, 0x75, 0x6b, 0x4b, 0x17, 0x49, 0xe3, 0x6c, 0x4b, 0x54, 0xeb, - 0x4f, 0x35, 0xb8, 0x5c, 0x94, 0xef, 0x11, 0x89, 0x23, 0xca, 0x9d, 0xe3, 0x12, 0x3a, 0x13, 0x31, - 0xf7, 0x61, 0xb5, 0x2f, 0x99, 0x38, 0x29, 0xe3, 0x22, 0xc5, 0xb5, 0x74, 0x71, 0x4d, 0x82, 0xd8, - 0x2b, 0xfd, 0x22, 0xd4, 0xfa, 0x7d, 0x0d, 0xb6, 0x8a, 0xc2, 0x1f, 0x46, 0x6e, 0x92, 0x0e, 0xe3, - 0xd9, 0xc8, 0xfd, 0x08, 0x2e, 0xa4, 0x92, 0xbe, 0x23, 0x5d, 0x2f, 0x04, 0xbf, 0xa4, 0x0b, 0x5e, - 0x12, 0xc2, 0x5e, 0x55, 0xbb, 0xc4, 0xb2, 0xf5, 0x03, 0xd8, 0x36, 0xc9, 0xac, 0x87, 0xd7, 0xb7, - 0xa0, 0xa9, 0xb6, 0x49, 0x69, 0xb7, 0xaa, 0xb8, 0x24, 0xc1, 0xa9, 0x9d, 0x23, 0x5b, 0x7f, 0xaf, - 0xc1, 0x4e, 0x91, 0xfc, 0xcb, 0x28, 0x74, 0x93, 0x03, 0x97, 0x1c, 0xb3, 0x0d, 0xbb, 0x43, 0xd7, - 0x8f, 0x6c, 0x1c, 0xc6, 0x27, 0xb8, 0x77, 0x88, 0x67, 0x63, 0xa6, 0xef, 0xc3, 0x85, 0x8c, 0xf1, - 0x74, 0x42, 0x97, 0x1c, 0x3b, 0x4c, 0x2e, 0x69, 0xa6, 0x6f, 0xe8, 0x0a, 0x9c, 0x41, 0x30, 0x7b, - 0x25, 0x2b, 0x22, 0x59, 0x7f, 0xab, 0xc1, 0x3b, 0x82, 0x99, 0xd2, 0xfe, 0xb9, 0x9f, 0x96, 0x0c, - 0xf7, 0x18, 0x1a, 0x3d, 0x3f, 0x3d, 0x66, 0xd5, 0xaa, 0xce, 0x99, 0x0a, 0xe1, 0xa7, 0x6c, 0xeb, - 0x3e, 0x64, 0x7b, 0xf6, 0x22, 0x4a, 0x4e, 0x6d, 0xb1, 0xbf, 0xf3, 0x5d, 0x80, 0x11, 0x10, 0xad, - 0x41, 0xfd, 0x18, 0x9f, 0xca, 0x12, 0xc8, 0x3e, 0xd1, 0x6d, 0x68, 0x9c, 0xb8, 0x41, 0x36, 0x0a, - 0x02, 0x13, 0x23, 0x46, 0x61, 0x3f, 0xea, 0xc7, 0xb6, 0xc0, 0xbd, 0x37, 0x77, 0xa7, 0x66, 0xfd, - 0xa1, 0x0e, 0x9b, 0x66, 0x2c, 0x84, 0x60, 0x9e, 0x57, 0x37, 0xc1, 0x86, 0x7f, 0xa3, 0x4d, 0x58, - 0x48, 0x5c, 0x82, 0x23, 0x91, 0x26, 0x4b, 0xb6, 0xfc, 0x43, 0x8f, 0xa1, 0xe9, 0x0d, 0xfd, 0xa0, - 0x47, 0x70, 0xd4, 0xae, 0x73, 0x5d, 0xbf, 0x3e, 0x51, 0x84, 0xee, 0xae, 0xc4, 0x16, 0x5a, 0xe6, - 0x9b, 0x59, 0x85, 0x27, 0xc2, 0xf2, 0xbc, 0xaa, 0x36, 0x6d, 0xf5, 0x8b, 0xb6, 0x61, 0x39, 0x4b, - 0x31, 0x71, 0x3c, 0x82, 0x5d, 0x8a, 0x7b, 0xed, 0x06, 0x5f, 0x6e, 0x31, 0xd8, 0xae, 0x00, 0xb1, - 0xcd, 0x6a, 0x75, 0x41, 0x1c, 0x0f, 0xf2, 0x97, 0xe9, 0x92, 0xfa, 0x3f, 0xc1, 0xed, 0x45, 0xa1, - 0x0b, 0xfb, 0x46, 0x0f, 0x60, 0x21, 0x70, 0x8f, 0x70, 0x90, 0xb6, 0x9b, 0x5c, 0xe2, 0x1b, 0x93, - 0x25, 0x7e, 0xce, 0x71, 0x85, 0xbc, 0x72, 0x63, 0xe7, 0x43, 0x58, 0xd1, 0x14, 0x31, 0x78, 0x66, - 0xa3, 0xe8, 0x99, 0x66, 0xc1, 0xf4, 0x9d, 0xbb, 0xd0, 0x2a, 0xd0, 0x9c, 0xb6, 0x75, 0xa9, 0xe8, - 0xb5, 0x9f, 0xaa, 0x4a, 0x33, 0x4a, 0xbc, 0x13, 0x3c, 0xa3, 0x0a, 0xa9, 0xc2, 0x60, 0x6e, 0x14, - 0x06, 0xd6, 0xaf, 0x6a, 0xea, 0x7c, 0xcb, 0x0b, 0x46, 0x46, 0x06, 0x78, 0x26, 0xfc, 0x6f, 0xc2, - 0x7a, 0x7a, 0xec, 0x27, 0x8e, 0xdf, 0x77, 0xfc, 0xc8, 0x49, 0x48, 0x3c, 0xe0, 0xe7, 0xbf, 0x30, - 0xe7, 0x1a, 0x5b, 0xda, 0xef, 0xef, 0xb3, 0x03, 0x96, 0xc3, 0xad, 0x7f, 0xd4, 0xe0, 0xaa, 0x41, - 0xb4, 0x43, 0xea, 0xd2, 0x2c, 0xd5, 0xb3, 0xf3, 0x3b, 0xb0, 0x90, 0x72, 0xb0, 0x4c, 0xcf, 0xbb, - 0xc6, 0x00, 0xa8, 0xda, 0xde, 0x15, 0x30, 0x19, 0x10, 0x82, 0x50, 0xe7, 0x73, 0x68, 0x15, 0xc0, - 0x06, 0x9f, 0xde, 0xd5, 0x13, 0xf5, 0x8a, 0x2a, 0x43, 0x06, 0x6e, 0x8a, 0x51, 0xd1, 0xf1, 0xbf, - 0xac, 0x97, 0x0d, 0xbf, 0x1b, 0xc4, 0xd1, 0x6c, 0x0c, 0xdf, 0x85, 0xf5, 0x3e, 0x89, 0x43, 0x45, - 0x4b, 0x35, 0x5e, 0x22, 0x0e, 0xde, 0x60, 0x4b, 0x02, 0xff, 0x81, 0x6c, 0xc1, 0xae, 0xc0, 0x4a, - 0x7e, 0x24, 0x15, 0xfa, 0xa6, 0x65, 0x05, 0xe4, 0x9d, 0xd3, 0x7d, 0xb8, 0x84, 0x5f, 0x27, 0x31, - 0xa1, 0x0e, 0xeb, 0xbb, 0xfc, 0x68, 0xe0, 0xf8, 0xa1, 0x3b, 0xc0, 0xcc, 0xbb, 0xf8, 0xb5, 0x9f, - 0x52, 0x99, 0xf5, 0x17, 0x05, 0xd2, 0x47, 0x02, 0x67, 0x9f, 0xa1, 0xec, 0xf7, 0xf7, 0x18, 0x02, - 0xa3, 0xd0, 0xf7, 0x03, 0xec, 0xb0, 0xc6, 0xd3, 0x19, 0x52, 0x9a, 0x38, 0x5e, 0xe0, 0xe3, 0x88, - 0x3a, 0xd4, 0x0f, 0x71, 0x9c, 0x51, 0x5e, 0x18, 0x1a, 0xf6, 0x45, 0x86, 0x74, 0x78, 0x1a, 0x79, - 0x4f, 0x28, 0x4d, 0x76, 0x39, 0xc6, 0x27, 0x02, 0x01, 0x5d, 0x87, 0xb5, 0xa2, 0x62, 0x5c, 0x56, - 0x51, 0x2f, 0x56, 0x47, 0x5a, 0x71, 0x69, 0x15, 0x66, 0xb1, 0xd9, 0x5b, 0x1c, 0x61, 0xbe, 0x1a, - 0x35, 0x7c, 0xe3, 0x61, 0xc7, 0x1d, 0xf3, 0xe5, 0xc3, 0xae, 0x6a, 0xfb, 0x6c, 0xc2, 0xae, 0xc0, - 0xcd, 0x14, 0x76, 0x3f, 0xab, 0x8d, 0x17, 0x1c, 0x56, 0x95, 0x67, 0x12, 0x77, 0x1b, 0xd0, 0x60, - 0x86, 0x66, 0x91, 0x56, 0x67, 0x65, 0x8f, 0xff, 0x58, 0x5f, 0xcc, 0x97, 0x45, 0x60, 0xc1, 0x91, - 0x25, 0xb3, 0xaa, 0x79, 0x38, 0x3a, 0x11, 0x07, 0xc3, 0x92, 0xcd, 0xbf, 0x59, 0xcf, 0x7f, 0xc4, - 0x39, 0x3a, 0x85, 0x72, 0x08, 0x02, 0xc4, 0x83, 0xe5, 0x4c, 0xf1, 0x7f, 0x05, 0x56, 0x24, 0x15, - 0xea, 0x92, 0x01, 0xa6, 0xf2, 0xee, 0xb0, 0x2c, 0x80, 0x9f, 0x70, 0x18, 0x7a, 0x1f, 0x90, 0x9e, - 0x1d, 0x9c, 0x5c, 0x83, 0x63, 0xae, 0x1d, 0x15, 0x72, 0x82, 0x93, 0xfc, 0x26, 0x6c, 0xea, 0xd8, - 0xde, 0x10, 0x7b, 0xc7, 0x69, 0x16, 0xca, 0xa0, 0xde, 0x28, 0xee, 0xd8, 0x95, 0x6b, 0xe8, 0x51, - 0x7e, 0xfa, 0x2d, 0xf2, 0x28, 0xec, 0x1a, 0xa3, 0x50, 0xb3, 0xb1, 0xe9, 0x08, 0x44, 0x37, 0x01, - 0x79, 0x71, 0x98, 0xb0, 0x0a, 0xe0, 0xc7, 0x91, 0x13, 0x62, 0x3a, 0x8c, 0x7b, 0xed, 0x25, 0x51, - 0x24, 0x0a, 0x2b, 0x07, 0x7c, 0x01, 0xdd, 0x80, 0x35, 0x2f, 0x8e, 0xbc, 0x8c, 0xb0, 0xb6, 0xc1, - 0x09, 0xfc, 0xd0, 0xa7, 0x6d, 0xe0, 0x09, 0x7b, 0x61, 0x04, 0x7f, 0xce, 0xc0, 0xcc, 0x0a, 0xec, - 0x2a, 0xc7, 0x35, 0x0a, 0xdc, 0x34, 0x15, 0x56, 0x68, 0x09, 0x2b, 0xc8, 0x95, 0x5d, 0xb6, 0xc0, - 0xac, 0xf0, 0xbf, 0x9c, 0xa6, 0x3f, 0xaf, 0xa9, 0x26, 0x58, 0x57, 0x5b, 0x4f, 0xdb, 0x2d, 0x58, - 0x92, 0x9e, 0xf3, 0x7b, 0x92, 0x6e, 0x53, 0x00, 0xf6, 0x7b, 0xa2, 0x6d, 0x49, 0x02, 0xdf, 0x73, - 0x25, 0x79, 0xf5, 0x8b, 0xde, 0x83, 0x55, 0x3f, 0x75, 0xfc, 0xc8, 0x23, 0x38, 0xc4, 0x11, 0x75, - 0x03, 0x1e, 0x16, 0x4d, 0x7b, 0xc5, 0x4f, 0xf7, 0x47, 0x40, 0xeb, 0x9f, 0x15, 0x32, 0xa8, 0x9c, - 0x9c, 0x41, 0x90, 0x4f, 0x0d, 0xe8, 0x6b, 0x70, 0x41, 0x6a, 0x91, 0x17, 0x7f, 0x11, 0xd2, 0xab, - 0x12, 0xac, 0x2a, 0xff, 0x36, 0x2c, 0x2b, 0xc4, 0xc2, 0x7d, 0xb8, 0x25, 0x61, 0xbc, 0x3e, 0xfe, - 0xab, 0x06, 0xd7, 0xaa, 0xf5, 0xd3, 0x2d, 0x7d, 0x09, 0xa4, 0x14, 0x4e, 0x46, 0x02, 0x69, 0x6a, - 0x69, 0xfb, 0x97, 0x24, 0x60, 0x8e, 0xc4, 0x84, 0xc4, 0x44, 0x39, 0x92, 0xff, 0xa0, 0x0e, 0x34, - 0xf3, 0xde, 0xa0, 0xce, 0x03, 0x2a, 0xff, 0x1f, 0xcf, 0xcc, 0x79, 0x43, 0x66, 0x6e, 0x40, 0x83, - 0x55, 0x53, 0x95, 0x67, 0xe2, 0xc7, 0x64, 0x83, 0x05, 0x93, 0x0d, 0xac, 0xff, 0xe4, 0x2d, 0x91, - 0xca, 0x19, 0x3e, 0x87, 0x98, 0x69, 0x79, 0x9a, 0x2b, 0x94, 0xa7, 0x35, 0xa8, 0x33, 0x6b, 0x09, - 0x07, 0xb1, 0x4f, 0xd6, 0xab, 0x6b, 0x35, 0x46, 0xfe, 0x95, 0x87, 0x17, 0x8d, 0xf2, 0xf0, 0xc2, - 0x98, 0xa3, 0x0b, 0xc6, 0x1c, 0xb5, 0xee, 0xab, 0xfb, 0xba, 0xa6, 0xb4, 0xee, 0xce, 0xb7, 0x60, - 0x89, 0xba, 0xe9, 0xf1, 0x1e, 0xf7, 0x19, 0xd3, 0x77, 0xd9, 0x1e, 0x01, 0xac, 0x2f, 0xf2, 0x83, - 0x53, 0x23, 0x71, 0xfe, 0x83, 0x73, 0xda, 0x76, 0xe3, 0xc1, 0xf9, 0xe9, 0xb4, 0x83, 0xf3, 0x03, - 0xfd, 0xe0, 0xbc, 0x3c, 0x8d, 0x65, 0xb1, 0xae, 0xfc, 0x76, 0x4e, 0x4d, 0x5b, 0x0c, 0x88, 0x2c, - 0x69, 0xfc, 0xd4, 0x21, 0x1c, 0xe6, 0x47, 0x03, 0xce, 0xb4, 0x69, 0xb7, 0xfc, 0xd4, 0x56, 0x20, - 0x16, 0xb7, 0x81, 0x9b, 0x52, 0x89, 0x84, 0x7b, 0x32, 0xe2, 0x97, 0x19, 0x50, 0x12, 0xeb, 0xa1, - 0x3b, 0xd0, 0x56, 0xae, 0xca, 0x89, 0x39, 0x22, 0x5b, 0x64, 0x34, 0x6c, 0xca, 0xf5, 0x9c, 0xb0, - 0x10, 0x47, 0x4b, 0x99, 0xf9, 0x52, 0xca, 0xe4, 0x49, 0xd6, 0x28, 0x25, 0x19, 0x6b, 0xab, 0x0a, - 0x1d, 0x53, 0xfe, 0x3f, 0xca, 0x9f, 0xc5, 0x62, 0xfe, 0xe8, 0xb9, 0xdc, 0x2c, 0xe5, 0xb2, 0xf5, - 0xef, 0x39, 0x78, 0x53, 0xc5, 0xb6, 0x4a, 0xa7, 0x99, 0xa4, 0x8c, 0x21, 0x8f, 0xe7, 0x8c, 0xb5, - 0x8c, 0x57, 0x72, 0x6e, 0x5a, 0x59, 0xa8, 0xd5, 0x6f, 0x7e, 0x87, 0x64, 0xa6, 0xaa, 0xcb, 0x3b, - 0xe4, 0x36, 0x2c, 0x2b, 0xe3, 0xf3, 0xb5, 0x06, 0x5f, 0x6b, 0x49, 0xd8, 0x21, 0x43, 0xd9, 0x82, - 0xa5, 0x3e, 0x73, 0x22, 0xeb, 0x57, 0xb9, 0xd1, 0x9a, 0x76, 0x93, 0x01, 0x58, 0x6f, 0x3a, 0xbd, - 0x99, 0x5d, 0x9c, 0xd6, 0xcc, 0x96, 0x6b, 0x6f, 0x73, 0xbc, 0xf6, 0x7e, 0x06, 0x6f, 0x6b, 0x36, - 0x1e, 0x9f, 0x53, 0x7c, 0x38, 0x22, 0x12, 0xf8, 0xb9, 0x89, 0xdb, 0xaa, 0x4b, 0x2c, 0xec, 0x13, - 0x13, 0x1e, 0x45, 0x9e, 0x41, 0xac, 0x3f, 0xe7, 0x47, 0x97, 0xc4, 0x7b, 0x85, 0x89, 0xdf, 0x3f, - 0xb5, 0xf1, 0x51, 0xe6, 0x07, 0x5f, 0xb1, 0x37, 0xcb, 0xd6, 0xa9, 0x4f, 0x3a, 0x99, 0xa4, 0xf8, - 0x52, 0x70, 0x53, 0x05, 0xb2, 0x4b, 0x15, 0xe8, 0x9e, 0x56, 0x0e, 0xa6, 0xee, 0x37, 0x96, 0x20, - 0x67, 0x5a, 0x09, 0xba, 0xa7, 0x97, 0xa0, 0x77, 0x4b, 0x5e, 0xd1, 0xd8, 0x99, 0x9a, 0xf7, 0x3f, - 0xe6, 0x27, 0x53, 0xbe, 0x63, 0x66, 0xbd, 0xfb, 0xff, 0xd3, 0x31, 0x7f, 0xad, 0x95, 0xe2, 0xf6, - 0x20, 0xee, 0xe1, 0x97, 0x49, 0xcf, 0xa5, 0x5f, 0xb1, 0xec, 0xd7, 0x60, 0x3e, 0x8c, 0x7b, 0x42, - 0xe6, 0xd5, 0x5b, 0xeb, 0x25, 0x7f, 0x30, 0x29, 0x6d, 0x8e, 0x60, 0xfd, 0x2e, 0x1f, 0xb7, 0xab, - 0xa6, 0xe7, 0x89, 0x9b, 0x0e, 0x67, 0x22, 0xfc, 0x58, 0x8b, 0x33, 0x67, 0x68, 0x71, 0x36, 0x61, - 0x81, 0xe0, 0xa1, 0x9b, 0x0e, 0x65, 0x69, 0x93, 0x7f, 0xd6, 0x2f, 0xc6, 0x46, 0x99, 0x4c, 0xce, - 0x19, 0xb6, 0x9e, 0x67, 0x91, 0x96, 0x75, 0x06, 0xef, 0x55, 0x49, 0xa5, 0xa7, 0xe5, 0x8b, 0x52, - 0x5a, 0xde, 0x31, 0xde, 0x65, 0x2a, 0x76, 0x1b, 0x93, 0xf2, 0xb3, 0x69, 0x49, 0x79, 0x47, 0x4f, - 0x4a, 0xab, 0x7c, 0xa1, 0x2e, 0x1a, 0x70, 0x3c, 0x25, 0x9f, 0xc2, 0x25, 0x21, 0xdb, 0x01, 0xa6, - 0xc4, 0xf7, 0xd2, 0xb1, 0x07, 0x9d, 0x1b, 0xb0, 0x18, 0x8a, 0x25, 0x69, 0xe0, 0x0b, 0x8a, 0x81, - 0xdc, 0x61, 0xab, 0xf5, 0x5b, 0xbf, 0x5e, 0xd7, 0x9e, 0xca, 0x0e, 0x31, 0x39, 0xf1, 0x3d, 0x66, - 0x93, 0x35, 0xf6, 0x89, 0x89, 0x7c, 0x52, 0x7a, 0x8c, 0x29, 0xaa, 0xf6, 0x52, 0x67, 0x5b, 0x33, - 0x99, 0xf1, 0xd5, 0xea, 0x19, 0x2c, 0xe5, 0xcf, 0x4f, 0x93, 0x48, 0x5d, 0xd1, 0x49, 0x99, 0x5f, - 0xac, 0x9e, 0xc0, 0x72, 0xf1, 0x21, 0x08, 0x5d, 0x36, 0x6c, 0xd2, 0xde, 0x88, 0x3a, 0x9b, 0x5d, - 0xf1, 0xf6, 0xd9, 0x55, 0x6f, 0x9f, 0xdd, 0xbd, 0x30, 0xa1, 0xa7, 0xe8, 0x15, 0xac, 0x1b, 0xde, - 0x68, 0xd0, 0x35, 0x03, 0x41, 0xd3, 0x2b, 0x4e, 0x25, 0xdd, 0x67, 0xb0, 0x59, 0xda, 0x35, 0xcc, - 0x68, 0x2f, 0xfe, 0x71, 0x34, 0x49, 0xf7, 0x2a, 0x62, 0x14, 0xac, 0xe9, 0x0f, 0x0d, 0xe8, 0x03, - 0x83, 0xcc, 0x67, 0x78, 0x99, 0xa8, 0xe4, 0xfa, 0x39, 0xac, 0xea, 0xef, 0x33, 0xc8, 0x32, 0x70, - 0x28, 0x3d, 0x11, 0x75, 0xae, 0x4f, 0xc0, 0x29, 0x37, 0xe4, 0xcb, 0xc5, 0x47, 0x8c, 0x49, 0x86, - 0xb9, 0x7a, 0xb6, 0xa7, 0x0f, 0xf4, 0x1c, 0x56, 0xf5, 0x99, 0x76, 0x49, 0x64, 0xe3, 0xc0, 0xbb, - 0xd2, 0x00, 0x4f, 0x61, 0x45, 0x1b, 0xac, 0xa2, 0xed, 0xea, 0x11, 0xef, 0x34, 0x5a, 0x0e, 0xac, - 0x1b, 0x86, 0xb4, 0x93, 0x74, 0xbe, 0x79, 0xae, 0x79, 0x72, 0x51, 0x58, 0x3e, 0x8e, 0xab, 0x10, - 0xb6, 0x38, 0xf0, 0x3d, 0x8b, 0xb0, 0x85, 0xd1, 0xde, 0xf9, 0x85, 0xad, 0x1c, 0x62, 0x6a, 0x7e, - 0x62, 0xf1, 0x58, 0xe9, 0xa7, 0x42, 0xaf, 0x51, 0x29, 0xee, 0x93, 0x51, 0x20, 0xb1, 0xc2, 0x59, - 0xaa, 0x06, 0x86, 0xc3, 0xb3, 0x92, 0xd2, 0x0f, 0x01, 0x8d, 0x97, 0x60, 0x74, 0x75, 0xca, 0x81, - 0xa0, 0xa8, 0xbe, 0x7f, 0x9e, 0x83, 0x83, 0xa5, 0x97, 0x3e, 0xcc, 0xa8, 0xb0, 0x81, 0x36, 0x44, - 0x2b, 0xa5, 0xd7, 0xa4, 0x89, 0x53, 0x02, 0x1b, 0xa6, 0x61, 0x09, 0x9a, 0x44, 0x41, 0xd7, 0xa7, - 0x3b, 0x15, 0x53, 0xe7, 0xf8, 0x29, 0xac, 0x68, 0x57, 0xd5, 0x52, 0x08, 0x9a, 0x26, 0x1b, 0x9d, - 0x6b, 0xd5, 0x28, 0x3a, 0x71, 0x07, 0xd6, 0x4d, 0xf7, 0xe0, 0x33, 0xc7, 0xe4, 0xd4, 0xf9, 0xc0, - 0x53, 0x68, 0xef, 0x06, 0xd8, 0x8d, 0xb2, 0x44, 0xa0, 0x1e, 0xc4, 0x59, 0x44, 0x5f, 0xc4, 0x7e, - 0x44, 0x53, 0x54, 0x11, 0x2f, 0x95, 0x71, 0xf4, 0x10, 0x60, 0x74, 0x23, 0x45, 0x6f, 0x9b, 0xfa, - 0xfc, 0xd1, 0x55, 0xb5, 0x92, 0xca, 0xc7, 0xd0, 0x2a, 0xdc, 0x9d, 0x26, 0xa9, 0xfa, 0x9e, 0x89, - 0xc3, 0x78, 0x79, 0xec, 0xc1, 0x9b, 0x7a, 0xdb, 0xef, 0x47, 0x83, 0xe9, 0x76, 0xec, 0x9e, 0xef, - 0x9a, 0x82, 0xbe, 0x07, 0x1b, 0xa6, 0xab, 0x5c, 0x29, 0xf0, 0x26, 0xdc, 0xf6, 0x26, 0x15, 0x64, - 0xed, 0x12, 0x52, 0x0a, 0x30, 0xd3, 0x05, 0xa5, 0x92, 0x96, 0x0d, 0x6f, 0x8c, 0x5d, 0x0c, 0x90, - 0xd1, 0x8e, 0x63, 0x17, 0x87, 0x4a, 0x9a, 0x07, 0x00, 0xa3, 0x96, 0x6c, 0x92, 0x49, 0xdf, 0xd5, - 0xf8, 0x54, 0xb4, 0x71, 0x47, 0x0b, 0x9c, 0xfc, 0xed, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x89, - 0x6b, 0xad, 0x71, 0x03, 0x26, 0x00, 0x00, +var File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDesc = []byte{ + 0x0a, 0x43, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, + 0x70, 0x6b, 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x1a, 0x1b, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x41, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, + 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x40, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, + 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x65, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x73, + 0x79, 0x6e, 0x63, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x44, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, + 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, 0x6b, + 0x67, 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x01, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x4b, 0x0a, 0x14, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, + 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x42, 0x61, 0x63, 0x6b, + 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, 0x65, 0x72, 0x52, 0x12, + 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x44, 0x72, 0x69, 0x76, + 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x4d, 0x0a, 0x1a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x22, 0x46, 0x0a, 0x1c, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, + 0x75, 0x6d, 0x65, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x6f, 0x6c, + 0x75, 0x6d, 0x65, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x22, 0x9d, 0x01, 0x0a, 0x19, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x45, 0x78, 0x70, 0x61, + 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, + 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, + 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x45, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x52, 0x06, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x64, 0x22, 0xba, 0x01, 0x0a, 0x20, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, + 0x0e, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0d, 0x66, 0x72, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x22, 0xb2, 0x01, 0x0a, 0x1b, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, + 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x0f, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0e, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x22, 0x5c, 0x0a, + 0x21, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, 0x6f, + 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x70, 0x6c, + 0x79, 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x22, 0xd9, 0x01, 0x0a, 0x2f, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x55, 0x6e, 0x6d, 0x61, + 0x70, 0x4d, 0x61, 0x72, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x59, 0x0a, 0x0f, + 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x5f, 0x6d, 0x61, 0x72, 0x6b, 0x5f, 0x73, 0x6e, 0x61, 0x70, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x56, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x55, 0x6e, 0x6d, 0x61, 0x70, 0x4d, 0x61, 0x72, 0x6b, 0x53, 0x6e, + 0x61, 0x70, 0x43, 0x68, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x53, 0x65, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0d, 0x75, 0x6e, 0x6d, 0x61, 0x70, 0x4d, + 0x61, 0x72, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x22, 0xc3, 0x01, 0x0a, 0x1f, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x05, 0x64, + 0x69, 0x73, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x64, + 0x69, 0x73, 0x6b, 0x73, 0x1a, 0x57, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x6b, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x33, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x44, 0x69, 0x73, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xb3, 0x03, + 0x0a, 0x16, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x44, 0x69, 0x73, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, + 0x72, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x44, 0x69, 0x73, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x18, 0x0a, + 0x07, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x5f, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, + 0x73, 0x65, 0x72, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x41, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, + 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x44, + 0x69, 0x73, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x1a, 0x3b, 0x0a, 0x0d, 0x43, + 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, + 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x7e, 0x0a, 0x1b, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, + 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x22, 0x98, 0x01, 0x0a, 0x1a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x75, 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, + 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2d, 0x0a, 0x13, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x69, 0x66, 0x5f, 0x69, 0x6e, 0x5f, 0x70, 0x72, + 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x6b, + 0x69, 0x70, 0x49, 0x66, 0x49, 0x6e, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0xdb, + 0x01, 0x0a, 0x26, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x50, 0x75, 0x72, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x50, 0x75, 0x72, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x5e, 0x0a, 0x0b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x39, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, + 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x75, + 0x72, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x96, 0x03, 0x0a, + 0x1a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, + 0x6c, 0x6f, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, + 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x66, 0x72, 0x6f, 0x6d, + 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x66, 0x72, 0x6f, 0x6d, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, + 0x1d, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x66, 0x5f, 0x65, 0x78, 0x69, 0x73, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x42, 0x61, 0x63, 0x6b, + 0x69, 0x6e, 0x67, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x66, 0x45, 0x78, 0x69, 0x73, 0x74, 0x12, + 0x40, 0x0a, 0x1d, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x68, 0x74, 0x74, + 0x70, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x19, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x79, 0x6e, 0x63, + 0x48, 0x74, 0x74, 0x70, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, + 0x74, 0x12, 0x28, 0x0a, 0x10, 0x66, 0x72, 0x6f, 0x6d, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x72, 0x6f, + 0x6d, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x66, + 0x72, 0x6f, 0x6d, 0x5f, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x66, 0x72, 0x6f, 0x6d, 0x56, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x26, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x51, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x39, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x1a, 0x5e, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x80, 0x01, 0x0a, 0x1b, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, + 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x05, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xd8, 0x04, 0x0a, 0x1b, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x6e, 0x76, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x04, 0x65, 0x6e, 0x76, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, + 0x0d, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x54, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x34, 0x0a, 0x16, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x14, 0x62, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x12, 0x46, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, + 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x2d, + 0x0a, 0x12, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, + 0x74, 0x68, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x63, 0x6f, 0x6d, 0x70, + 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x29, 0x0a, + 0x10, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, + 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x73, 0x74, 0x6f, 0x72, + 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, + 0x73, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x81, 0x01, 0x0a, 0x21, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x25, + 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x69, 0x73, 0x49, 0x6e, 0x63, 0x72, 0x65, 0x6d, + 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x22, 0xdd, 0x01, 0x0a, 0x21, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, + 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xde, 0x01, 0x0a, 0x27, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x75, 0x72, 0x6c, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x55, 0x72, 0x6c, + 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x27, 0x0a, + 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x1a, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, + 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x6e, 0x76, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x04, 0x65, 0x6e, 0x76, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, + 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, + 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x63, 0x6f, 0x6e, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0x40, 0x0a, 0x20, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, + 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x73, 0x6b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0c, 0x52, 0x09, 0x74, 0x61, 0x73, 0x6b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x22, 0xd8, + 0x01, 0x0a, 0x26, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, + 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x5b, 0x0a, 0x0b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x36, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa0, 0x02, 0x0a, 0x19, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x72, 0x65, + 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, + 0x73, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, + 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x64, 0x12, + 0x38, 0x0a, 0x18, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x6f, + 0x72, 0x69, 0x6e, 0x67, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x16, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, + 0x69, 0x6e, 0x67, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x72, 0x6f, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x55, 0x72, 0x6c, 0x22, 0xe2, 0x02, 0x0a, + 0x17, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, + 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x18, + 0x0a, 0x07, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x21, 0x0a, 0x0c, + 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0b, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x66, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x08, 0x66, 0x61, 0x73, 0x74, 0x53, 0x79, 0x6e, 0x63, 0x12, 0x40, 0x0a, 0x1d, + 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x73, 0x79, 0x6e, 0x63, 0x5f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x19, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x79, 0x6e, 0x63, 0x48, 0x74, 0x74, + 0x70, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x21, + 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0x5d, 0x0a, 0x1e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x3b, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6c, + 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x70, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, + 0x22, 0xbc, 0x01, 0x0a, 0x21, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0xde, 0x01, 0x0a, 0x27, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x52, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, + 0x5f, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x3a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x24, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0xb5, 0x01, 0x0a, 0x1a, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, + 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x1e, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, + 0x72, 0x6f, 0x78, 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x27, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x13, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x19, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, + 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, + 0x79, 0x5f, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, + 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x52, 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x68, 0x61, 0x73, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x68, 0x61, + 0x73, 0x68, 0x22, 0x93, 0x01, 0x0a, 0x1f, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x14, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x5f, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, + 0x12, 0x70, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xd8, 0x01, 0x0a, 0x25, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x50, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x1a, 0x5d, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0x4a, 0x0a, 0x1d, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x32, + 0x99, 0x13, 0x0a, 0x12, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x10, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x09, 0x56, 0x6f, 0x6c, 0x75, + 0x6d, 0x65, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x23, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x0c, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x45, + 0x78, 0x70, 0x61, 0x6e, 0x64, 0x12, 0x20, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x45, 0x78, 0x70, 0x61, 0x6e, 0x64, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, + 0x56, 0x0a, 0x13, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x27, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4b, 0x0a, 0x16, 0x56, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, + 0x6e, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x12, 0x74, 0x0a, 0x22, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x55, 0x6e, + 0x6d, 0x61, 0x70, 0x4d, 0x61, 0x72, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x43, 0x68, 0x61, 0x69, 0x6e, + 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x53, 0x65, 0x74, 0x12, 0x36, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x55, + 0x6e, 0x6d, 0x61, 0x70, 0x4d, 0x61, 0x72, 0x6b, 0x53, 0x6e, 0x61, 0x70, 0x43, 0x68, 0x61, 0x69, + 0x6e, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x53, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5e, 0x0a, 0x0e, 0x56, 0x6f, + 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x12, 0x22, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, + 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x28, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x56, + 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x72, 0x6f, + 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x51, 0x0a, 0x0c, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, + 0x0e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x12, + 0x22, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4a, 0x0a, 0x0d, 0x53, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x50, 0x75, 0x72, 0x67, 0x65, 0x12, 0x21, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x50, 0x75, 0x72, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5f, 0x0a, 0x13, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x50, 0x75, 0x72, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, + 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x50, 0x75, 0x72, 0x67, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0d, 0x53, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x12, 0x21, 0x2e, 0x69, 0x6d, 0x72, 0x70, + 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x12, 0x5f, 0x0a, 0x13, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x43, 0x6c, 0x6f, 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x6c, 0x6f, + 0x6e, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x0e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x22, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, + 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x48, 0x0a, 0x0c, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, + 0x61, 0x73, 0x68, 0x12, 0x20, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x6a, 0x0a, + 0x12, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x26, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x48, 0x61, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5e, 0x0a, 0x0e, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x12, 0x22, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x28, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x70, 0x0a, 0x14, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x28, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6d, + 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x0d, 0x42, + 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x2e, 0x69, + 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, + 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x27, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, + 0x63, 0x6b, 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x50, 0x72, 0x6f, 0x78, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x13, 0x42, 0x61, 0x63, 0x6b, + 0x75, 0x70, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x52, + 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x18, 0x43, 0x6c, 0x65, + 0x61, 0x6e, 0x75, 0x70, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x4d, 0x6f, 0x75, 0x6e, 0x74, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x44, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x41, 0x64, 0x64, 0x12, 0x1e, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4f, 0x0a, 0x0b, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x64, 0x0a, 0x17, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, + 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x58, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x56, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x12, 0x28, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x56, 0x65, 0x72, 0x69, 0x66, 0x79, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4a, 0x0a, 0x0d, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x12, 0x21, 0x2e, + 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x52, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x52, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x25, 0x2e, + 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x4d, 0x0a, 0x0a, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x47, 0x65, 0x74, 0x12, 0x19, 0x2e, 0x69, 0x6d, 0x72, + 0x70, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x78, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x39, 0x5a, 0x37, 0x67, + 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, + 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x6e, 0x63, 0x65, 0x2d, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2f, 0x70, 0x6b, 0x67, + 0x2f, 0x69, 0x6d, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescData = file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDescData +} + +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes = make([]protoimpl.MessageInfo, 43) +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_goTypes = []interface{}{ + (*ProxyEngineRequest)(nil), // 0: imrpc.ProxyEngineRequest + (*EngineVersionProxyResponse)(nil), // 1: imrpc.EngineVersionProxyResponse + (*EngineVolumeGetProxyResponse)(nil), // 2: imrpc.EngineVolumeGetProxyResponse + (*EngineVolumeExpandRequest)(nil), // 3: imrpc.EngineVolumeExpandRequest + (*EngineVolumeFrontendStartRequest)(nil), // 4: imrpc.EngineVolumeFrontendStartRequest + (*EngineVolumeSnapshotRequest)(nil), // 5: imrpc.EngineVolumeSnapshotRequest + (*EngineVolumeSnapshotProxyResponse)(nil), // 6: imrpc.EngineVolumeSnapshotProxyResponse + (*EngineVolumeUnmapMarkSnapChainRemovedSetRequest)(nil), // 7: imrpc.EngineVolumeUnmapMarkSnapChainRemovedSetRequest + (*EngineSnapshotListProxyResponse)(nil), // 8: imrpc.EngineSnapshotListProxyResponse + (*EngineSnapshotDiskInfo)(nil), // 9: imrpc.EngineSnapshotDiskInfo + (*EngineSnapshotRevertRequest)(nil), // 10: imrpc.EngineSnapshotRevertRequest + (*EngineSnapshotPurgeRequest)(nil), // 11: imrpc.EngineSnapshotPurgeRequest + (*EngineSnapshotPurgeStatusProxyResponse)(nil), // 12: imrpc.EngineSnapshotPurgeStatusProxyResponse + (*EngineSnapshotCloneRequest)(nil), // 13: imrpc.EngineSnapshotCloneRequest + (*EngineSnapshotCloneStatusProxyResponse)(nil), // 14: imrpc.EngineSnapshotCloneStatusProxyResponse + (*EngineSnapshotRemoveRequest)(nil), // 15: imrpc.EngineSnapshotRemoveRequest + (*EngineSnapshotBackupRequest)(nil), // 16: imrpc.EngineSnapshotBackupRequest + (*EngineSnapshotBackupProxyResponse)(nil), // 17: imrpc.EngineSnapshotBackupProxyResponse + (*EngineSnapshotBackupStatusRequest)(nil), // 18: imrpc.EngineSnapshotBackupStatusRequest + (*EngineSnapshotBackupStatusProxyResponse)(nil), // 19: imrpc.EngineSnapshotBackupStatusProxyResponse + (*EngineBackupRestoreRequest)(nil), // 20: imrpc.EngineBackupRestoreRequest + (*EngineBackupRestoreProxyResponse)(nil), // 21: imrpc.EngineBackupRestoreProxyResponse + (*EngineBackupRestoreStatusProxyResponse)(nil), // 22: imrpc.EngineBackupRestoreStatusProxyResponse + (*EngineBackupRestoreStatus)(nil), // 23: imrpc.EngineBackupRestoreStatus + (*EngineReplicaAddRequest)(nil), // 24: imrpc.EngineReplicaAddRequest + (*EngineReplicaListProxyResponse)(nil), // 25: imrpc.EngineReplicaListProxyResponse + (*EngineReplicaVerifyRebuildRequest)(nil), // 26: imrpc.EngineReplicaVerifyRebuildRequest + (*EngineReplicaRebuildStatusProxyResponse)(nil), // 27: imrpc.EngineReplicaRebuildStatusProxyResponse + (*EngineReplicaRemoveRequest)(nil), // 28: imrpc.EngineReplicaRemoveRequest + (*EngineReplicaModeUpdateRequest)(nil), // 29: imrpc.EngineReplicaModeUpdateRequest + (*EngineSnapshotHashRequest)(nil), // 30: imrpc.EngineSnapshotHashRequest + (*EngineSnapshotHashStatusRequest)(nil), // 31: imrpc.EngineSnapshotHashStatusRequest + (*EngineSnapshotHashStatusProxyResponse)(nil), // 32: imrpc.EngineSnapshotHashStatusProxyResponse + (*EngineMetricsGetProxyResponse)(nil), // 33: imrpc.EngineMetricsGetProxyResponse + nil, // 34: imrpc.EngineSnapshotListProxyResponse.DisksEntry + nil, // 35: imrpc.EngineSnapshotDiskInfo.ChildrenEntry + nil, // 36: imrpc.EngineSnapshotDiskInfo.LabelsEntry + nil, // 37: imrpc.EngineSnapshotPurgeStatusProxyResponse.StatusEntry + nil, // 38: imrpc.EngineSnapshotCloneStatusProxyResponse.StatusEntry + nil, // 39: imrpc.EngineSnapshotBackupRequest.LabelsEntry + nil, // 40: imrpc.EngineBackupRestoreStatusProxyResponse.StatusEntry + nil, // 41: imrpc.EngineReplicaRebuildStatusProxyResponse.StatusEntry + nil, // 42: imrpc.EngineSnapshotHashStatusProxyResponse.StatusEntry + (BackendStoreDriver)(0), // 43: imrpc.BackendStoreDriver + (*ptypes.VersionOutput)(nil), // 44: ptypes.VersionOutput + (*ptypes.Volume)(nil), // 45: ptypes.Volume + (*ptypes.VolumeExpandRequest)(nil), // 46: ptypes.VolumeExpandRequest + (*ptypes.VolumeFrontendStartRequest)(nil), // 47: ptypes.VolumeFrontendStartRequest + (*ptypes.VolumeSnapshotRequest)(nil), // 48: ptypes.VolumeSnapshotRequest + (*ptypes.VolumeSnapshotReply)(nil), // 49: ptypes.VolumeSnapshotReply + (*ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest)(nil), // 50: ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest + (*ptypes.ReplicaListReply)(nil), // 51: ptypes.ReplicaListReply + (ptypes.ReplicaMode)(0), // 52: ptypes.ReplicaMode + (*ptypes.Metrics)(nil), // 53: ptypes.Metrics + (*ptypes.SnapshotPurgeStatusResponse)(nil), // 54: ptypes.SnapshotPurgeStatusResponse + (*ptypes.SnapshotCloneStatusResponse)(nil), // 55: ptypes.SnapshotCloneStatusResponse + (*ptypes.ReplicaRebuildStatusResponse)(nil), // 56: ptypes.ReplicaRebuildStatusResponse + (*ptypes.SnapshotHashStatusResponse)(nil), // 57: ptypes.SnapshotHashStatusResponse + (*emptypb.Empty)(nil), // 58: google.protobuf.Empty +} +var file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_depIdxs = []int32{ + 43, // 0: imrpc.ProxyEngineRequest.backend_store_driver:type_name -> imrpc.BackendStoreDriver + 44, // 1: imrpc.EngineVersionProxyResponse.version:type_name -> ptypes.VersionOutput + 45, // 2: imrpc.EngineVolumeGetProxyResponse.volume:type_name -> ptypes.Volume + 0, // 3: imrpc.EngineVolumeExpandRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 46, // 4: imrpc.EngineVolumeExpandRequest.expand:type_name -> ptypes.VolumeExpandRequest + 0, // 5: imrpc.EngineVolumeFrontendStartRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 47, // 6: imrpc.EngineVolumeFrontendStartRequest.frontend_start:type_name -> ptypes.VolumeFrontendStartRequest + 0, // 7: imrpc.EngineVolumeSnapshotRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 48, // 8: imrpc.EngineVolumeSnapshotRequest.snapshot_volume:type_name -> ptypes.VolumeSnapshotRequest + 49, // 9: imrpc.EngineVolumeSnapshotProxyResponse.snapshot:type_name -> ptypes.VolumeSnapshotReply + 0, // 10: imrpc.EngineVolumeUnmapMarkSnapChainRemovedSetRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 50, // 11: imrpc.EngineVolumeUnmapMarkSnapChainRemovedSetRequest.unmap_mark_snap:type_name -> ptypes.VolumeUnmapMarkSnapChainRemovedSetRequest + 34, // 12: imrpc.EngineSnapshotListProxyResponse.disks:type_name -> imrpc.EngineSnapshotListProxyResponse.DisksEntry + 35, // 13: imrpc.EngineSnapshotDiskInfo.children:type_name -> imrpc.EngineSnapshotDiskInfo.ChildrenEntry + 36, // 14: imrpc.EngineSnapshotDiskInfo.labels:type_name -> imrpc.EngineSnapshotDiskInfo.LabelsEntry + 0, // 15: imrpc.EngineSnapshotRevertRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 0, // 16: imrpc.EngineSnapshotPurgeRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 37, // 17: imrpc.EngineSnapshotPurgeStatusProxyResponse.status:type_name -> imrpc.EngineSnapshotPurgeStatusProxyResponse.StatusEntry + 0, // 18: imrpc.EngineSnapshotCloneRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 38, // 19: imrpc.EngineSnapshotCloneStatusProxyResponse.status:type_name -> imrpc.EngineSnapshotCloneStatusProxyResponse.StatusEntry + 0, // 20: imrpc.EngineSnapshotRemoveRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 0, // 21: imrpc.EngineSnapshotBackupRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 39, // 22: imrpc.EngineSnapshotBackupRequest.labels:type_name -> imrpc.EngineSnapshotBackupRequest.LabelsEntry + 0, // 23: imrpc.EngineSnapshotBackupStatusRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 0, // 24: imrpc.EngineBackupRestoreRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 40, // 25: imrpc.EngineBackupRestoreStatusProxyResponse.status:type_name -> imrpc.EngineBackupRestoreStatusProxyResponse.StatusEntry + 0, // 26: imrpc.EngineReplicaAddRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 51, // 27: imrpc.EngineReplicaListProxyResponse.replica_list:type_name -> ptypes.ReplicaListReply + 0, // 28: imrpc.EngineReplicaVerifyRebuildRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 41, // 29: imrpc.EngineReplicaRebuildStatusProxyResponse.status:type_name -> imrpc.EngineReplicaRebuildStatusProxyResponse.StatusEntry + 0, // 30: imrpc.EngineReplicaRemoveRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 0, // 31: imrpc.EngineReplicaModeUpdateRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 52, // 32: imrpc.EngineReplicaModeUpdateRequest.mode:type_name -> ptypes.ReplicaMode + 0, // 33: imrpc.EngineSnapshotHashRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 0, // 34: imrpc.EngineSnapshotHashStatusRequest.proxy_engine_request:type_name -> imrpc.ProxyEngineRequest + 42, // 35: imrpc.EngineSnapshotHashStatusProxyResponse.status:type_name -> imrpc.EngineSnapshotHashStatusProxyResponse.StatusEntry + 53, // 36: imrpc.EngineMetricsGetProxyResponse.metrics:type_name -> ptypes.Metrics + 9, // 37: imrpc.EngineSnapshotListProxyResponse.DisksEntry.value:type_name -> imrpc.EngineSnapshotDiskInfo + 54, // 38: imrpc.EngineSnapshotPurgeStatusProxyResponse.StatusEntry.value:type_name -> ptypes.SnapshotPurgeStatusResponse + 55, // 39: imrpc.EngineSnapshotCloneStatusProxyResponse.StatusEntry.value:type_name -> ptypes.SnapshotCloneStatusResponse + 23, // 40: imrpc.EngineBackupRestoreStatusProxyResponse.StatusEntry.value:type_name -> imrpc.EngineBackupRestoreStatus + 56, // 41: imrpc.EngineReplicaRebuildStatusProxyResponse.StatusEntry.value:type_name -> ptypes.ReplicaRebuildStatusResponse + 57, // 42: imrpc.EngineSnapshotHashStatusProxyResponse.StatusEntry.value:type_name -> ptypes.SnapshotHashStatusResponse + 0, // 43: imrpc.ProxyEngineService.ServerVersionGet:input_type -> imrpc.ProxyEngineRequest + 0, // 44: imrpc.ProxyEngineService.VolumeGet:input_type -> imrpc.ProxyEngineRequest + 3, // 45: imrpc.ProxyEngineService.VolumeExpand:input_type -> imrpc.EngineVolumeExpandRequest + 4, // 46: imrpc.ProxyEngineService.VolumeFrontendStart:input_type -> imrpc.EngineVolumeFrontendStartRequest + 0, // 47: imrpc.ProxyEngineService.VolumeFrontendShutdown:input_type -> imrpc.ProxyEngineRequest + 7, // 48: imrpc.ProxyEngineService.VolumeUnmapMarkSnapChainRemovedSet:input_type -> imrpc.EngineVolumeUnmapMarkSnapChainRemovedSetRequest + 5, // 49: imrpc.ProxyEngineService.VolumeSnapshot:input_type -> imrpc.EngineVolumeSnapshotRequest + 0, // 50: imrpc.ProxyEngineService.SnapshotList:input_type -> imrpc.ProxyEngineRequest + 10, // 51: imrpc.ProxyEngineService.SnapshotRevert:input_type -> imrpc.EngineSnapshotRevertRequest + 11, // 52: imrpc.ProxyEngineService.SnapshotPurge:input_type -> imrpc.EngineSnapshotPurgeRequest + 0, // 53: imrpc.ProxyEngineService.SnapshotPurgeStatus:input_type -> imrpc.ProxyEngineRequest + 13, // 54: imrpc.ProxyEngineService.SnapshotClone:input_type -> imrpc.EngineSnapshotCloneRequest + 0, // 55: imrpc.ProxyEngineService.SnapshotCloneStatus:input_type -> imrpc.ProxyEngineRequest + 15, // 56: imrpc.ProxyEngineService.SnapshotRemove:input_type -> imrpc.EngineSnapshotRemoveRequest + 30, // 57: imrpc.ProxyEngineService.SnapshotHash:input_type -> imrpc.EngineSnapshotHashRequest + 31, // 58: imrpc.ProxyEngineService.SnapshotHashStatus:input_type -> imrpc.EngineSnapshotHashStatusRequest + 16, // 59: imrpc.ProxyEngineService.SnapshotBackup:input_type -> imrpc.EngineSnapshotBackupRequest + 18, // 60: imrpc.ProxyEngineService.SnapshotBackupStatus:input_type -> imrpc.EngineSnapshotBackupStatusRequest + 20, // 61: imrpc.ProxyEngineService.BackupRestore:input_type -> imrpc.EngineBackupRestoreRequest + 0, // 62: imrpc.ProxyEngineService.BackupRestoreStatus:input_type -> imrpc.ProxyEngineRequest + 58, // 63: imrpc.ProxyEngineService.CleanupBackupMountPoints:input_type -> google.protobuf.Empty + 24, // 64: imrpc.ProxyEngineService.ReplicaAdd:input_type -> imrpc.EngineReplicaAddRequest + 0, // 65: imrpc.ProxyEngineService.ReplicaList:input_type -> imrpc.ProxyEngineRequest + 0, // 66: imrpc.ProxyEngineService.ReplicaRebuildingStatus:input_type -> imrpc.ProxyEngineRequest + 26, // 67: imrpc.ProxyEngineService.ReplicaVerifyRebuild:input_type -> imrpc.EngineReplicaVerifyRebuildRequest + 28, // 68: imrpc.ProxyEngineService.ReplicaRemove:input_type -> imrpc.EngineReplicaRemoveRequest + 29, // 69: imrpc.ProxyEngineService.ReplicaModeUpdate:input_type -> imrpc.EngineReplicaModeUpdateRequest + 0, // 70: imrpc.ProxyEngineService.MetricsGet:input_type -> imrpc.ProxyEngineRequest + 1, // 71: imrpc.ProxyEngineService.ServerVersionGet:output_type -> imrpc.EngineVersionProxyResponse + 2, // 72: imrpc.ProxyEngineService.VolumeGet:output_type -> imrpc.EngineVolumeGetProxyResponse + 58, // 73: imrpc.ProxyEngineService.VolumeExpand:output_type -> google.protobuf.Empty + 58, // 74: imrpc.ProxyEngineService.VolumeFrontendStart:output_type -> google.protobuf.Empty + 58, // 75: imrpc.ProxyEngineService.VolumeFrontendShutdown:output_type -> google.protobuf.Empty + 58, // 76: imrpc.ProxyEngineService.VolumeUnmapMarkSnapChainRemovedSet:output_type -> google.protobuf.Empty + 6, // 77: imrpc.ProxyEngineService.VolumeSnapshot:output_type -> imrpc.EngineVolumeSnapshotProxyResponse + 8, // 78: imrpc.ProxyEngineService.SnapshotList:output_type -> imrpc.EngineSnapshotListProxyResponse + 58, // 79: imrpc.ProxyEngineService.SnapshotRevert:output_type -> google.protobuf.Empty + 58, // 80: imrpc.ProxyEngineService.SnapshotPurge:output_type -> google.protobuf.Empty + 12, // 81: imrpc.ProxyEngineService.SnapshotPurgeStatus:output_type -> imrpc.EngineSnapshotPurgeStatusProxyResponse + 58, // 82: imrpc.ProxyEngineService.SnapshotClone:output_type -> google.protobuf.Empty + 14, // 83: imrpc.ProxyEngineService.SnapshotCloneStatus:output_type -> imrpc.EngineSnapshotCloneStatusProxyResponse + 58, // 84: imrpc.ProxyEngineService.SnapshotRemove:output_type -> google.protobuf.Empty + 58, // 85: imrpc.ProxyEngineService.SnapshotHash:output_type -> google.protobuf.Empty + 32, // 86: imrpc.ProxyEngineService.SnapshotHashStatus:output_type -> imrpc.EngineSnapshotHashStatusProxyResponse + 17, // 87: imrpc.ProxyEngineService.SnapshotBackup:output_type -> imrpc.EngineSnapshotBackupProxyResponse + 19, // 88: imrpc.ProxyEngineService.SnapshotBackupStatus:output_type -> imrpc.EngineSnapshotBackupStatusProxyResponse + 21, // 89: imrpc.ProxyEngineService.BackupRestore:output_type -> imrpc.EngineBackupRestoreProxyResponse + 22, // 90: imrpc.ProxyEngineService.BackupRestoreStatus:output_type -> imrpc.EngineBackupRestoreStatusProxyResponse + 58, // 91: imrpc.ProxyEngineService.CleanupBackupMountPoints:output_type -> google.protobuf.Empty + 58, // 92: imrpc.ProxyEngineService.ReplicaAdd:output_type -> google.protobuf.Empty + 25, // 93: imrpc.ProxyEngineService.ReplicaList:output_type -> imrpc.EngineReplicaListProxyResponse + 27, // 94: imrpc.ProxyEngineService.ReplicaRebuildingStatus:output_type -> imrpc.EngineReplicaRebuildStatusProxyResponse + 58, // 95: imrpc.ProxyEngineService.ReplicaVerifyRebuild:output_type -> google.protobuf.Empty + 58, // 96: imrpc.ProxyEngineService.ReplicaRemove:output_type -> google.protobuf.Empty + 58, // 97: imrpc.ProxyEngineService.ReplicaModeUpdate:output_type -> google.protobuf.Empty + 33, // 98: imrpc.ProxyEngineService.MetricsGet:output_type -> imrpc.EngineMetricsGetProxyResponse + 71, // [71:99] is the sub-list for method output_type + 43, // [43:71] is the sub-list for method input_type + 43, // [43:43] is the sub-list for extension type_name + 43, // [43:43] is the sub-list for extension extendee + 0, // [0:43] is the sub-list for field type_name +} + +func init() { file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_init() } +func file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_init() { + if File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto != nil { + return + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_common_proto_init() + if !protoimpl.UnsafeEnabled { + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ProxyEngineRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVersionProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeGetProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeExpandRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeFrontendStartRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeSnapshotRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeSnapshotProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineVolumeUnmapMarkSnapChainRemovedSetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotListProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotDiskInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotRevertRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotPurgeRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotPurgeStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotCloneRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotCloneStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotRemoveRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotBackupRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotBackupProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotBackupStatusRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotBackupStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineBackupRestoreRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineBackupRestoreProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineBackupRestoreStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineBackupRestoreStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaAddRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaListProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaVerifyRebuildRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaRebuildStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaRemoveRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaModeUpdateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotHashRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotHashStatusRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineSnapshotHashStatusProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineMetricsGetProxyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDesc, + NumEnums: 0, + NumMessages: 43, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_depIdxs, + MessageInfos: file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_msgTypes, + }.Build() + File_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto = out.File + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_rawDesc = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_goTypes = nil + file_github_com_longhorn_longhorn_instance_manager_pkg_imrpc_proxy_proto_depIdxs = nil } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConn +var _ grpc.ClientConnInterface // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +const _ = grpc.SupportPackageIsVersion6 // ProxyEngineServiceClient is the client API for ProxyEngineService service. // @@ -2150,39 +3440,39 @@ const _ = grpc.SupportPackageIsVersion4 type ProxyEngineServiceClient interface { ServerVersionGet(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineVersionProxyResponse, error) VolumeGet(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineVolumeGetProxyResponse, error) - VolumeExpand(ctx context.Context, in *EngineVolumeExpandRequest, opts ...grpc.CallOption) (*empty.Empty, error) - VolumeFrontendStart(ctx context.Context, in *EngineVolumeFrontendStartRequest, opts ...grpc.CallOption) (*empty.Empty, error) - VolumeFrontendShutdown(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*empty.Empty, error) - VolumeUnmapMarkSnapChainRemovedSet(ctx context.Context, in *EngineVolumeUnmapMarkSnapChainRemovedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error) + VolumeExpand(ctx context.Context, in *EngineVolumeExpandRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + VolumeFrontendStart(ctx context.Context, in *EngineVolumeFrontendStartRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + VolumeFrontendShutdown(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + VolumeUnmapMarkSnapChainRemovedSet(ctx context.Context, in *EngineVolumeUnmapMarkSnapChainRemovedSetRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) VolumeSnapshot(ctx context.Context, in *EngineVolumeSnapshotRequest, opts ...grpc.CallOption) (*EngineVolumeSnapshotProxyResponse, error) SnapshotList(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineSnapshotListProxyResponse, error) - SnapshotRevert(ctx context.Context, in *EngineSnapshotRevertRequest, opts ...grpc.CallOption) (*empty.Empty, error) - SnapshotPurge(ctx context.Context, in *EngineSnapshotPurgeRequest, opts ...grpc.CallOption) (*empty.Empty, error) + SnapshotRevert(ctx context.Context, in *EngineSnapshotRevertRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + SnapshotPurge(ctx context.Context, in *EngineSnapshotPurgeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) SnapshotPurgeStatus(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineSnapshotPurgeStatusProxyResponse, error) - SnapshotClone(ctx context.Context, in *EngineSnapshotCloneRequest, opts ...grpc.CallOption) (*empty.Empty, error) + SnapshotClone(ctx context.Context, in *EngineSnapshotCloneRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) SnapshotCloneStatus(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineSnapshotCloneStatusProxyResponse, error) - SnapshotRemove(ctx context.Context, in *EngineSnapshotRemoveRequest, opts ...grpc.CallOption) (*empty.Empty, error) - SnapshotHash(ctx context.Context, in *EngineSnapshotHashRequest, opts ...grpc.CallOption) (*empty.Empty, error) + SnapshotRemove(ctx context.Context, in *EngineSnapshotRemoveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + SnapshotHash(ctx context.Context, in *EngineSnapshotHashRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) SnapshotHashStatus(ctx context.Context, in *EngineSnapshotHashStatusRequest, opts ...grpc.CallOption) (*EngineSnapshotHashStatusProxyResponse, error) SnapshotBackup(ctx context.Context, in *EngineSnapshotBackupRequest, opts ...grpc.CallOption) (*EngineSnapshotBackupProxyResponse, error) SnapshotBackupStatus(ctx context.Context, in *EngineSnapshotBackupStatusRequest, opts ...grpc.CallOption) (*EngineSnapshotBackupStatusProxyResponse, error) BackupRestore(ctx context.Context, in *EngineBackupRestoreRequest, opts ...grpc.CallOption) (*EngineBackupRestoreProxyResponse, error) BackupRestoreStatus(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineBackupRestoreStatusProxyResponse, error) - CleanupBackupMountPoints(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*empty.Empty, error) + CleanupBackupMountPoints(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) ReplicaList(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineReplicaListProxyResponse, error) ReplicaRebuildingStatus(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineReplicaRebuildStatusProxyResponse, error) - ReplicaVerifyRebuild(ctx context.Context, in *EngineReplicaVerifyRebuildRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaRemove(ctx context.Context, in *EngineReplicaRemoveRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaModeUpdate(ctx context.Context, in *EngineReplicaModeUpdateRequest, opts ...grpc.CallOption) (*empty.Empty, error) + ReplicaVerifyRebuild(ctx context.Context, in *EngineReplicaVerifyRebuildRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaRemove(ctx context.Context, in *EngineReplicaRemoveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaModeUpdate(ctx context.Context, in *EngineReplicaModeUpdateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) MetricsGet(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*EngineMetricsGetProxyResponse, error) } type proxyEngineServiceClient struct { - cc *grpc.ClientConn + cc grpc.ClientConnInterface } -func NewProxyEngineServiceClient(cc *grpc.ClientConn) ProxyEngineServiceClient { +func NewProxyEngineServiceClient(cc grpc.ClientConnInterface) ProxyEngineServiceClient { return &proxyEngineServiceClient{cc} } @@ -2204,8 +3494,8 @@ func (c *proxyEngineServiceClient) VolumeGet(ctx context.Context, in *ProxyEngin return out, nil } -func (c *proxyEngineServiceClient) VolumeExpand(ctx context.Context, in *EngineVolumeExpandRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) VolumeExpand(ctx context.Context, in *EngineVolumeExpandRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/VolumeExpand", in, out, opts...) if err != nil { return nil, err @@ -2213,8 +3503,8 @@ func (c *proxyEngineServiceClient) VolumeExpand(ctx context.Context, in *EngineV return out, nil } -func (c *proxyEngineServiceClient) VolumeFrontendStart(ctx context.Context, in *EngineVolumeFrontendStartRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) VolumeFrontendStart(ctx context.Context, in *EngineVolumeFrontendStartRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/VolumeFrontendStart", in, out, opts...) if err != nil { return nil, err @@ -2222,8 +3512,8 @@ func (c *proxyEngineServiceClient) VolumeFrontendStart(ctx context.Context, in * return out, nil } -func (c *proxyEngineServiceClient) VolumeFrontendShutdown(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) VolumeFrontendShutdown(ctx context.Context, in *ProxyEngineRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/VolumeFrontendShutdown", in, out, opts...) if err != nil { return nil, err @@ -2231,8 +3521,8 @@ func (c *proxyEngineServiceClient) VolumeFrontendShutdown(ctx context.Context, i return out, nil } -func (c *proxyEngineServiceClient) VolumeUnmapMarkSnapChainRemovedSet(ctx context.Context, in *EngineVolumeUnmapMarkSnapChainRemovedSetRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) VolumeUnmapMarkSnapChainRemovedSet(ctx context.Context, in *EngineVolumeUnmapMarkSnapChainRemovedSetRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/VolumeUnmapMarkSnapChainRemovedSet", in, out, opts...) if err != nil { return nil, err @@ -2258,8 +3548,8 @@ func (c *proxyEngineServiceClient) SnapshotList(ctx context.Context, in *ProxyEn return out, nil } -func (c *proxyEngineServiceClient) SnapshotRevert(ctx context.Context, in *EngineSnapshotRevertRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) SnapshotRevert(ctx context.Context, in *EngineSnapshotRevertRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/SnapshotRevert", in, out, opts...) if err != nil { return nil, err @@ -2267,8 +3557,8 @@ func (c *proxyEngineServiceClient) SnapshotRevert(ctx context.Context, in *Engin return out, nil } -func (c *proxyEngineServiceClient) SnapshotPurge(ctx context.Context, in *EngineSnapshotPurgeRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) SnapshotPurge(ctx context.Context, in *EngineSnapshotPurgeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/SnapshotPurge", in, out, opts...) if err != nil { return nil, err @@ -2285,8 +3575,8 @@ func (c *proxyEngineServiceClient) SnapshotPurgeStatus(ctx context.Context, in * return out, nil } -func (c *proxyEngineServiceClient) SnapshotClone(ctx context.Context, in *EngineSnapshotCloneRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) SnapshotClone(ctx context.Context, in *EngineSnapshotCloneRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/SnapshotClone", in, out, opts...) if err != nil { return nil, err @@ -2303,8 +3593,8 @@ func (c *proxyEngineServiceClient) SnapshotCloneStatus(ctx context.Context, in * return out, nil } -func (c *proxyEngineServiceClient) SnapshotRemove(ctx context.Context, in *EngineSnapshotRemoveRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) SnapshotRemove(ctx context.Context, in *EngineSnapshotRemoveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/SnapshotRemove", in, out, opts...) if err != nil { return nil, err @@ -2312,8 +3602,8 @@ func (c *proxyEngineServiceClient) SnapshotRemove(ctx context.Context, in *Engin return out, nil } -func (c *proxyEngineServiceClient) SnapshotHash(ctx context.Context, in *EngineSnapshotHashRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) SnapshotHash(ctx context.Context, in *EngineSnapshotHashRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/SnapshotHash", in, out, opts...) if err != nil { return nil, err @@ -2366,8 +3656,8 @@ func (c *proxyEngineServiceClient) BackupRestoreStatus(ctx context.Context, in * return out, nil } -func (c *proxyEngineServiceClient) CleanupBackupMountPoints(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) CleanupBackupMountPoints(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/CleanupBackupMountPoints", in, out, opts...) if err != nil { return nil, err @@ -2375,8 +3665,8 @@ func (c *proxyEngineServiceClient) CleanupBackupMountPoints(ctx context.Context, return out, nil } -func (c *proxyEngineServiceClient) ReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) ReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/ReplicaAdd", in, out, opts...) if err != nil { return nil, err @@ -2402,8 +3692,8 @@ func (c *proxyEngineServiceClient) ReplicaRebuildingStatus(ctx context.Context, return out, nil } -func (c *proxyEngineServiceClient) ReplicaVerifyRebuild(ctx context.Context, in *EngineReplicaVerifyRebuildRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) ReplicaVerifyRebuild(ctx context.Context, in *EngineReplicaVerifyRebuildRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/ReplicaVerifyRebuild", in, out, opts...) if err != nil { return nil, err @@ -2411,8 +3701,8 @@ func (c *proxyEngineServiceClient) ReplicaVerifyRebuild(ctx context.Context, in return out, nil } -func (c *proxyEngineServiceClient) ReplicaRemove(ctx context.Context, in *EngineReplicaRemoveRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) ReplicaRemove(ctx context.Context, in *EngineReplicaRemoveRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/ReplicaRemove", in, out, opts...) if err != nil { return nil, err @@ -2420,8 +3710,8 @@ func (c *proxyEngineServiceClient) ReplicaRemove(ctx context.Context, in *Engine return out, nil } -func (c *proxyEngineServiceClient) ReplicaModeUpdate(ctx context.Context, in *EngineReplicaModeUpdateRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *proxyEngineServiceClient) ReplicaModeUpdate(ctx context.Context, in *EngineReplicaModeUpdateRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/imrpc.ProxyEngineService/ReplicaModeUpdate", in, out, opts...) if err != nil { return nil, err @@ -2442,31 +3732,31 @@ func (c *proxyEngineServiceClient) MetricsGet(ctx context.Context, in *ProxyEngi type ProxyEngineServiceServer interface { ServerVersionGet(context.Context, *ProxyEngineRequest) (*EngineVersionProxyResponse, error) VolumeGet(context.Context, *ProxyEngineRequest) (*EngineVolumeGetProxyResponse, error) - VolumeExpand(context.Context, *EngineVolumeExpandRequest) (*empty.Empty, error) - VolumeFrontendStart(context.Context, *EngineVolumeFrontendStartRequest) (*empty.Empty, error) - VolumeFrontendShutdown(context.Context, *ProxyEngineRequest) (*empty.Empty, error) - VolumeUnmapMarkSnapChainRemovedSet(context.Context, *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) (*empty.Empty, error) + VolumeExpand(context.Context, *EngineVolumeExpandRequest) (*emptypb.Empty, error) + VolumeFrontendStart(context.Context, *EngineVolumeFrontendStartRequest) (*emptypb.Empty, error) + VolumeFrontendShutdown(context.Context, *ProxyEngineRequest) (*emptypb.Empty, error) + VolumeUnmapMarkSnapChainRemovedSet(context.Context, *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) (*emptypb.Empty, error) VolumeSnapshot(context.Context, *EngineVolumeSnapshotRequest) (*EngineVolumeSnapshotProxyResponse, error) SnapshotList(context.Context, *ProxyEngineRequest) (*EngineSnapshotListProxyResponse, error) - SnapshotRevert(context.Context, *EngineSnapshotRevertRequest) (*empty.Empty, error) - SnapshotPurge(context.Context, *EngineSnapshotPurgeRequest) (*empty.Empty, error) + SnapshotRevert(context.Context, *EngineSnapshotRevertRequest) (*emptypb.Empty, error) + SnapshotPurge(context.Context, *EngineSnapshotPurgeRequest) (*emptypb.Empty, error) SnapshotPurgeStatus(context.Context, *ProxyEngineRequest) (*EngineSnapshotPurgeStatusProxyResponse, error) - SnapshotClone(context.Context, *EngineSnapshotCloneRequest) (*empty.Empty, error) + SnapshotClone(context.Context, *EngineSnapshotCloneRequest) (*emptypb.Empty, error) SnapshotCloneStatus(context.Context, *ProxyEngineRequest) (*EngineSnapshotCloneStatusProxyResponse, error) - SnapshotRemove(context.Context, *EngineSnapshotRemoveRequest) (*empty.Empty, error) - SnapshotHash(context.Context, *EngineSnapshotHashRequest) (*empty.Empty, error) + SnapshotRemove(context.Context, *EngineSnapshotRemoveRequest) (*emptypb.Empty, error) + SnapshotHash(context.Context, *EngineSnapshotHashRequest) (*emptypb.Empty, error) SnapshotHashStatus(context.Context, *EngineSnapshotHashStatusRequest) (*EngineSnapshotHashStatusProxyResponse, error) SnapshotBackup(context.Context, *EngineSnapshotBackupRequest) (*EngineSnapshotBackupProxyResponse, error) SnapshotBackupStatus(context.Context, *EngineSnapshotBackupStatusRequest) (*EngineSnapshotBackupStatusProxyResponse, error) BackupRestore(context.Context, *EngineBackupRestoreRequest) (*EngineBackupRestoreProxyResponse, error) BackupRestoreStatus(context.Context, *ProxyEngineRequest) (*EngineBackupRestoreStatusProxyResponse, error) - CleanupBackupMountPoints(context.Context, *empty.Empty) (*empty.Empty, error) - ReplicaAdd(context.Context, *EngineReplicaAddRequest) (*empty.Empty, error) + CleanupBackupMountPoints(context.Context, *emptypb.Empty) (*emptypb.Empty, error) + ReplicaAdd(context.Context, *EngineReplicaAddRequest) (*emptypb.Empty, error) ReplicaList(context.Context, *ProxyEngineRequest) (*EngineReplicaListProxyResponse, error) ReplicaRebuildingStatus(context.Context, *ProxyEngineRequest) (*EngineReplicaRebuildStatusProxyResponse, error) - ReplicaVerifyRebuild(context.Context, *EngineReplicaVerifyRebuildRequest) (*empty.Empty, error) - ReplicaRemove(context.Context, *EngineReplicaRemoveRequest) (*empty.Empty, error) - ReplicaModeUpdate(context.Context, *EngineReplicaModeUpdateRequest) (*empty.Empty, error) + ReplicaVerifyRebuild(context.Context, *EngineReplicaVerifyRebuildRequest) (*emptypb.Empty, error) + ReplicaRemove(context.Context, *EngineReplicaRemoveRequest) (*emptypb.Empty, error) + ReplicaModeUpdate(context.Context, *EngineReplicaModeUpdateRequest) (*emptypb.Empty, error) MetricsGet(context.Context, *ProxyEngineRequest) (*EngineMetricsGetProxyResponse, error) } @@ -2474,88 +3764,88 @@ type ProxyEngineServiceServer interface { type UnimplementedProxyEngineServiceServer struct { } -func (*UnimplementedProxyEngineServiceServer) ServerVersionGet(ctx context.Context, req *ProxyEngineRequest) (*EngineVersionProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) ServerVersionGet(context.Context, *ProxyEngineRequest) (*EngineVersionProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ServerVersionGet not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeGet(ctx context.Context, req *ProxyEngineRequest) (*EngineVolumeGetProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeGet(context.Context, *ProxyEngineRequest) (*EngineVolumeGetProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeGet not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeExpand(ctx context.Context, req *EngineVolumeExpandRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeExpand(context.Context, *EngineVolumeExpandRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeExpand not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeFrontendStart(ctx context.Context, req *EngineVolumeFrontendStartRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeFrontendStart(context.Context, *EngineVolumeFrontendStartRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeFrontendStart not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeFrontendShutdown(ctx context.Context, req *ProxyEngineRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeFrontendShutdown(context.Context, *ProxyEngineRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeFrontendShutdown not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeUnmapMarkSnapChainRemovedSet(ctx context.Context, req *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeUnmapMarkSnapChainRemovedSet(context.Context, *EngineVolumeUnmapMarkSnapChainRemovedSetRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeUnmapMarkSnapChainRemovedSet not implemented") } -func (*UnimplementedProxyEngineServiceServer) VolumeSnapshot(ctx context.Context, req *EngineVolumeSnapshotRequest) (*EngineVolumeSnapshotProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) VolumeSnapshot(context.Context, *EngineVolumeSnapshotRequest) (*EngineVolumeSnapshotProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method VolumeSnapshot not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotList(ctx context.Context, req *ProxyEngineRequest) (*EngineSnapshotListProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotList(context.Context, *ProxyEngineRequest) (*EngineSnapshotListProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotList not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotRevert(ctx context.Context, req *EngineSnapshotRevertRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotRevert(context.Context, *EngineSnapshotRevertRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotRevert not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotPurge(ctx context.Context, req *EngineSnapshotPurgeRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotPurge(context.Context, *EngineSnapshotPurgeRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotPurge not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotPurgeStatus(ctx context.Context, req *ProxyEngineRequest) (*EngineSnapshotPurgeStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotPurgeStatus(context.Context, *ProxyEngineRequest) (*EngineSnapshotPurgeStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotPurgeStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotClone(ctx context.Context, req *EngineSnapshotCloneRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotClone(context.Context, *EngineSnapshotCloneRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotClone not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotCloneStatus(ctx context.Context, req *ProxyEngineRequest) (*EngineSnapshotCloneStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotCloneStatus(context.Context, *ProxyEngineRequest) (*EngineSnapshotCloneStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotCloneStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotRemove(ctx context.Context, req *EngineSnapshotRemoveRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotRemove(context.Context, *EngineSnapshotRemoveRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotRemove not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotHash(ctx context.Context, req *EngineSnapshotHashRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotHash(context.Context, *EngineSnapshotHashRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotHash not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotHashStatus(ctx context.Context, req *EngineSnapshotHashStatusRequest) (*EngineSnapshotHashStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotHashStatus(context.Context, *EngineSnapshotHashStatusRequest) (*EngineSnapshotHashStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotHashStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotBackup(ctx context.Context, req *EngineSnapshotBackupRequest) (*EngineSnapshotBackupProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotBackup(context.Context, *EngineSnapshotBackupRequest) (*EngineSnapshotBackupProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotBackup not implemented") } -func (*UnimplementedProxyEngineServiceServer) SnapshotBackupStatus(ctx context.Context, req *EngineSnapshotBackupStatusRequest) (*EngineSnapshotBackupStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) SnapshotBackupStatus(context.Context, *EngineSnapshotBackupStatusRequest) (*EngineSnapshotBackupStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method SnapshotBackupStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) BackupRestore(ctx context.Context, req *EngineBackupRestoreRequest) (*EngineBackupRestoreProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) BackupRestore(context.Context, *EngineBackupRestoreRequest) (*EngineBackupRestoreProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BackupRestore not implemented") } -func (*UnimplementedProxyEngineServiceServer) BackupRestoreStatus(ctx context.Context, req *ProxyEngineRequest) (*EngineBackupRestoreStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) BackupRestoreStatus(context.Context, *ProxyEngineRequest) (*EngineBackupRestoreStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method BackupRestoreStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) CleanupBackupMountPoints(ctx context.Context, req *empty.Empty) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) CleanupBackupMountPoints(context.Context, *emptypb.Empty) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method CleanupBackupMountPoints not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaAdd(ctx context.Context, req *EngineReplicaAddRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaAdd(context.Context, *EngineReplicaAddRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaAdd not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaList(ctx context.Context, req *ProxyEngineRequest) (*EngineReplicaListProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaList(context.Context, *ProxyEngineRequest) (*EngineReplicaListProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaList not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaRebuildingStatus(ctx context.Context, req *ProxyEngineRequest) (*EngineReplicaRebuildStatusProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaRebuildingStatus(context.Context, *ProxyEngineRequest) (*EngineReplicaRebuildStatusProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingStatus not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaVerifyRebuild(ctx context.Context, req *EngineReplicaVerifyRebuildRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaVerifyRebuild(context.Context, *EngineReplicaVerifyRebuildRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaVerifyRebuild not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaRemove(ctx context.Context, req *EngineReplicaRemoveRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaRemove(context.Context, *EngineReplicaRemoveRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRemove not implemented") } -func (*UnimplementedProxyEngineServiceServer) ReplicaModeUpdate(ctx context.Context, req *EngineReplicaModeUpdateRequest) (*empty.Empty, error) { +func (*UnimplementedProxyEngineServiceServer) ReplicaModeUpdate(context.Context, *EngineReplicaModeUpdateRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaModeUpdate not implemented") } -func (*UnimplementedProxyEngineServiceServer) MetricsGet(ctx context.Context, req *ProxyEngineRequest) (*EngineMetricsGetProxyResponse, error) { +func (*UnimplementedProxyEngineServiceServer) MetricsGet(context.Context, *ProxyEngineRequest) (*EngineMetricsGetProxyResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method MetricsGet not implemented") } @@ -2924,7 +4214,7 @@ func _ProxyEngineService_BackupRestoreStatus_Handler(srv interface{}, ctx contex } func _ProxyEngineService_CleanupBackupMountPoints_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -2936,7 +4226,7 @@ func _ProxyEngineService_CleanupBackupMountPoints_Handler(srv interface{}, ctx c FullMethod: "/imrpc.ProxyEngineService/CleanupBackupMountPoints", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(ProxyEngineServiceServer).CleanupBackupMountPoints(ctx, req.(*empty.Empty)) + return srv.(ProxyEngineServiceServer).CleanupBackupMountPoints(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto index 50c6ea7978..3848dc906f 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/imrpc/proxy.proto @@ -2,6 +2,8 @@ syntax="proto3"; package imrpc; +option go_package = "github.com/longhorn/longhorn-instance-manager/pkg/imrpc"; + import "google/protobuf/empty.proto"; import "github.com/longhorn/longhorn-engine/proto/ptypes/controller.proto"; import "github.com/longhorn/longhorn-engine/proto/ptypes/syncagent.proto"; diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/types/types.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/types/types.go index 64accaecbc..4f0b1fb89c 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/types/types.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/types/types.go @@ -12,6 +12,12 @@ const ( ProcessStateStopped = "stopped" ProcessStateStopping = "stopping" ProcessStateError = "error" + + DiskGrpcService = "disk gRPC server" + SpdkGrpcService = "spdk gRPC server" + ProcessManagerGrpcService = "process-manager gRPC server" + InstanceGrpcService = "instance gRPC server" + ProxyGRPCService = "proxy gRPC server" ) var ( diff --git a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/util/grpcutil.go b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/util/grpcutil.go index 5221146098..0a98d30f60 100644 --- a/vendor/github.com/longhorn/longhorn-instance-manager/pkg/util/grpcutil.go +++ b/vendor/github.com/longhorn/longhorn-instance-manager/pkg/util/grpcutil.go @@ -6,7 +6,6 @@ import ( "crypto/x509" "errors" "fmt" - "io/ioutil" "net" "os" "strings" @@ -14,6 +13,7 @@ import ( "google.golang.org/grpc" "google.golang.org/grpc/credentials" + "google.golang.org/grpc/credentials/insecure" "google.golang.org/grpc/keepalive" ) @@ -33,7 +33,7 @@ func Connect(endpoint string, tlsConfig *tls.Config, dialOptions ...grpc.DialOpt if tlsConfig != nil { dialOptions = append(dialOptions, grpc.WithTransportCredentials(credentials.NewTLS(tlsConfig))) } else { - dialOptions = append(dialOptions, grpc.WithInsecure()) + dialOptions = append(dialOptions, grpc.WithTransportCredentials(insecure.NewCredentials())) } if proto == "unix" { @@ -196,7 +196,7 @@ func loadCertificate(caFile, certFile, keyFile string) (certPool *x509.CertPool, } if caFile != "" { - caCert, err := ioutil.ReadFile(caFile) + caCert, err := os.ReadFile(caFile) if err != nil { return nil, nil, err } diff --git a/vendor/github.com/longhorn/longhorn-spdk-engine/pkg/types/types.go b/vendor/github.com/longhorn/longhorn-spdk-engine/pkg/types/types.go index b84133d614..5caf58e151 100644 --- a/vendor/github.com/longhorn/longhorn-spdk-engine/pkg/types/types.go +++ b/vendor/github.com/longhorn/longhorn-spdk-engine/pkg/types/types.go @@ -17,10 +17,11 @@ const ( type InstanceState string const ( - InstanceStatePending = "pending" - InstanceStateStopped = "stopped" - InstanceStateRunning = "running" - InstanceStateError = "error" + InstanceStatePending = "pending" + InstanceStateStopped = "stopped" + InstanceStateRunning = "running" + InstanceStateTerminating = "terminating" + InstanceStateError = "error" ) type InstanceType string diff --git a/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.pb.go b/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.pb.go index b17a30e41e..79dc9a83ce 100644 --- a/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.pb.go +++ b/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.pb.go @@ -1,29 +1,29 @@ // Code generated by protoc-gen-go. DO NOT EDIT. -// source: spdk.proto +// versions: +// protoc-gen-go v1.26.0 +// protoc v4.24.3 +// source: github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto package spdkrpc import ( context "context" - fmt "fmt" - proto "github.com/golang/protobuf/proto" - empty "github.com/golang/protobuf/ptypes/empty" grpc "google.golang.org/grpc" codes "google.golang.org/grpc/codes" status "google.golang.org/grpc/status" - math "math" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) type ReplicaMode int32 @@ -33,1791 +33,2832 @@ const ( ReplicaMode_ERR ReplicaMode = 2 ) -var ReplicaMode_name = map[int32]string{ - 0: "WO", - 1: "RW", - 2: "ERR", -} +// Enum value maps for ReplicaMode. +var ( + ReplicaMode_name = map[int32]string{ + 0: "WO", + 1: "RW", + 2: "ERR", + } + ReplicaMode_value = map[string]int32{ + "WO": 0, + "RW": 1, + "ERR": 2, + } +) -var ReplicaMode_value = map[string]int32{ - "WO": 0, - "RW": 1, - "ERR": 2, +func (x ReplicaMode) Enum() *ReplicaMode { + p := new(ReplicaMode) + *p = x + return p } func (x ReplicaMode) String() string { - return proto.EnumName(ReplicaMode_name, int32(x)) + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (ReplicaMode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{0} +func (ReplicaMode) Descriptor() protoreflect.EnumDescriptor { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_enumTypes[0].Descriptor() } -type Lvol struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` - SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ActualSize uint64 `protobuf:"varint,4,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` - Parent string `protobuf:"bytes,5,opt,name=parent,proto3" json:"parent,omitempty"` - Children map[string]bool `protobuf:"bytes,6,rep,name=children,proto3" json:"children,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Lvol) Reset() { *m = Lvol{} } -func (m *Lvol) String() string { return proto.CompactTextString(m) } -func (*Lvol) ProtoMessage() {} -func (*Lvol) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{0} +func (ReplicaMode) Type() protoreflect.EnumType { + return &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_enumTypes[0] } -func (m *Lvol) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Lvol.Unmarshal(m, b) +func (x ReplicaMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) } -func (m *Lvol) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Lvol.Marshal(b, m, deterministic) + +// Deprecated: Use ReplicaMode.Descriptor instead. +func (ReplicaMode) EnumDescriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{0} } -func (m *Lvol) XXX_Merge(src proto.Message) { - xxx_messageInfo_Lvol.Merge(m, src) + +type Lvol struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` + SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ActualSize uint64 `protobuf:"varint,4,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` + Parent string `protobuf:"bytes,5,opt,name=parent,proto3" json:"parent,omitempty"` + Children map[string]bool `protobuf:"bytes,6,rep,name=children,proto3" json:"children,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` } -func (m *Lvol) XXX_Size() int { - return xxx_messageInfo_Lvol.Size(m) + +func (x *Lvol) Reset() { + *x = Lvol{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *Lvol) XXX_DiscardUnknown() { - xxx_messageInfo_Lvol.DiscardUnknown(m) + +func (x *Lvol) String() string { + return protoimpl.X.MessageStringOf(x) } -var xxx_messageInfo_Lvol proto.InternalMessageInfo +func (*Lvol) ProtoMessage() {} -func (m *Lvol) GetName() string { - if m != nil { - return m.Name +func (x *Lvol) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Lvol.ProtoReflect.Descriptor instead. +func (*Lvol) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{0} +} + +func (x *Lvol) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Lvol) GetUuid() string { - if m != nil { - return m.Uuid +func (x *Lvol) GetUuid() string { + if x != nil { + return x.Uuid } return "" } -func (m *Lvol) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *Lvol) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *Lvol) GetActualSize() uint64 { - if m != nil { - return m.ActualSize +func (x *Lvol) GetActualSize() uint64 { + if x != nil { + return x.ActualSize } return 0 } -func (m *Lvol) GetParent() string { - if m != nil { - return m.Parent +func (x *Lvol) GetParent() string { + if x != nil { + return x.Parent } return "" } -func (m *Lvol) GetChildren() map[string]bool { - if m != nil { - return m.Children +func (x *Lvol) GetChildren() map[string]bool { + if x != nil { + return x.Children } return nil } type Replica struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` - LvsName string `protobuf:"bytes,3,opt,name=lvs_name,json=lvsName,proto3" json:"lvs_name,omitempty"` - LvsUuid string `protobuf:"bytes,4,opt,name=lvs_uuid,json=lvsUuid,proto3" json:"lvs_uuid,omitempty"` - SpecSize uint64 `protobuf:"varint,5,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ActualSize uint64 `protobuf:"varint,6,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` - Ip string `protobuf:"bytes,7,opt,name=ip,proto3" json:"ip,omitempty"` - PortStart int32 `protobuf:"varint,8,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` - PortEnd int32 `protobuf:"varint,9,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` - Snapshots map[string]*Lvol `protobuf:"bytes,10,rep,name=snapshots,proto3" json:"snapshots,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - Rebuilding bool `protobuf:"varint,11,opt,name=rebuilding,proto3" json:"rebuilding,omitempty"` - State string `protobuf:"bytes,12,opt,name=state,proto3" json:"state,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Replica) Reset() { *m = Replica{} } -func (m *Replica) String() string { return proto.CompactTextString(m) } -func (*Replica) ProtoMessage() {} -func (*Replica) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{1} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *Replica) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Replica.Unmarshal(m, b) -} -func (m *Replica) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Replica.Marshal(b, m, deterministic) -} -func (m *Replica) XXX_Merge(src proto.Message) { - xxx_messageInfo_Replica.Merge(m, src) + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + LvsName string `protobuf:"bytes,2,opt,name=lvs_name,json=lvsName,proto3" json:"lvs_name,omitempty"` + LvsUuid string `protobuf:"bytes,3,opt,name=lvs_uuid,json=lvsUuid,proto3" json:"lvs_uuid,omitempty"` + SpecSize uint64 `protobuf:"varint,4,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ActualSize uint64 `protobuf:"varint,5,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` + Ip string `protobuf:"bytes,6,opt,name=ip,proto3" json:"ip,omitempty"` + PortStart int32 `protobuf:"varint,7,opt,name=port_start,json=portStart,proto3" json:"port_start,omitempty"` + PortEnd int32 `protobuf:"varint,8,opt,name=port_end,json=portEnd,proto3" json:"port_end,omitempty"` + Snapshots map[string]*Lvol `protobuf:"bytes,9,rep,name=snapshots,proto3" json:"snapshots,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Rebuilding bool `protobuf:"varint,10,opt,name=rebuilding,proto3" json:"rebuilding,omitempty"` + State string `protobuf:"bytes,11,opt,name=state,proto3" json:"state,omitempty"` + ErrorMsg string `protobuf:"bytes,12,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } -func (m *Replica) XXX_Size() int { - return xxx_messageInfo_Replica.Size(m) + +func (x *Replica) Reset() { + *x = Replica{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *Replica) XXX_DiscardUnknown() { - xxx_messageInfo_Replica.DiscardUnknown(m) + +func (x *Replica) String() string { + return protoimpl.X.MessageStringOf(x) } -var xxx_messageInfo_Replica proto.InternalMessageInfo +func (*Replica) ProtoMessage() {} -func (m *Replica) GetName() string { - if m != nil { - return m.Name +func (x *Replica) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return "" + return mi.MessageOf(x) } -func (m *Replica) GetUuid() string { - if m != nil { - return m.Uuid +// Deprecated: Use Replica.ProtoReflect.Descriptor instead. +func (*Replica) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{1} +} + +func (x *Replica) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Replica) GetLvsName() string { - if m != nil { - return m.LvsName +func (x *Replica) GetLvsName() string { + if x != nil { + return x.LvsName } return "" } -func (m *Replica) GetLvsUuid() string { - if m != nil { - return m.LvsUuid +func (x *Replica) GetLvsUuid() string { + if x != nil { + return x.LvsUuid } return "" } -func (m *Replica) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *Replica) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *Replica) GetActualSize() uint64 { - if m != nil { - return m.ActualSize +func (x *Replica) GetActualSize() uint64 { + if x != nil { + return x.ActualSize } return 0 } -func (m *Replica) GetIp() string { - if m != nil { - return m.Ip +func (x *Replica) GetIp() string { + if x != nil { + return x.Ip } return "" } -func (m *Replica) GetPortStart() int32 { - if m != nil { - return m.PortStart +func (x *Replica) GetPortStart() int32 { + if x != nil { + return x.PortStart } return 0 } -func (m *Replica) GetPortEnd() int32 { - if m != nil { - return m.PortEnd +func (x *Replica) GetPortEnd() int32 { + if x != nil { + return x.PortEnd } return 0 } -func (m *Replica) GetSnapshots() map[string]*Lvol { - if m != nil { - return m.Snapshots +func (x *Replica) GetSnapshots() map[string]*Lvol { + if x != nil { + return x.Snapshots } return nil } -func (m *Replica) GetRebuilding() bool { - if m != nil { - return m.Rebuilding +func (x *Replica) GetRebuilding() bool { + if x != nil { + return x.Rebuilding } return false } -func (m *Replica) GetState() string { - if m != nil { - return m.State +func (x *Replica) GetState() string { + if x != nil { + return x.State } return "" } -type ReplicaCreateRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - LvsName string `protobuf:"bytes,2,opt,name=lvs_name,json=lvsName,proto3" json:"lvs_name,omitempty"` - LvsUuid string `protobuf:"bytes,3,opt,name=lvs_uuid,json=lvsUuid,proto3" json:"lvs_uuid,omitempty"` - SpecSize uint64 `protobuf:"varint,4,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ExposeRequired bool `protobuf:"varint,5,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` - PortCount int32 `protobuf:"varint,6,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ReplicaCreateRequest) Reset() { *m = ReplicaCreateRequest{} } -func (m *ReplicaCreateRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaCreateRequest) ProtoMessage() {} -func (*ReplicaCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{2} +func (x *Replica) GetErrorMsg() string { + if x != nil { + return x.ErrorMsg + } + return "" } -func (m *ReplicaCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaCreateRequest.Unmarshal(m, b) -} -func (m *ReplicaCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaCreateRequest.Marshal(b, m, deterministic) +type ReplicaCreateRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + LvsName string `protobuf:"bytes,2,opt,name=lvs_name,json=lvsName,proto3" json:"lvs_name,omitempty"` + LvsUuid string `protobuf:"bytes,3,opt,name=lvs_uuid,json=lvsUuid,proto3" json:"lvs_uuid,omitempty"` + SpecSize uint64 `protobuf:"varint,4,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ExposeRequired bool `protobuf:"varint,5,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` + PortCount int32 `protobuf:"varint,6,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` } -func (m *ReplicaCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaCreateRequest.Merge(m, src) + +func (x *ReplicaCreateRequest) Reset() { + *x = ReplicaCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaCreateRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaCreateRequest.Size(m) + +func (x *ReplicaCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaCreateRequest.DiscardUnknown(m) + +func (*ReplicaCreateRequest) ProtoMessage() {} + +func (x *ReplicaCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaCreateRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaCreateRequest.ProtoReflect.Descriptor instead. +func (*ReplicaCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{2} +} -func (m *ReplicaCreateRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaCreateRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaCreateRequest) GetLvsName() string { - if m != nil { - return m.LvsName +func (x *ReplicaCreateRequest) GetLvsName() string { + if x != nil { + return x.LvsName } return "" } -func (m *ReplicaCreateRequest) GetLvsUuid() string { - if m != nil { - return m.LvsUuid +func (x *ReplicaCreateRequest) GetLvsUuid() string { + if x != nil { + return x.LvsUuid } return "" } -func (m *ReplicaCreateRequest) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *ReplicaCreateRequest) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *ReplicaCreateRequest) GetExposeRequired() bool { - if m != nil { - return m.ExposeRequired +func (x *ReplicaCreateRequest) GetExposeRequired() bool { + if x != nil { + return x.ExposeRequired } return false } -func (m *ReplicaCreateRequest) GetPortCount() int32 { - if m != nil { - return m.PortCount +func (x *ReplicaCreateRequest) GetPortCount() int32 { + if x != nil { + return x.PortCount } return 0 } type ReplicaDeleteRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - CleanupRequired bool `protobuf:"varint,2,opt,name=cleanup_required,json=cleanupRequired,proto3" json:"cleanup_required,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaDeleteRequest) Reset() { *m = ReplicaDeleteRequest{} } -func (m *ReplicaDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaDeleteRequest) ProtoMessage() {} -func (*ReplicaDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{3} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + CleanupRequired bool `protobuf:"varint,2,opt,name=cleanup_required,json=cleanupRequired,proto3" json:"cleanup_required,omitempty"` } -func (m *ReplicaDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaDeleteRequest.Unmarshal(m, b) -} -func (m *ReplicaDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaDeleteRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaDeleteRequest.Merge(m, src) +func (x *ReplicaDeleteRequest) Reset() { + *x = ReplicaDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaDeleteRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaDeleteRequest.Size(m) + +func (x *ReplicaDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaDeleteRequest.DiscardUnknown(m) + +func (*ReplicaDeleteRequest) ProtoMessage() {} + +func (x *ReplicaDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaDeleteRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaDeleteRequest.ProtoReflect.Descriptor instead. +func (*ReplicaDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{3} +} -func (m *ReplicaDeleteRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaDeleteRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaDeleteRequest) GetCleanupRequired() bool { - if m != nil { - return m.CleanupRequired +func (x *ReplicaDeleteRequest) GetCleanupRequired() bool { + if x != nil { + return x.CleanupRequired } return false } type ReplicaGetRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaGetRequest) Reset() { *m = ReplicaGetRequest{} } -func (m *ReplicaGetRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaGetRequest) ProtoMessage() {} -func (*ReplicaGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{4} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *ReplicaGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaGetRequest.Unmarshal(m, b) -} -func (m *ReplicaGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaGetRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaGetRequest.Merge(m, src) +func (x *ReplicaGetRequest) Reset() { + *x = ReplicaGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaGetRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaGetRequest.Size(m) + +func (x *ReplicaGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaGetRequest.DiscardUnknown(m) + +func (*ReplicaGetRequest) ProtoMessage() {} + +func (x *ReplicaGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaGetRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaGetRequest.ProtoReflect.Descriptor instead. +func (*ReplicaGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{4} +} -func (m *ReplicaGetRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaGetRequest) GetName() string { + if x != nil { + return x.Name } return "" } type ReplicaListResponse struct { - Replicas map[string]*Replica `protobuf:"bytes,1,rep,name=replicas,proto3" json:"replicas,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaListResponse) Reset() { *m = ReplicaListResponse{} } -func (m *ReplicaListResponse) String() string { return proto.CompactTextString(m) } -func (*ReplicaListResponse) ProtoMessage() {} -func (*ReplicaListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{5} + Replicas map[string]*Replica `protobuf:"bytes,1,rep,name=replicas,proto3" json:"replicas,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *ReplicaListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaListResponse.Unmarshal(m, b) -} -func (m *ReplicaListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaListResponse.Marshal(b, m, deterministic) -} -func (m *ReplicaListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaListResponse.Merge(m, src) +func (x *ReplicaListResponse) Reset() { + *x = ReplicaListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaListResponse) XXX_Size() int { - return xxx_messageInfo_ReplicaListResponse.Size(m) + +func (x *ReplicaListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaListResponse.DiscardUnknown(m) + +func (*ReplicaListResponse) ProtoMessage() {} + +func (x *ReplicaListResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaListResponse proto.InternalMessageInfo +// Deprecated: Use ReplicaListResponse.ProtoReflect.Descriptor instead. +func (*ReplicaListResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{5} +} -func (m *ReplicaListResponse) GetReplicas() map[string]*Replica { - if m != nil { - return m.Replicas +func (x *ReplicaListResponse) GetReplicas() map[string]*Replica { + if x != nil { + return x.Replicas } return nil } type ReplicaRebuildingSrcStartRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - DstReplicaName string `protobuf:"bytes,2,opt,name=dst_replica_name,json=dstReplicaName,proto3" json:"dst_replica_name,omitempty"` - DstRebuildingLvolAddress string `protobuf:"bytes,3,opt,name=dst_rebuilding_lvol_address,json=dstRebuildingLvolAddress,proto3" json:"dst_rebuilding_lvol_address,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaRebuildingSrcStartRequest) Reset() { *m = ReplicaRebuildingSrcStartRequest{} } -func (m *ReplicaRebuildingSrcStartRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaRebuildingSrcStartRequest) ProtoMessage() {} -func (*ReplicaRebuildingSrcStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{6} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + DstReplicaName string `protobuf:"bytes,2,opt,name=dst_replica_name,json=dstReplicaName,proto3" json:"dst_replica_name,omitempty"` + DstRebuildingLvolAddress string `protobuf:"bytes,3,opt,name=dst_rebuilding_lvol_address,json=dstRebuildingLvolAddress,proto3" json:"dst_rebuilding_lvol_address,omitempty"` } -func (m *ReplicaRebuildingSrcStartRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaRebuildingSrcStartRequest.Unmarshal(m, b) -} -func (m *ReplicaRebuildingSrcStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaRebuildingSrcStartRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaRebuildingSrcStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaRebuildingSrcStartRequest.Merge(m, src) +func (x *ReplicaRebuildingSrcStartRequest) Reset() { + *x = ReplicaRebuildingSrcStartRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaRebuildingSrcStartRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaRebuildingSrcStartRequest.Size(m) + +func (x *ReplicaRebuildingSrcStartRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaRebuildingSrcStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaRebuildingSrcStartRequest.DiscardUnknown(m) + +func (*ReplicaRebuildingSrcStartRequest) ProtoMessage() {} + +func (x *ReplicaRebuildingSrcStartRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaRebuildingSrcStartRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaRebuildingSrcStartRequest.ProtoReflect.Descriptor instead. +func (*ReplicaRebuildingSrcStartRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{6} +} -func (m *ReplicaRebuildingSrcStartRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaRebuildingSrcStartRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaRebuildingSrcStartRequest) GetDstReplicaName() string { - if m != nil { - return m.DstReplicaName +func (x *ReplicaRebuildingSrcStartRequest) GetDstReplicaName() string { + if x != nil { + return x.DstReplicaName } return "" } -func (m *ReplicaRebuildingSrcStartRequest) GetDstRebuildingLvolAddress() string { - if m != nil { - return m.DstRebuildingLvolAddress +func (x *ReplicaRebuildingSrcStartRequest) GetDstRebuildingLvolAddress() string { + if x != nil { + return x.DstRebuildingLvolAddress } return "" } type ReplicaRebuildingSrcFinishRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - DstReplicaName string `protobuf:"bytes,2,opt,name=dst_replica_name,json=dstReplicaName,proto3" json:"dst_replica_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaRebuildingSrcFinishRequest) Reset() { *m = ReplicaRebuildingSrcFinishRequest{} } -func (m *ReplicaRebuildingSrcFinishRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaRebuildingSrcFinishRequest) ProtoMessage() {} -func (*ReplicaRebuildingSrcFinishRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{7} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + DstReplicaName string `protobuf:"bytes,2,opt,name=dst_replica_name,json=dstReplicaName,proto3" json:"dst_replica_name,omitempty"` } -func (m *ReplicaRebuildingSrcFinishRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaRebuildingSrcFinishRequest.Unmarshal(m, b) -} -func (m *ReplicaRebuildingSrcFinishRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaRebuildingSrcFinishRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaRebuildingSrcFinishRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaRebuildingSrcFinishRequest.Merge(m, src) +func (x *ReplicaRebuildingSrcFinishRequest) Reset() { + *x = ReplicaRebuildingSrcFinishRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaRebuildingSrcFinishRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaRebuildingSrcFinishRequest.Size(m) + +func (x *ReplicaRebuildingSrcFinishRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaRebuildingSrcFinishRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaRebuildingSrcFinishRequest.DiscardUnknown(m) + +func (*ReplicaRebuildingSrcFinishRequest) ProtoMessage() {} + +func (x *ReplicaRebuildingSrcFinishRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaRebuildingSrcFinishRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaRebuildingSrcFinishRequest.ProtoReflect.Descriptor instead. +func (*ReplicaRebuildingSrcFinishRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{7} +} -func (m *ReplicaRebuildingSrcFinishRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaRebuildingSrcFinishRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaRebuildingSrcFinishRequest) GetDstReplicaName() string { - if m != nil { - return m.DstReplicaName +func (x *ReplicaRebuildingSrcFinishRequest) GetDstReplicaName() string { + if x != nil { + return x.DstReplicaName } return "" } type ReplicaSnapshotShallowCopyRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaSnapshotShallowCopyRequest) Reset() { *m = ReplicaSnapshotShallowCopyRequest{} } -func (m *ReplicaSnapshotShallowCopyRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaSnapshotShallowCopyRequest) ProtoMessage() {} -func (*ReplicaSnapshotShallowCopyRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{8} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` } -func (m *ReplicaSnapshotShallowCopyRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaSnapshotShallowCopyRequest.Unmarshal(m, b) -} -func (m *ReplicaSnapshotShallowCopyRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaSnapshotShallowCopyRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaSnapshotShallowCopyRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaSnapshotShallowCopyRequest.Merge(m, src) +func (x *ReplicaSnapshotShallowCopyRequest) Reset() { + *x = ReplicaSnapshotShallowCopyRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaSnapshotShallowCopyRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaSnapshotShallowCopyRequest.Size(m) + +func (x *ReplicaSnapshotShallowCopyRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaSnapshotShallowCopyRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaSnapshotShallowCopyRequest.DiscardUnknown(m) + +func (*ReplicaSnapshotShallowCopyRequest) ProtoMessage() {} + +func (x *ReplicaSnapshotShallowCopyRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaSnapshotShallowCopyRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaSnapshotShallowCopyRequest.ProtoReflect.Descriptor instead. +func (*ReplicaSnapshotShallowCopyRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{8} +} -func (m *ReplicaSnapshotShallowCopyRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaSnapshotShallowCopyRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaSnapshotShallowCopyRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +func (x *ReplicaSnapshotShallowCopyRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } type ReplicaRebuildingDstStartRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - ExposeRequired bool `protobuf:"varint,2,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaRebuildingDstStartRequest) Reset() { *m = ReplicaRebuildingDstStartRequest{} } -func (m *ReplicaRebuildingDstStartRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaRebuildingDstStartRequest) ProtoMessage() {} -func (*ReplicaRebuildingDstStartRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{9} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + ExposeRequired bool `protobuf:"varint,2,opt,name=expose_required,json=exposeRequired,proto3" json:"expose_required,omitempty"` } -func (m *ReplicaRebuildingDstStartRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaRebuildingDstStartRequest.Unmarshal(m, b) -} -func (m *ReplicaRebuildingDstStartRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaRebuildingDstStartRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaRebuildingDstStartRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaRebuildingDstStartRequest.Merge(m, src) +func (x *ReplicaRebuildingDstStartRequest) Reset() { + *x = ReplicaRebuildingDstStartRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaRebuildingDstStartRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaRebuildingDstStartRequest.Size(m) + +func (x *ReplicaRebuildingDstStartRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaRebuildingDstStartRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaRebuildingDstStartRequest.DiscardUnknown(m) + +func (*ReplicaRebuildingDstStartRequest) ProtoMessage() {} + +func (x *ReplicaRebuildingDstStartRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaRebuildingDstStartRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaRebuildingDstStartRequest.ProtoReflect.Descriptor instead. +func (*ReplicaRebuildingDstStartRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{9} +} -func (m *ReplicaRebuildingDstStartRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaRebuildingDstStartRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaRebuildingDstStartRequest) GetExposeRequired() bool { - if m != nil { - return m.ExposeRequired +func (x *ReplicaRebuildingDstStartRequest) GetExposeRequired() bool { + if x != nil { + return x.ExposeRequired } return false } type ReplicaRebuildingDstStartResponse struct { - Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaRebuildingDstStartResponse) Reset() { *m = ReplicaRebuildingDstStartResponse{} } -func (m *ReplicaRebuildingDstStartResponse) String() string { return proto.CompactTextString(m) } -func (*ReplicaRebuildingDstStartResponse) ProtoMessage() {} -func (*ReplicaRebuildingDstStartResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{10} + Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"` } -func (m *ReplicaRebuildingDstStartResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaRebuildingDstStartResponse.Unmarshal(m, b) -} -func (m *ReplicaRebuildingDstStartResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaRebuildingDstStartResponse.Marshal(b, m, deterministic) -} -func (m *ReplicaRebuildingDstStartResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaRebuildingDstStartResponse.Merge(m, src) +func (x *ReplicaRebuildingDstStartResponse) Reset() { + *x = ReplicaRebuildingDstStartResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaRebuildingDstStartResponse) XXX_Size() int { - return xxx_messageInfo_ReplicaRebuildingDstStartResponse.Size(m) + +func (x *ReplicaRebuildingDstStartResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaRebuildingDstStartResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaRebuildingDstStartResponse.DiscardUnknown(m) + +func (*ReplicaRebuildingDstStartResponse) ProtoMessage() {} + +func (x *ReplicaRebuildingDstStartResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaRebuildingDstStartResponse proto.InternalMessageInfo +// Deprecated: Use ReplicaRebuildingDstStartResponse.ProtoReflect.Descriptor instead. +func (*ReplicaRebuildingDstStartResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{10} +} -func (m *ReplicaRebuildingDstStartResponse) GetAddress() string { - if m != nil { - return m.Address +func (x *ReplicaRebuildingDstStartResponse) GetAddress() string { + if x != nil { + return x.Address } return "" } type ReplicaRebuildingDstFinishRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - UnexposeRequired bool `protobuf:"varint,2,opt,name=unexpose_required,json=unexposeRequired,proto3" json:"unexpose_required,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *ReplicaRebuildingDstFinishRequest) Reset() { *m = ReplicaRebuildingDstFinishRequest{} } -func (m *ReplicaRebuildingDstFinishRequest) String() string { return proto.CompactTextString(m) } -func (*ReplicaRebuildingDstFinishRequest) ProtoMessage() {} -func (*ReplicaRebuildingDstFinishRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{11} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + UnexposeRequired bool `protobuf:"varint,2,opt,name=unexpose_required,json=unexposeRequired,proto3" json:"unexpose_required,omitempty"` } -func (m *ReplicaRebuildingDstFinishRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ReplicaRebuildingDstFinishRequest.Unmarshal(m, b) -} -func (m *ReplicaRebuildingDstFinishRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ReplicaRebuildingDstFinishRequest.Marshal(b, m, deterministic) -} -func (m *ReplicaRebuildingDstFinishRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReplicaRebuildingDstFinishRequest.Merge(m, src) +func (x *ReplicaRebuildingDstFinishRequest) Reset() { + *x = ReplicaRebuildingDstFinishRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *ReplicaRebuildingDstFinishRequest) XXX_Size() int { - return xxx_messageInfo_ReplicaRebuildingDstFinishRequest.Size(m) + +func (x *ReplicaRebuildingDstFinishRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReplicaRebuildingDstFinishRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReplicaRebuildingDstFinishRequest.DiscardUnknown(m) + +func (*ReplicaRebuildingDstFinishRequest) ProtoMessage() {} + +func (x *ReplicaRebuildingDstFinishRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_ReplicaRebuildingDstFinishRequest proto.InternalMessageInfo +// Deprecated: Use ReplicaRebuildingDstFinishRequest.ProtoReflect.Descriptor instead. +func (*ReplicaRebuildingDstFinishRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{11} +} -func (m *ReplicaRebuildingDstFinishRequest) GetName() string { - if m != nil { - return m.Name +func (x *ReplicaRebuildingDstFinishRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *ReplicaRebuildingDstFinishRequest) GetUnexposeRequired() bool { - if m != nil { - return m.UnexposeRequired +func (x *ReplicaRebuildingDstFinishRequest) GetUnexposeRequired() bool { + if x != nil { + return x.UnexposeRequired } return false } type Engine struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - VolumeName string `protobuf:"bytes,2,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` - SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ActualSize uint64 `protobuf:"varint,4,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` - Ip string `protobuf:"bytes,5,opt,name=ip,proto3" json:"ip,omitempty"` - Port int32 `protobuf:"varint,6,opt,name=port,proto3" json:"port,omitempty"` - ReplicaAddressMap map[string]string `protobuf:"bytes,7,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - ReplicaModeMap map[string]ReplicaMode `protobuf:"bytes,8,rep,name=replica_mode_map,json=replicaModeMap,proto3" json:"replica_mode_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3,enum=spdkrpc.ReplicaMode"` - Frontend string `protobuf:"bytes,9,opt,name=frontend,proto3" json:"frontend,omitempty"` - Endpoint string `protobuf:"bytes,10,opt,name=endpoint,proto3" json:"endpoint,omitempty"` - State string `protobuf:"bytes,11,opt,name=state,proto3" json:"state,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Engine) Reset() { *m = Engine{} } -func (m *Engine) String() string { return proto.CompactTextString(m) } -func (*Engine) ProtoMessage() {} -func (*Engine) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{12} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *Engine) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Engine.Unmarshal(m, b) -} -func (m *Engine) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Engine.Marshal(b, m, deterministic) + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + VolumeName string `protobuf:"bytes,2,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` + SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ActualSize uint64 `protobuf:"varint,4,opt,name=actual_size,json=actualSize,proto3" json:"actual_size,omitempty"` + Ip string `protobuf:"bytes,5,opt,name=ip,proto3" json:"ip,omitempty"` + Port int32 `protobuf:"varint,6,opt,name=port,proto3" json:"port,omitempty"` + ReplicaAddressMap map[string]string `protobuf:"bytes,7,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + ReplicaModeMap map[string]ReplicaMode `protobuf:"bytes,8,rep,name=replica_mode_map,json=replicaModeMap,proto3" json:"replica_mode_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3,enum=spdkrpc.ReplicaMode"` + Frontend string `protobuf:"bytes,9,opt,name=frontend,proto3" json:"frontend,omitempty"` + Endpoint string `protobuf:"bytes,10,opt,name=endpoint,proto3" json:"endpoint,omitempty"` + State string `protobuf:"bytes,11,opt,name=state,proto3" json:"state,omitempty"` + ErrorMsg string `protobuf:"bytes,12,opt,name=error_msg,json=errorMsg,proto3" json:"error_msg,omitempty"` } -func (m *Engine) XXX_Merge(src proto.Message) { - xxx_messageInfo_Engine.Merge(m, src) + +func (x *Engine) Reset() { + *x = Engine{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *Engine) XXX_Size() int { - return xxx_messageInfo_Engine.Size(m) + +func (x *Engine) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Engine) XXX_DiscardUnknown() { - xxx_messageInfo_Engine.DiscardUnknown(m) + +func (*Engine) ProtoMessage() {} + +func (x *Engine) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Engine proto.InternalMessageInfo +// Deprecated: Use Engine.ProtoReflect.Descriptor instead. +func (*Engine) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{12} +} -func (m *Engine) GetName() string { - if m != nil { - return m.Name +func (x *Engine) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *Engine) GetVolumeName() string { - if m != nil { - return m.VolumeName +func (x *Engine) GetVolumeName() string { + if x != nil { + return x.VolumeName } return "" } -func (m *Engine) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *Engine) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *Engine) GetActualSize() uint64 { - if m != nil { - return m.ActualSize +func (x *Engine) GetActualSize() uint64 { + if x != nil { + return x.ActualSize } return 0 } -func (m *Engine) GetIp() string { - if m != nil { - return m.Ip +func (x *Engine) GetIp() string { + if x != nil { + return x.Ip } return "" } -func (m *Engine) GetPort() int32 { - if m != nil { - return m.Port +func (x *Engine) GetPort() int32 { + if x != nil { + return x.Port } return 0 } -func (m *Engine) GetReplicaAddressMap() map[string]string { - if m != nil { - return m.ReplicaAddressMap +func (x *Engine) GetReplicaAddressMap() map[string]string { + if x != nil { + return x.ReplicaAddressMap } return nil } -func (m *Engine) GetReplicaModeMap() map[string]ReplicaMode { - if m != nil { - return m.ReplicaModeMap +func (x *Engine) GetReplicaModeMap() map[string]ReplicaMode { + if x != nil { + return x.ReplicaModeMap } return nil } -func (m *Engine) GetFrontend() string { - if m != nil { - return m.Frontend +func (x *Engine) GetFrontend() string { + if x != nil { + return x.Frontend } return "" } -func (m *Engine) GetEndpoint() string { - if m != nil { - return m.Endpoint +func (x *Engine) GetEndpoint() string { + if x != nil { + return x.Endpoint } return "" } -func (m *Engine) GetState() string { - if m != nil { - return m.State +func (x *Engine) GetState() string { + if x != nil { + return x.State } return "" } -type EngineCreateRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - VolumeName string `protobuf:"bytes,2,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` - SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` - ReplicaAddressMap map[string]string `protobuf:"bytes,4,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - Frontend string `protobuf:"bytes,5,opt,name=frontend,proto3" json:"frontend,omitempty"` - PortCount int32 `protobuf:"varint,6,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *EngineCreateRequest) Reset() { *m = EngineCreateRequest{} } -func (m *EngineCreateRequest) String() string { return proto.CompactTextString(m) } -func (*EngineCreateRequest) ProtoMessage() {} -func (*EngineCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{13} +func (x *Engine) GetErrorMsg() string { + if x != nil { + return x.ErrorMsg + } + return "" } -func (m *EngineCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineCreateRequest.Unmarshal(m, b) -} -func (m *EngineCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineCreateRequest.Marshal(b, m, deterministic) +type EngineCreateRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + VolumeName string `protobuf:"bytes,2,opt,name=volume_name,json=volumeName,proto3" json:"volume_name,omitempty"` + SpecSize uint64 `protobuf:"varint,3,opt,name=spec_size,json=specSize,proto3" json:"spec_size,omitempty"` + ReplicaAddressMap map[string]string `protobuf:"bytes,4,rep,name=replica_address_map,json=replicaAddressMap,proto3" json:"replica_address_map,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + Frontend string `protobuf:"bytes,5,opt,name=frontend,proto3" json:"frontend,omitempty"` + PortCount int32 `protobuf:"varint,6,opt,name=port_count,json=portCount,proto3" json:"port_count,omitempty"` } -func (m *EngineCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineCreateRequest.Merge(m, src) + +func (x *EngineCreateRequest) Reset() { + *x = EngineCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineCreateRequest) XXX_Size() int { - return xxx_messageInfo_EngineCreateRequest.Size(m) + +func (x *EngineCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineCreateRequest.DiscardUnknown(m) + +func (*EngineCreateRequest) ProtoMessage() {} + +func (x *EngineCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[13] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineCreateRequest proto.InternalMessageInfo +// Deprecated: Use EngineCreateRequest.ProtoReflect.Descriptor instead. +func (*EngineCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{13} +} -func (m *EngineCreateRequest) GetName() string { - if m != nil { - return m.Name +func (x *EngineCreateRequest) GetName() string { + if x != nil { + return x.Name } return "" } -func (m *EngineCreateRequest) GetVolumeName() string { - if m != nil { - return m.VolumeName +func (x *EngineCreateRequest) GetVolumeName() string { + if x != nil { + return x.VolumeName } return "" } -func (m *EngineCreateRequest) GetSpecSize() uint64 { - if m != nil { - return m.SpecSize +func (x *EngineCreateRequest) GetSpecSize() uint64 { + if x != nil { + return x.SpecSize } return 0 } -func (m *EngineCreateRequest) GetReplicaAddressMap() map[string]string { - if m != nil { - return m.ReplicaAddressMap +func (x *EngineCreateRequest) GetReplicaAddressMap() map[string]string { + if x != nil { + return x.ReplicaAddressMap } return nil } -func (m *EngineCreateRequest) GetFrontend() string { - if m != nil { - return m.Frontend +func (x *EngineCreateRequest) GetFrontend() string { + if x != nil { + return x.Frontend } return "" } -func (m *EngineCreateRequest) GetPortCount() int32 { - if m != nil { - return m.PortCount +func (x *EngineCreateRequest) GetPortCount() int32 { + if x != nil { + return x.PortCount } return 0 } type EngineDeleteRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineDeleteRequest) Reset() { *m = EngineDeleteRequest{} } -func (m *EngineDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*EngineDeleteRequest) ProtoMessage() {} -func (*EngineDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{14} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *EngineDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineDeleteRequest.Unmarshal(m, b) -} -func (m *EngineDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineDeleteRequest.Marshal(b, m, deterministic) -} -func (m *EngineDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineDeleteRequest.Merge(m, src) +func (x *EngineDeleteRequest) Reset() { + *x = EngineDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineDeleteRequest) XXX_Size() int { - return xxx_messageInfo_EngineDeleteRequest.Size(m) + +func (x *EngineDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineDeleteRequest.DiscardUnknown(m) + +func (*EngineDeleteRequest) ProtoMessage() {} + +func (x *EngineDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[14] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineDeleteRequest proto.InternalMessageInfo +// Deprecated: Use EngineDeleteRequest.ProtoReflect.Descriptor instead. +func (*EngineDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{14} +} -func (m *EngineDeleteRequest) GetName() string { - if m != nil { - return m.Name +func (x *EngineDeleteRequest) GetName() string { + if x != nil { + return x.Name } return "" } type EngineGetRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineGetRequest) Reset() { *m = EngineGetRequest{} } -func (m *EngineGetRequest) String() string { return proto.CompactTextString(m) } -func (*EngineGetRequest) ProtoMessage() {} -func (*EngineGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{15} + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` } -func (m *EngineGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineGetRequest.Unmarshal(m, b) -} -func (m *EngineGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineGetRequest.Marshal(b, m, deterministic) -} -func (m *EngineGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineGetRequest.Merge(m, src) +func (x *EngineGetRequest) Reset() { + *x = EngineGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineGetRequest) XXX_Size() int { - return xxx_messageInfo_EngineGetRequest.Size(m) + +func (x *EngineGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineGetRequest.DiscardUnknown(m) + +func (*EngineGetRequest) ProtoMessage() {} + +func (x *EngineGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[15] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineGetRequest proto.InternalMessageInfo +// Deprecated: Use EngineGetRequest.ProtoReflect.Descriptor instead. +func (*EngineGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{15} +} -func (m *EngineGetRequest) GetName() string { - if m != nil { - return m.Name +func (x *EngineGetRequest) GetName() string { + if x != nil { + return x.Name } return "" } type EngineListResponse struct { - Engines map[string]*Engine `protobuf:"bytes,1,rep,name=engines,proto3" json:"engines,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineListResponse) Reset() { *m = EngineListResponse{} } -func (m *EngineListResponse) String() string { return proto.CompactTextString(m) } -func (*EngineListResponse) ProtoMessage() {} -func (*EngineListResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{16} + Engines map[string]*Engine `protobuf:"bytes,1,rep,name=engines,proto3" json:"engines,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } -func (m *EngineListResponse) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineListResponse.Unmarshal(m, b) -} -func (m *EngineListResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineListResponse.Marshal(b, m, deterministic) -} -func (m *EngineListResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineListResponse.Merge(m, src) +func (x *EngineListResponse) Reset() { + *x = EngineListResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineListResponse) XXX_Size() int { - return xxx_messageInfo_EngineListResponse.Size(m) + +func (x *EngineListResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineListResponse) XXX_DiscardUnknown() { - xxx_messageInfo_EngineListResponse.DiscardUnknown(m) + +func (*EngineListResponse) ProtoMessage() {} + +func (x *EngineListResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[16] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineListResponse proto.InternalMessageInfo +// Deprecated: Use EngineListResponse.ProtoReflect.Descriptor instead. +func (*EngineListResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{16} +} -func (m *EngineListResponse) GetEngines() map[string]*Engine { - if m != nil { - return m.Engines +func (x *EngineListResponse) GetEngines() map[string]*Engine { + if x != nil { + return x.Engines } return nil } type EngineReplicaAddRequest struct { - EngineName string `protobuf:"bytes,1,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` - ReplicaName string `protobuf:"bytes,2,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaAddRequest) Reset() { *m = EngineReplicaAddRequest{} } -func (m *EngineReplicaAddRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaAddRequest) ProtoMessage() {} -func (*EngineReplicaAddRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{17} + EngineName string `protobuf:"bytes,1,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` + ReplicaName string `protobuf:"bytes,2,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` + ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` } -func (m *EngineReplicaAddRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaAddRequest.Unmarshal(m, b) -} -func (m *EngineReplicaAddRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaAddRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaAddRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaAddRequest.Merge(m, src) +func (x *EngineReplicaAddRequest) Reset() { + *x = EngineReplicaAddRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaAddRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaAddRequest.Size(m) + +func (x *EngineReplicaAddRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaAddRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaAddRequest.DiscardUnknown(m) + +func (*EngineReplicaAddRequest) ProtoMessage() {} + +func (x *EngineReplicaAddRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaAddRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaAddRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaAddRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{17} +} -func (m *EngineReplicaAddRequest) GetEngineName() string { - if m != nil { - return m.EngineName +func (x *EngineReplicaAddRequest) GetEngineName() string { + if x != nil { + return x.EngineName } return "" } -func (m *EngineReplicaAddRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineReplicaAddRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } -func (m *EngineReplicaAddRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaAddRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } type EngineReplicaDeleteRequest struct { - EngineName string `protobuf:"bytes,1,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` - ReplicaName string `protobuf:"bytes,2,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` - ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *EngineReplicaDeleteRequest) Reset() { *m = EngineReplicaDeleteRequest{} } -func (m *EngineReplicaDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*EngineReplicaDeleteRequest) ProtoMessage() {} -func (*EngineReplicaDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{18} + EngineName string `protobuf:"bytes,1,opt,name=engine_name,json=engineName,proto3" json:"engine_name,omitempty"` + ReplicaName string `protobuf:"bytes,2,opt,name=replica_name,json=replicaName,proto3" json:"replica_name,omitempty"` + ReplicaAddress string `protobuf:"bytes,3,opt,name=replica_address,json=replicaAddress,proto3" json:"replica_address,omitempty"` } -func (m *EngineReplicaDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_EngineReplicaDeleteRequest.Unmarshal(m, b) -} -func (m *EngineReplicaDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_EngineReplicaDeleteRequest.Marshal(b, m, deterministic) -} -func (m *EngineReplicaDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_EngineReplicaDeleteRequest.Merge(m, src) +func (x *EngineReplicaDeleteRequest) Reset() { + *x = EngineReplicaDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *EngineReplicaDeleteRequest) XXX_Size() int { - return xxx_messageInfo_EngineReplicaDeleteRequest.Size(m) + +func (x *EngineReplicaDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *EngineReplicaDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_EngineReplicaDeleteRequest.DiscardUnknown(m) + +func (*EngineReplicaDeleteRequest) ProtoMessage() {} + +func (x *EngineReplicaDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_EngineReplicaDeleteRequest proto.InternalMessageInfo +// Deprecated: Use EngineReplicaDeleteRequest.ProtoReflect.Descriptor instead. +func (*EngineReplicaDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{18} +} -func (m *EngineReplicaDeleteRequest) GetEngineName() string { - if m != nil { - return m.EngineName +func (x *EngineReplicaDeleteRequest) GetEngineName() string { + if x != nil { + return x.EngineName } return "" } -func (m *EngineReplicaDeleteRequest) GetReplicaName() string { - if m != nil { - return m.ReplicaName +func (x *EngineReplicaDeleteRequest) GetReplicaName() string { + if x != nil { + return x.ReplicaName } return "" } -func (m *EngineReplicaDeleteRequest) GetReplicaAddress() string { - if m != nil { - return m.ReplicaAddress +func (x *EngineReplicaDeleteRequest) GetReplicaAddress() string { + if x != nil { + return x.ReplicaAddress } return "" } type SnapshotRequest struct { - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + SnapshotName string `protobuf:"bytes,2,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` } -func (m *SnapshotRequest) Reset() { *m = SnapshotRequest{} } -func (m *SnapshotRequest) String() string { return proto.CompactTextString(m) } -func (*SnapshotRequest) ProtoMessage() {} +func (x *SnapshotRequest) Reset() { + *x = SnapshotRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SnapshotRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SnapshotRequest) ProtoMessage() {} + +func (x *SnapshotRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SnapshotRequest.ProtoReflect.Descriptor instead. func (*SnapshotRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{19} + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{19} } -func (m *SnapshotRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_SnapshotRequest.Unmarshal(m, b) +func (x *SnapshotRequest) GetName() string { + if x != nil { + return x.Name + } + return "" } -func (m *SnapshotRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_SnapshotRequest.Marshal(b, m, deterministic) + +func (x *SnapshotRequest) GetSnapshotName() string { + if x != nil { + return x.SnapshotName + } + return "" } -func (m *SnapshotRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_SnapshotRequest.Merge(m, src) + +type SnapshotResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SnapshotName string `protobuf:"bytes,1,opt,name=snapshot_name,json=snapshotName,proto3" json:"snapshot_name,omitempty"` } -func (m *SnapshotRequest) XXX_Size() int { - return xxx_messageInfo_SnapshotRequest.Size(m) + +func (x *SnapshotResponse) Reset() { + *x = SnapshotResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *SnapshotRequest) XXX_DiscardUnknown() { - xxx_messageInfo_SnapshotRequest.DiscardUnknown(m) + +func (x *SnapshotResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -var xxx_messageInfo_SnapshotRequest proto.InternalMessageInfo +func (*SnapshotResponse) ProtoMessage() {} -func (m *SnapshotRequest) GetName() string { - if m != nil { - return m.Name +func (x *SnapshotResponse) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return "" + return mi.MessageOf(x) } -func (m *SnapshotRequest) GetSnapshotName() string { - if m != nil { - return m.SnapshotName +// Deprecated: Use SnapshotResponse.ProtoReflect.Descriptor instead. +func (*SnapshotResponse) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{20} +} + +func (x *SnapshotResponse) GetSnapshotName() string { + if x != nil { + return x.SnapshotName } return "" } type VersionOutput struct { - Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` - GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` - BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` - CliAPIVersion int64 `protobuf:"varint,4,opt,name=cliAPIVersion,proto3" json:"cliAPIVersion,omitempty"` - CliAPIMinVersion int64 `protobuf:"varint,5,opt,name=cliAPIMinVersion,proto3" json:"cliAPIMinVersion,omitempty"` - ControllerAPIVersion int64 `protobuf:"varint,6,opt,name=controllerAPIVersion,proto3" json:"controllerAPIVersion,omitempty"` - ControllerAPIMinVersion int64 `protobuf:"varint,7,opt,name=controllerAPIMinVersion,proto3" json:"controllerAPIMinVersion,omitempty"` - DataFormatVersion int64 `protobuf:"varint,8,opt,name=dataFormatVersion,proto3" json:"dataFormatVersion,omitempty"` - DataFormatMinVersion int64 `protobuf:"varint,9,opt,name=dataFormatMinVersion,proto3" json:"dataFormatMinVersion,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *VersionOutput) Reset() { *m = VersionOutput{} } -func (m *VersionOutput) String() string { return proto.CompactTextString(m) } -func (*VersionOutput) ProtoMessage() {} -func (*VersionOutput) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{20} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *VersionOutput) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VersionOutput.Unmarshal(m, b) -} -func (m *VersionOutput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VersionOutput.Marshal(b, m, deterministic) + Version string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` + GitCommit string `protobuf:"bytes,2,opt,name=gitCommit,proto3" json:"gitCommit,omitempty"` + BuildDate string `protobuf:"bytes,3,opt,name=buildDate,proto3" json:"buildDate,omitempty"` + CliAPIVersion int64 `protobuf:"varint,4,opt,name=cliAPIVersion,proto3" json:"cliAPIVersion,omitempty"` + CliAPIMinVersion int64 `protobuf:"varint,5,opt,name=cliAPIMinVersion,proto3" json:"cliAPIMinVersion,omitempty"` + ControllerAPIVersion int64 `protobuf:"varint,6,opt,name=controllerAPIVersion,proto3" json:"controllerAPIVersion,omitempty"` + ControllerAPIMinVersion int64 `protobuf:"varint,7,opt,name=controllerAPIMinVersion,proto3" json:"controllerAPIMinVersion,omitempty"` + DataFormatVersion int64 `protobuf:"varint,8,opt,name=dataFormatVersion,proto3" json:"dataFormatVersion,omitempty"` + DataFormatMinVersion int64 `protobuf:"varint,9,opt,name=dataFormatMinVersion,proto3" json:"dataFormatMinVersion,omitempty"` } -func (m *VersionOutput) XXX_Merge(src proto.Message) { - xxx_messageInfo_VersionOutput.Merge(m, src) + +func (x *VersionOutput) Reset() { + *x = VersionOutput{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *VersionOutput) XXX_Size() int { - return xxx_messageInfo_VersionOutput.Size(m) + +func (x *VersionOutput) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *VersionOutput) XXX_DiscardUnknown() { - xxx_messageInfo_VersionOutput.DiscardUnknown(m) + +func (*VersionOutput) ProtoMessage() {} + +func (x *VersionOutput) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_VersionOutput proto.InternalMessageInfo +// Deprecated: Use VersionOutput.ProtoReflect.Descriptor instead. +func (*VersionOutput) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{21} +} -func (m *VersionOutput) GetVersion() string { - if m != nil { - return m.Version +func (x *VersionOutput) GetVersion() string { + if x != nil { + return x.Version } return "" } -func (m *VersionOutput) GetGitCommit() string { - if m != nil { - return m.GitCommit +func (x *VersionOutput) GetGitCommit() string { + if x != nil { + return x.GitCommit } return "" } -func (m *VersionOutput) GetBuildDate() string { - if m != nil { - return m.BuildDate +func (x *VersionOutput) GetBuildDate() string { + if x != nil { + return x.BuildDate } return "" } -func (m *VersionOutput) GetCliAPIVersion() int64 { - if m != nil { - return m.CliAPIVersion +func (x *VersionOutput) GetCliAPIVersion() int64 { + if x != nil { + return x.CliAPIVersion } return 0 } -func (m *VersionOutput) GetCliAPIMinVersion() int64 { - if m != nil { - return m.CliAPIMinVersion +func (x *VersionOutput) GetCliAPIMinVersion() int64 { + if x != nil { + return x.CliAPIMinVersion } return 0 } -func (m *VersionOutput) GetControllerAPIVersion() int64 { - if m != nil { - return m.ControllerAPIVersion +func (x *VersionOutput) GetControllerAPIVersion() int64 { + if x != nil { + return x.ControllerAPIVersion } return 0 } -func (m *VersionOutput) GetControllerAPIMinVersion() int64 { - if m != nil { - return m.ControllerAPIMinVersion +func (x *VersionOutput) GetControllerAPIMinVersion() int64 { + if x != nil { + return x.ControllerAPIMinVersion } return 0 } -func (m *VersionOutput) GetDataFormatVersion() int64 { - if m != nil { - return m.DataFormatVersion +func (x *VersionOutput) GetDataFormatVersion() int64 { + if x != nil { + return x.DataFormatVersion } return 0 } -func (m *VersionOutput) GetDataFormatMinVersion() int64 { - if m != nil { - return m.DataFormatMinVersion +func (x *VersionOutput) GetDataFormatMinVersion() int64 { + if x != nil { + return x.DataFormatMinVersion } return 0 } type VersionDetailGetReply struct { - Version *VersionOutput `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *VersionDetailGetReply) Reset() { *m = VersionDetailGetReply{} } -func (m *VersionDetailGetReply) String() string { return proto.CompactTextString(m) } -func (*VersionDetailGetReply) ProtoMessage() {} -func (*VersionDetailGetReply) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{21} + Version *VersionOutput `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"` } -func (m *VersionDetailGetReply) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_VersionDetailGetReply.Unmarshal(m, b) -} -func (m *VersionDetailGetReply) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_VersionDetailGetReply.Marshal(b, m, deterministic) -} -func (m *VersionDetailGetReply) XXX_Merge(src proto.Message) { - xxx_messageInfo_VersionDetailGetReply.Merge(m, src) +func (x *VersionDetailGetReply) Reset() { + *x = VersionDetailGetReply{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *VersionDetailGetReply) XXX_Size() int { - return xxx_messageInfo_VersionDetailGetReply.Size(m) + +func (x *VersionDetailGetReply) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *VersionDetailGetReply) XXX_DiscardUnknown() { - xxx_messageInfo_VersionDetailGetReply.DiscardUnknown(m) + +func (*VersionDetailGetReply) ProtoMessage() {} + +func (x *VersionDetailGetReply) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_VersionDetailGetReply proto.InternalMessageInfo +// Deprecated: Use VersionDetailGetReply.ProtoReflect.Descriptor instead. +func (*VersionDetailGetReply) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{22} +} -func (m *VersionDetailGetReply) GetVersion() *VersionOutput { - if m != nil { - return m.Version +func (x *VersionDetailGetReply) GetVersion() *VersionOutput { + if x != nil { + return x.Version } return nil } type Disk struct { - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` - Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"` - Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` - TotalSize int64 `protobuf:"varint,5,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` - FreeSize int64 `protobuf:"varint,6,opt,name=free_size,json=freeSize,proto3" json:"free_size,omitempty"` - TotalBlocks int64 `protobuf:"varint,7,opt,name=total_blocks,json=totalBlocks,proto3" json:"total_blocks,omitempty"` - FreeBlocks int64 `protobuf:"varint,8,opt,name=free_blocks,json=freeBlocks,proto3" json:"free_blocks,omitempty"` - BlockSize int64 `protobuf:"varint,9,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` - ClusterSize int64 `protobuf:"varint,10,opt,name=cluster_size,json=clusterSize,proto3" json:"cluster_size,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *Disk) Reset() { *m = Disk{} } -func (m *Disk) String() string { return proto.CompactTextString(m) } -func (*Disk) ProtoMessage() {} -func (*Disk) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{22} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *Disk) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_Disk.Unmarshal(m, b) + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid,omitempty"` + Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"` + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` + TotalSize int64 `protobuf:"varint,5,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"` + FreeSize int64 `protobuf:"varint,6,opt,name=free_size,json=freeSize,proto3" json:"free_size,omitempty"` + TotalBlocks int64 `protobuf:"varint,7,opt,name=total_blocks,json=totalBlocks,proto3" json:"total_blocks,omitempty"` + FreeBlocks int64 `protobuf:"varint,8,opt,name=free_blocks,json=freeBlocks,proto3" json:"free_blocks,omitempty"` + BlockSize int64 `protobuf:"varint,9,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` + ClusterSize int64 `protobuf:"varint,10,opt,name=cluster_size,json=clusterSize,proto3" json:"cluster_size,omitempty"` } -func (m *Disk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_Disk.Marshal(b, m, deterministic) -} -func (m *Disk) XXX_Merge(src proto.Message) { - xxx_messageInfo_Disk.Merge(m, src) + +func (x *Disk) Reset() { + *x = Disk{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *Disk) XXX_Size() int { - return xxx_messageInfo_Disk.Size(m) + +func (x *Disk) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *Disk) XXX_DiscardUnknown() { - xxx_messageInfo_Disk.DiscardUnknown(m) + +func (*Disk) ProtoMessage() {} + +func (x *Disk) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_Disk proto.InternalMessageInfo +// Deprecated: Use Disk.ProtoReflect.Descriptor instead. +func (*Disk) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{23} +} -func (m *Disk) GetId() string { - if m != nil { - return m.Id +func (x *Disk) GetId() string { + if x != nil { + return x.Id } return "" } -func (m *Disk) GetUuid() string { - if m != nil { - return m.Uuid +func (x *Disk) GetUuid() string { + if x != nil { + return x.Uuid } return "" } -func (m *Disk) GetPath() string { - if m != nil { - return m.Path +func (x *Disk) GetPath() string { + if x != nil { + return x.Path } return "" } -func (m *Disk) GetType() string { - if m != nil { - return m.Type +func (x *Disk) GetType() string { + if x != nil { + return x.Type } return "" } -func (m *Disk) GetTotalSize() int64 { - if m != nil { - return m.TotalSize +func (x *Disk) GetTotalSize() int64 { + if x != nil { + return x.TotalSize } return 0 } -func (m *Disk) GetFreeSize() int64 { - if m != nil { - return m.FreeSize +func (x *Disk) GetFreeSize() int64 { + if x != nil { + return x.FreeSize } return 0 } -func (m *Disk) GetTotalBlocks() int64 { - if m != nil { - return m.TotalBlocks +func (x *Disk) GetTotalBlocks() int64 { + if x != nil { + return x.TotalBlocks } return 0 } -func (m *Disk) GetFreeBlocks() int64 { - if m != nil { - return m.FreeBlocks +func (x *Disk) GetFreeBlocks() int64 { + if x != nil { + return x.FreeBlocks } return 0 } -func (m *Disk) GetBlockSize() int64 { - if m != nil { - return m.BlockSize +func (x *Disk) GetBlockSize() int64 { + if x != nil { + return x.BlockSize } return 0 } -func (m *Disk) GetClusterSize() int64 { - if m != nil { - return m.ClusterSize +func (x *Disk) GetClusterSize() int64 { + if x != nil { + return x.ClusterSize } return 0 } type DiskCreateRequest struct { - DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,2,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - DiskPath string `protobuf:"bytes,3,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` - BlockSize int64 `protobuf:"varint,4,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *DiskCreateRequest) Reset() { *m = DiskCreateRequest{} } -func (m *DiskCreateRequest) String() string { return proto.CompactTextString(m) } -func (*DiskCreateRequest) ProtoMessage() {} -func (*DiskCreateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{23} -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskCreateRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskCreateRequest.Unmarshal(m, b) -} -func (m *DiskCreateRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskCreateRequest.Marshal(b, m, deterministic) + DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,2,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` + DiskPath string `protobuf:"bytes,3,opt,name=disk_path,json=diskPath,proto3" json:"disk_path,omitempty"` + BlockSize int64 `protobuf:"varint,4,opt,name=block_size,json=blockSize,proto3" json:"block_size,omitempty"` } -func (m *DiskCreateRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskCreateRequest.Merge(m, src) + +func (x *DiskCreateRequest) Reset() { + *x = DiskCreateRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskCreateRequest) XXX_Size() int { - return xxx_messageInfo_DiskCreateRequest.Size(m) + +func (x *DiskCreateRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskCreateRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskCreateRequest.DiscardUnknown(m) + +func (*DiskCreateRequest) ProtoMessage() {} + +func (x *DiskCreateRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskCreateRequest proto.InternalMessageInfo +// Deprecated: Use DiskCreateRequest.ProtoReflect.Descriptor instead. +func (*DiskCreateRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{24} +} -func (m *DiskCreateRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskCreateRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskCreateRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *DiskCreateRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func (m *DiskCreateRequest) GetDiskPath() string { - if m != nil { - return m.DiskPath +func (x *DiskCreateRequest) GetDiskPath() string { + if x != nil { + return x.DiskPath } return "" } -func (m *DiskCreateRequest) GetBlockSize() int64 { - if m != nil { - return m.BlockSize +func (x *DiskCreateRequest) GetBlockSize() int64 { + if x != nil { + return x.BlockSize } return 0 } type DiskGetRequest struct { - DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskGetRequest) Reset() { *m = DiskGetRequest{} } -func (m *DiskGetRequest) String() string { return proto.CompactTextString(m) } -func (*DiskGetRequest) ProtoMessage() {} -func (*DiskGetRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{24} + DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` } -func (m *DiskGetRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskGetRequest.Unmarshal(m, b) -} -func (m *DiskGetRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskGetRequest.Marshal(b, m, deterministic) -} -func (m *DiskGetRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskGetRequest.Merge(m, src) +func (x *DiskGetRequest) Reset() { + *x = DiskGetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskGetRequest) XXX_Size() int { - return xxx_messageInfo_DiskGetRequest.Size(m) + +func (x *DiskGetRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskGetRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskGetRequest.DiscardUnknown(m) + +func (*DiskGetRequest) ProtoMessage() {} + +func (x *DiskGetRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskGetRequest proto.InternalMessageInfo +// Deprecated: Use DiskGetRequest.ProtoReflect.Descriptor instead. +func (*DiskGetRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{25} +} -func (m *DiskGetRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskGetRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } type DiskDeleteRequest struct { - DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` - DiskUuid string `protobuf:"bytes,2,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -func (m *DiskDeleteRequest) Reset() { *m = DiskDeleteRequest{} } -func (m *DiskDeleteRequest) String() string { return proto.CompactTextString(m) } -func (*DiskDeleteRequest) ProtoMessage() {} -func (*DiskDeleteRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_f86dfec2b2acc42c, []int{25} + DiskName string `protobuf:"bytes,1,opt,name=disk_name,json=diskName,proto3" json:"disk_name,omitempty"` + DiskUuid string `protobuf:"bytes,2,opt,name=disk_uuid,json=diskUuid,proto3" json:"disk_uuid,omitempty"` } -func (m *DiskDeleteRequest) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_DiskDeleteRequest.Unmarshal(m, b) -} -func (m *DiskDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_DiskDeleteRequest.Marshal(b, m, deterministic) -} -func (m *DiskDeleteRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_DiskDeleteRequest.Merge(m, src) +func (x *DiskDeleteRequest) Reset() { + *x = DiskDeleteRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } -func (m *DiskDeleteRequest) XXX_Size() int { - return xxx_messageInfo_DiskDeleteRequest.Size(m) + +func (x *DiskDeleteRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *DiskDeleteRequest) XXX_DiscardUnknown() { - xxx_messageInfo_DiskDeleteRequest.DiscardUnknown(m) + +func (*DiskDeleteRequest) ProtoMessage() {} + +func (x *DiskDeleteRequest) ProtoReflect() protoreflect.Message { + mi := &file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) } -var xxx_messageInfo_DiskDeleteRequest proto.InternalMessageInfo +// Deprecated: Use DiskDeleteRequest.ProtoReflect.Descriptor instead. +func (*DiskDeleteRequest) Descriptor() ([]byte, []int) { + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP(), []int{26} +} -func (m *DiskDeleteRequest) GetDiskName() string { - if m != nil { - return m.DiskName +func (x *DiskDeleteRequest) GetDiskName() string { + if x != nil { + return x.DiskName } return "" } -func (m *DiskDeleteRequest) GetDiskUuid() string { - if m != nil { - return m.DiskUuid +func (x *DiskDeleteRequest) GetDiskUuid() string { + if x != nil { + return x.DiskUuid } return "" } -func init() { - proto.RegisterEnum("spdkrpc.ReplicaMode", ReplicaMode_name, ReplicaMode_value) - proto.RegisterType((*Lvol)(nil), "spdkrpc.Lvol") - proto.RegisterMapType((map[string]bool)(nil), "spdkrpc.Lvol.ChildrenEntry") - proto.RegisterType((*Replica)(nil), "spdkrpc.Replica") - proto.RegisterMapType((map[string]*Lvol)(nil), "spdkrpc.Replica.SnapshotsEntry") - proto.RegisterType((*ReplicaCreateRequest)(nil), "spdkrpc.ReplicaCreateRequest") - proto.RegisterType((*ReplicaDeleteRequest)(nil), "spdkrpc.ReplicaDeleteRequest") - proto.RegisterType((*ReplicaGetRequest)(nil), "spdkrpc.ReplicaGetRequest") - proto.RegisterType((*ReplicaListResponse)(nil), "spdkrpc.ReplicaListResponse") - proto.RegisterMapType((map[string]*Replica)(nil), "spdkrpc.ReplicaListResponse.ReplicasEntry") - proto.RegisterType((*ReplicaRebuildingSrcStartRequest)(nil), "spdkrpc.ReplicaRebuildingSrcStartRequest") - proto.RegisterType((*ReplicaRebuildingSrcFinishRequest)(nil), "spdkrpc.ReplicaRebuildingSrcFinishRequest") - proto.RegisterType((*ReplicaSnapshotShallowCopyRequest)(nil), "spdkrpc.ReplicaSnapshotShallowCopyRequest") - proto.RegisterType((*ReplicaRebuildingDstStartRequest)(nil), "spdkrpc.ReplicaRebuildingDstStartRequest") - proto.RegisterType((*ReplicaRebuildingDstStartResponse)(nil), "spdkrpc.ReplicaRebuildingDstStartResponse") - proto.RegisterType((*ReplicaRebuildingDstFinishRequest)(nil), "spdkrpc.ReplicaRebuildingDstFinishRequest") - proto.RegisterType((*Engine)(nil), "spdkrpc.Engine") - proto.RegisterMapType((map[string]string)(nil), "spdkrpc.Engine.ReplicaAddressMapEntry") - proto.RegisterMapType((map[string]ReplicaMode)(nil), "spdkrpc.Engine.ReplicaModeMapEntry") - proto.RegisterType((*EngineCreateRequest)(nil), "spdkrpc.EngineCreateRequest") - proto.RegisterMapType((map[string]string)(nil), "spdkrpc.EngineCreateRequest.ReplicaAddressMapEntry") - proto.RegisterType((*EngineDeleteRequest)(nil), "spdkrpc.EngineDeleteRequest") - proto.RegisterType((*EngineGetRequest)(nil), "spdkrpc.EngineGetRequest") - proto.RegisterType((*EngineListResponse)(nil), "spdkrpc.EngineListResponse") - proto.RegisterMapType((map[string]*Engine)(nil), "spdkrpc.EngineListResponse.EnginesEntry") - proto.RegisterType((*EngineReplicaAddRequest)(nil), "spdkrpc.EngineReplicaAddRequest") - proto.RegisterType((*EngineReplicaDeleteRequest)(nil), "spdkrpc.EngineReplicaDeleteRequest") - proto.RegisterType((*SnapshotRequest)(nil), "spdkrpc.SnapshotRequest") - proto.RegisterType((*VersionOutput)(nil), "spdkrpc.VersionOutput") - proto.RegisterType((*VersionDetailGetReply)(nil), "spdkrpc.VersionDetailGetReply") - proto.RegisterType((*Disk)(nil), "spdkrpc.Disk") - proto.RegisterType((*DiskCreateRequest)(nil), "spdkrpc.DiskCreateRequest") - proto.RegisterType((*DiskGetRequest)(nil), "spdkrpc.DiskGetRequest") - proto.RegisterType((*DiskDeleteRequest)(nil), "spdkrpc.DiskDeleteRequest") -} - -func init() { proto.RegisterFile("spdk.proto", fileDescriptor_f86dfec2b2acc42c) } - -var fileDescriptor_f86dfec2b2acc42c = []byte{ - // 1773 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x58, 0x4f, 0x73, 0x13, 0xc7, - 0x12, 0x47, 0x7f, 0x6c, 0x49, 0x2d, 0x5b, 0x96, 0x07, 0x63, 0x96, 0x35, 0x60, 0xb3, 0x7e, 0xcf, - 0x18, 0xbf, 0xf7, 0x04, 0xcf, 0x1c, 0xa0, 0x48, 0xb9, 0x0a, 0x63, 0xd9, 0x09, 0x7f, 0x0c, 0x94, - 0x1c, 0xf0, 0x25, 0x55, 0x62, 0xad, 0x1d, 0xec, 0x2d, 0xaf, 0x76, 0x97, 0xdd, 0x91, 0x12, 0xf3, - 0x01, 0x92, 0xca, 0x3d, 0xf7, 0x9c, 0x72, 0xcb, 0x25, 0x95, 0x43, 0x3e, 0x41, 0x8e, 0xf9, 0x42, - 0x39, 0xa5, 0xe6, 0xdf, 0x6a, 0x76, 0xb5, 0xbb, 0x56, 0x80, 0xca, 0x49, 0xb3, 0xbf, 0xee, 0xe9, - 0xee, 0xe9, 0xee, 0xe9, 0x9e, 0x16, 0x40, 0xe8, 0x5b, 0xa7, 0x2d, 0x3f, 0xf0, 0x88, 0x87, 0x2a, - 0x74, 0x1d, 0xf8, 0x3d, 0x7d, 0xe9, 0xd8, 0xf3, 0x8e, 0x1d, 0x7c, 0x9b, 0xc1, 0x47, 0x83, 0xb7, - 0xb7, 0x71, 0xdf, 0x27, 0x67, 0x9c, 0xcb, 0xf8, 0xb3, 0x00, 0xe5, 0x67, 0x43, 0xcf, 0x41, 0x08, - 0xca, 0xae, 0xd9, 0xc7, 0x5a, 0x61, 0xa5, 0xb0, 0x5e, 0xeb, 0xb0, 0x35, 0xc5, 0x06, 0x03, 0xdb, - 0xd2, 0x8a, 0x1c, 0xa3, 0x6b, 0xb4, 0x04, 0xb5, 0xd0, 0xc7, 0xbd, 0x6e, 0x68, 0xbf, 0xc7, 0x5a, - 0x69, 0xa5, 0xb0, 0x5e, 0xee, 0x54, 0x29, 0x70, 0x60, 0xbf, 0xc7, 0x68, 0x19, 0xea, 0x66, 0x8f, - 0x0c, 0x4c, 0x87, 0x93, 0xcb, 0x8c, 0x0c, 0x1c, 0x62, 0x0c, 0x8b, 0x30, 0xed, 0x9b, 0x01, 0x76, - 0x89, 0x36, 0xc5, 0x64, 0x8a, 0x2f, 0x74, 0x0f, 0xaa, 0xbd, 0x13, 0xdb, 0xb1, 0x02, 0xec, 0x6a, - 0xd3, 0x2b, 0xa5, 0xf5, 0xfa, 0xe6, 0x52, 0x4b, 0xd8, 0xdf, 0xa2, 0xe6, 0xb5, 0x76, 0x04, 0x75, - 0xd7, 0x25, 0xc1, 0x59, 0x27, 0x62, 0xd6, 0x3f, 0x83, 0xd9, 0x18, 0x09, 0x35, 0xa1, 0x74, 0x8a, - 0xcf, 0xc4, 0x31, 0xe8, 0x12, 0x2d, 0xc0, 0xd4, 0xd0, 0x74, 0x06, 0x98, 0x1d, 0xa3, 0xda, 0xe1, - 0x1f, 0x0f, 0x8a, 0xf7, 0x0b, 0xc6, 0x2f, 0x25, 0xa8, 0x74, 0xb0, 0xef, 0xd8, 0x3d, 0x73, 0xe2, - 0xf3, 0x5f, 0x81, 0xaa, 0x33, 0x0c, 0xbb, 0x8c, 0xb7, 0xc4, 0xf0, 0x8a, 0x33, 0x0c, 0x9f, 0x53, - 0x76, 0x41, 0x62, 0x5b, 0xca, 0x11, 0xe9, 0xd5, 0x98, 0xd7, 0xa6, 0xf2, 0xbd, 0x36, 0x3d, 0xe6, - 0xb5, 0x06, 0x14, 0x6d, 0x5f, 0xab, 0x30, 0x91, 0x45, 0xdb, 0x47, 0xd7, 0x00, 0x7c, 0x2f, 0x20, - 0xdd, 0x90, 0x98, 0x01, 0xd1, 0xaa, 0x2b, 0x85, 0xf5, 0xa9, 0x4e, 0x8d, 0x22, 0x07, 0x14, 0xa0, - 0x76, 0x30, 0x32, 0x76, 0x2d, 0xad, 0xc6, 0x88, 0x15, 0xfa, 0xbd, 0xeb, 0x5a, 0x68, 0x0b, 0x6a, - 0xa1, 0x6b, 0xfa, 0xe1, 0x89, 0x47, 0x42, 0x0d, 0x98, 0xa3, 0x97, 0x23, 0x47, 0x0b, 0x57, 0xb4, - 0x0e, 0x24, 0x07, 0x77, 0xf6, 0x68, 0x07, 0xba, 0x0e, 0x10, 0xe0, 0xa3, 0x81, 0xed, 0x58, 0xb6, - 0x7b, 0xac, 0xd5, 0x99, 0x3f, 0x15, 0x84, 0xba, 0x3a, 0x24, 0x26, 0xc1, 0xda, 0x0c, 0xb3, 0x95, - 0x7f, 0xe8, 0x4f, 0xa1, 0x11, 0x17, 0x99, 0x12, 0xa4, 0x55, 0x35, 0x48, 0xf5, 0xcd, 0xd9, 0x58, - 0xf4, 0xd5, 0x98, 0xfd, 0x5e, 0x80, 0x05, 0x61, 0xe8, 0x4e, 0x80, 0x4d, 0x82, 0x3b, 0xf8, 0xdd, - 0x00, 0x87, 0x24, 0x35, 0x80, 0x6a, 0xb0, 0x8a, 0xd9, 0xc1, 0x2a, 0xe5, 0x04, 0xab, 0x9c, 0x08, - 0xd6, 0x4d, 0x98, 0xc3, 0xdf, 0xf8, 0x5e, 0x88, 0xbb, 0x01, 0x7e, 0x37, 0xb0, 0x03, 0x6c, 0xb1, - 0x78, 0x56, 0x3b, 0x0d, 0x0e, 0x77, 0x04, 0x1a, 0x05, 0xa9, 0xe7, 0x0d, 0x5c, 0xc2, 0x82, 0x2a, - 0x82, 0xb4, 0x43, 0x01, 0xe3, 0x55, 0x74, 0x8c, 0x36, 0x76, 0x70, 0xfe, 0x31, 0x6e, 0x41, 0xb3, - 0xe7, 0x60, 0xd3, 0x1d, 0xf8, 0x23, 0xa5, 0x3c, 0x99, 0xe7, 0x04, 0x2e, 0xb5, 0x1a, 0x37, 0x61, - 0x5e, 0x88, 0xfd, 0x1c, 0x93, 0x1c, 0x99, 0xc6, 0xcf, 0x05, 0xb8, 0x28, 0x38, 0x9f, 0xd9, 0x21, - 0xe9, 0xe0, 0xd0, 0xf7, 0xdc, 0x10, 0xa3, 0x3d, 0xa8, 0x06, 0x1c, 0x0e, 0xb5, 0x02, 0x4b, 0x90, - 0x8d, 0x64, 0x82, 0xa8, 0xfc, 0x12, 0x13, 0xb9, 0x12, 0xed, 0xd5, 0xf7, 0x61, 0x36, 0x46, 0x4a, - 0x89, 0xf9, 0x5a, 0x3c, 0xe6, 0xcd, 0xa4, 0x1e, 0x35, 0xec, 0x3f, 0x16, 0x60, 0x45, 0xc2, 0x51, - 0xbe, 0x1d, 0x04, 0x3d, 0x96, 0xf1, 0x79, 0xbe, 0x5b, 0x87, 0xa6, 0x15, 0x92, 0xae, 0xb0, 0x4b, - 0x4d, 0x85, 0x86, 0x45, 0x8f, 0xc1, 0x60, 0x96, 0x11, 0x5b, 0xb0, 0xc4, 0x39, 0xa5, 0xf8, 0xae, - 0x33, 0xf4, 0x9c, 0xae, 0x69, 0x59, 0x01, 0x0e, 0x43, 0x91, 0x24, 0x1a, 0xdb, 0x24, 0x39, 0x68, - 0x72, 0x6e, 0x73, 0xba, 0x61, 0xc2, 0x8d, 0x34, 0x03, 0xf7, 0x6c, 0xd7, 0x0e, 0x4f, 0x3e, 0x89, - 0x85, 0xc6, 0x57, 0x91, 0x0a, 0x79, 0x9f, 0x0e, 0x4e, 0x4c, 0xc7, 0xf1, 0xbe, 0xde, 0xf1, 0xfc, - 0xb3, 0x3c, 0x15, 0xab, 0x30, 0x2b, 0x2f, 0xb1, 0x2a, 0x7f, 0x46, 0x82, 0x4c, 0x7a, 0x37, 0xc5, - 0xc3, 0xed, 0x90, 0x9c, 0xeb, 0xe1, 0x94, 0x1b, 0x51, 0x4c, 0xbb, 0x11, 0xc6, 0x56, 0x8a, 0x87, - 0x46, 0x0a, 0x44, 0xfe, 0x69, 0x50, 0x91, 0x1e, 0xe7, 0x4a, 0xe4, 0xa7, 0x61, 0xa5, 0x6f, 0x3f, - 0xdf, 0xc1, 0xff, 0x81, 0xf9, 0x81, 0x9b, 0x6e, 0x62, 0x53, 0x12, 0x22, 0x23, 0x7f, 0x2d, 0xc3, - 0xf4, 0xae, 0x7b, 0x6c, 0xbb, 0x38, 0x55, 0xd6, 0x32, 0xd4, 0x87, 0x9e, 0x33, 0xe8, 0x63, 0xd5, - 0x8f, 0xc0, 0x21, 0x96, 0x45, 0x1f, 0xd7, 0x1f, 0x79, 0xa5, 0x9f, 0x8a, 0x2a, 0x3d, 0x82, 0x32, - 0x2d, 0x19, 0xa2, 0x7c, 0xb0, 0x35, 0x7a, 0x0d, 0x17, 0x65, 0xae, 0x08, 0xd7, 0x74, 0xfb, 0x26, - 0x6d, 0x0f, 0xf4, 0xb2, 0xae, 0x45, 0x97, 0x88, 0x1f, 0x42, 0xde, 0x25, 0x91, 0xa5, 0xfb, 0xa6, - 0xcf, 0x2f, 0xea, 0x7c, 0x90, 0xc4, 0xd1, 0x3e, 0x34, 0xa5, 0xdc, 0xbe, 0x67, 0x61, 0x26, 0xb4, - 0xca, 0x84, 0xae, 0x66, 0x08, 0xdd, 0xf7, 0x2c, 0x1c, 0x49, 0x6c, 0x04, 0x31, 0x10, 0xe9, 0x50, - 0x7d, 0x1b, 0x78, 0x2e, 0x91, 0x5d, 0xa8, 0xd6, 0x89, 0xbe, 0x29, 0x0d, 0xbb, 0x96, 0xef, 0xd9, - 0x2e, 0xd1, 0x80, 0xd3, 0xe4, 0xf7, 0xa8, 0x87, 0xd4, 0xd5, 0x1e, 0xd2, 0x86, 0xc5, 0xf4, 0x93, - 0x9c, 0xd7, 0xf0, 0x6b, 0x4a, 0x15, 0xd1, 0x0f, 0xa3, 0x9a, 0xa7, 0x9a, 0x9e, 0x22, 0x62, 0x43, - 0x15, 0xd1, 0xd8, 0x5c, 0x48, 0x96, 0x26, 0xba, 0x5d, 0x2d, 0x4f, 0x7f, 0x14, 0xe1, 0x22, 0xf7, - 0xcd, 0xf9, 0x4d, 0xe9, 0xe3, 0x52, 0xa8, 0x97, 0x1e, 0xfd, 0x32, 0x0b, 0xd4, 0xdd, 0x44, 0xa0, - 0x62, 0xc6, 0xfc, 0x8d, 0x54, 0x50, 0x63, 0x37, 0x95, 0x88, 0x5d, 0x7e, 0x5f, 0xfb, 0x34, 0x81, - 0x32, 0x6e, 0x49, 0x77, 0x9e, 0xdb, 0x1c, 0x8d, 0x35, 0x68, 0x72, 0xd6, 0x73, 0x1a, 0xde, 0x4f, - 0x05, 0x40, 0x9c, 0x31, 0xd6, 0xef, 0x1e, 0x41, 0x05, 0x33, 0x54, 0xb6, 0xbb, 0xf5, 0x84, 0x0f, - 0x63, 0xdd, 0x8e, 0x43, 0xa2, 0xd9, 0xc9, 0x8d, 0xfa, 0x53, 0x98, 0x51, 0x09, 0x29, 0x27, 0xfd, - 0x77, 0xbc, 0xd5, 0xcd, 0x25, 0x74, 0xa8, 0x47, 0xff, 0xb6, 0x00, 0x97, 0x05, 0x1a, 0xf9, 0x51, - 0x9e, 0x6b, 0x19, 0xea, 0x5c, 0x67, 0x57, 0x39, 0x1e, 0x70, 0x88, 0xa5, 0xce, 0x0d, 0x98, 0x49, - 0xe9, 0x23, 0xf5, 0x40, 0x69, 0x73, 0x37, 0x61, 0x2e, 0x91, 0x40, 0xa2, 0xb5, 0x35, 0xe2, 0x79, - 0x60, 0x7c, 0x5f, 0x00, 0x3d, 0x66, 0x48, 0x3c, 0x16, 0xff, 0xa8, 0x2d, 0x4f, 0x60, 0x4e, 0xb6, - 0xbc, 0x8f, 0xee, 0x73, 0xdf, 0x95, 0x60, 0xf6, 0x35, 0x0e, 0x42, 0xdb, 0x73, 0x5f, 0x0c, 0x88, - 0x3f, 0x20, 0xb4, 0xe7, 0x0c, 0x39, 0x20, 0x7b, 0x8e, 0xf8, 0x44, 0x57, 0xa1, 0x76, 0x6c, 0x93, - 0x1d, 0xaf, 0xdf, 0xb7, 0x89, 0x10, 0x36, 0x02, 0x28, 0x95, 0x35, 0xa2, 0x36, 0x2d, 0x57, 0xdc, - 0xf0, 0x11, 0x80, 0xfe, 0x05, 0xb3, 0x3d, 0xc7, 0xde, 0x7e, 0xf9, 0x58, 0x28, 0x63, 0xe5, 0xbe, - 0xd4, 0x89, 0x83, 0x68, 0x83, 0xbe, 0xed, 0x28, 0xb0, 0x6f, 0xbb, 0x92, 0x71, 0x8a, 0x31, 0x8e, - 0xe1, 0x68, 0x13, 0x16, 0x7a, 0x9e, 0x4b, 0x02, 0xcf, 0x71, 0x70, 0xa0, 0x08, 0x9e, 0x66, 0xfc, - 0xa9, 0x34, 0x74, 0x1f, 0x2e, 0xc7, 0x70, 0x45, 0x4d, 0x85, 0x6d, 0xcb, 0x22, 0xa3, 0xff, 0xc2, - 0xbc, 0x65, 0x12, 0x73, 0xcf, 0x0b, 0xfa, 0x26, 0x91, 0x7b, 0xaa, 0x6c, 0xcf, 0x38, 0x81, 0xda, - 0x36, 0x02, 0x15, 0x25, 0x35, 0x6e, 0x5b, 0x1a, 0xcd, 0x78, 0x0c, 0x97, 0xc4, 0xb2, 0x8d, 0x89, - 0x69, 0x3b, 0xec, 0x06, 0xfb, 0xce, 0x19, 0xba, 0x13, 0x0f, 0x48, 0x7d, 0x73, 0x31, 0xba, 0x30, - 0xb1, 0xc8, 0x45, 0x81, 0x32, 0x7e, 0x28, 0x42, 0xb9, 0x6d, 0x87, 0xa7, 0xac, 0x83, 0x5a, 0x22, - 0x8c, 0x45, 0xdb, 0x4a, 0x9d, 0xe1, 0x68, 0x57, 0x35, 0xc9, 0x89, 0x08, 0x19, 0x5b, 0x53, 0x8c, - 0x9c, 0xf9, 0x58, 0x0c, 0x6e, 0x6c, 0x4d, 0x4b, 0x1d, 0xf1, 0x88, 0xec, 0xd6, 0x3c, 0x2a, 0x35, - 0x86, 0xb0, 0x52, 0xbc, 0x04, 0xb5, 0xb7, 0x01, 0xc6, 0xa3, 0xa9, 0xad, 0x44, 0xcb, 0x24, 0xc6, - 0x8c, 0x78, 0x03, 0x66, 0xf8, 0xde, 0x23, 0xc7, 0xeb, 0x9d, 0x86, 0xc2, 0xd9, 0x75, 0x86, 0x3d, - 0x62, 0x10, 0xbd, 0x41, 0x6c, 0xbf, 0xe0, 0xe0, 0xae, 0x05, 0x0a, 0x09, 0x86, 0x6b, 0x00, 0x8c, - 0xc6, 0x35, 0x70, 0x4f, 0xd6, 0x18, 0x22, 0x55, 0xf4, 0x9c, 0x41, 0x48, 0x70, 0xc0, 0x19, 0x80, - 0xab, 0x10, 0x18, 0x65, 0xa1, 0x77, 0x78, 0x9e, 0xba, 0x25, 0xde, 0x95, 0x96, 0xa0, 0x66, 0xd9, - 0xe1, 0xa9, 0x7a, 0x71, 0xab, 0x14, 0x90, 0xdd, 0x87, 0x11, 0x15, 0xaf, 0x31, 0xa2, 0x1c, 0x8d, - 0x18, 0x51, 0x71, 0x1f, 0x23, 0xbe, 0xa4, 0x2e, 0x8c, 0x9b, 0x5b, 0x4e, 0x98, 0x6b, 0xfc, 0x0f, - 0x1a, 0xd4, 0x14, 0xa5, 0x4c, 0xe7, 0xd9, 0x61, 0xec, 0x73, 0xcb, 0xe3, 0x45, 0xe7, 0x83, 0x2d, - 0xdf, 0x58, 0x83, 0xba, 0xd2, 0xbb, 0xd1, 0x34, 0x14, 0x0f, 0x5f, 0x34, 0x2f, 0xd0, 0xdf, 0xce, - 0x61, 0xb3, 0x80, 0x2a, 0x50, 0xda, 0xed, 0x74, 0x9a, 0xc5, 0xcd, 0xdf, 0xe6, 0xa0, 0x7e, 0xf0, - 0xb2, 0xfd, 0xf4, 0x00, 0x07, 0x43, 0xbb, 0x87, 0xd1, 0xc3, 0x68, 0x8e, 0xe1, 0x3e, 0x44, 0xd7, - 0x92, 0x6f, 0x81, 0x98, 0x6f, 0xf5, 0xb1, 0x29, 0x06, 0xed, 0x45, 0x12, 0xf8, 0x59, 0xc6, 0x25, - 0xc4, 0xce, 0xa8, 0x2f, 0xb6, 0xf8, 0x1f, 0x36, 0x2d, 0xf9, 0x87, 0x4d, 0x6b, 0xb7, 0xef, 0x93, - 0x33, 0xf4, 0x00, 0x60, 0x34, 0xda, 0x21, 0x3d, 0x29, 0x64, 0xe4, 0xd7, 0x14, 0x1b, 0x76, 0xe0, - 0x52, 0x62, 0x72, 0x10, 0xa7, 0xd1, 0x22, 0xd6, 0x44, 0x7d, 0x4d, 0x11, 0xf2, 0x78, 0x4c, 0x88, - 0x38, 0x50, 0xb6, 0x90, 0xac, 0xb3, 0xec, 0x44, 0xd1, 0xa0, 0xed, 0x15, 0x65, 0xb0, 0xe9, 0x57, - 0xf3, 0x46, 0x4f, 0xf4, 0x08, 0x66, 0x04, 0x7c, 0x68, 0x92, 0xde, 0x49, 0xa6, 0x94, 0x0c, 0xdc, - 0xb8, 0x70, 0xa7, 0x80, 0xde, 0xc0, 0x95, 0xcc, 0xb1, 0x12, 0xdd, 0x1a, 0x9b, 0x48, 0xb3, 0x46, - 0xcf, 0x6c, 0x1d, 0xe8, 0x08, 0xf4, 0xec, 0xb9, 0x10, 0x6d, 0xe4, 0xaa, 0x88, 0xcd, 0x36, 0x39, - 0x3a, 0xde, 0x44, 0x3a, 0x52, 0x06, 0xc3, 0x71, 0x1d, 0xd9, 0xd3, 0x63, 0x66, 0xc0, 0x48, 0x8a, - 0x9f, 0xe4, 0xec, 0x96, 0xe7, 0xa7, 0xc4, 0x00, 0xa9, 0x6f, 0x4c, 0xc2, 0xca, 0xe3, 0x9b, 0xe1, - 0xbb, 0x68, 0xe4, 0x43, 0xf9, 0xb2, 0x26, 0xf5, 0xdd, 0x6b, 0x30, 0x52, 0x4d, 0x99, 0xf4, 0x9e, - 0x64, 0x79, 0x6c, 0x4b, 0x3e, 0x0a, 0x85, 0x84, 0xab, 0x79, 0x6f, 0x73, 0x3d, 0xf9, 0x22, 0x44, - 0x6d, 0xb9, 0x5d, 0xdc, 0xb1, 0xe4, 0xf6, 0xc9, 0x6a, 0xc6, 0x3d, 0xa8, 0x45, 0x8f, 0x63, 0x74, - 0x25, 0x21, 0x42, 0xa9, 0x18, 0x63, 0xea, 0xb7, 0x61, 0x81, 0xaf, 0x26, 0xf6, 0xc3, 0x98, 0x88, - 0x2f, 0x92, 0x22, 0x3e, 0xb8, 0x5a, 0x6c, 0x03, 0x8c, 0xde, 0xe2, 0x99, 0xd7, 0x7c, 0x29, 0xe7, - 0xe1, 0x8e, 0xb6, 0xa1, 0xce, 0xd1, 0x0f, 0x2f, 0x15, 0xcf, 0xe5, 0xa0, 0x31, 0x7a, 0x97, 0xa3, - 0x95, 0xe4, 0x43, 0x3e, 0xf9, 0x64, 0xcf, 0x49, 0xbc, 0x2f, 0xe5, 0x8c, 0x13, 0xef, 0x0e, 0xab, - 0xe9, 0x22, 0x27, 0x8a, 0xb7, 0x71, 0x01, 0xdd, 0x03, 0x18, 0x35, 0x7c, 0xa5, 0x4b, 0x8c, 0xbd, - 0x02, 0xf4, 0xd9, 0x18, 0x0d, 0x3d, 0xe4, 0x1b, 0x85, 0x15, 0xf1, 0x8d, 0x93, 0x25, 0xdb, 0xff, - 0xa1, 0x22, 0x1a, 0x3c, 0xba, 0x1c, 0xdb, 0xae, 0x24, 0x5a, 0x42, 0xe9, 0x13, 0x68, 0x26, 0x5f, - 0x80, 0x99, 0xb1, 0xb9, 0x9e, 0x7c, 0x03, 0xc6, 0x1f, 0x8d, 0x47, 0xd3, 0x8c, 0xff, 0xee, 0x5f, - 0x01, 0x00, 0x00, 0xff, 0xff, 0x6c, 0xec, 0xfe, 0x17, 0x05, 0x19, 0x00, 0x00, +var File_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto protoreflect.FileDescriptor + +var file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDesc = []byte{ + 0x0a, 0x41, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x6f, 0x6e, + 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2d, 0x73, + 0x70, 0x64, 0x6b, 0x2d, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x2f, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x70, 0x64, 0x6b, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x1a, 0x1b, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, + 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfa, 0x01, 0x0a, 0x04, 0x4c, 0x76, + 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, + 0x65, 0x63, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, + 0x70, 0x65, 0x63, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, + 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x63, + 0x74, 0x75, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, + 0x12, 0x37, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x76, 0x6f, + 0x6c, 0x2e, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x1a, 0x3b, 0x0a, 0x0d, 0x43, 0x68, 0x69, + 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xba, 0x03, 0x0a, 0x07, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x76, 0x73, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x76, 0x73, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x76, 0x73, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, 0x76, 0x73, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, + 0x73, 0x70, 0x65, 0x63, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x08, 0x73, 0x70, 0x65, 0x63, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, + 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, + 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, + 0x72, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x70, 0x6f, 0x72, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x72, + 0x74, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x70, 0x6f, 0x72, + 0x74, 0x45, 0x6e, 0x64, 0x12, 0x3d, 0x0a, 0x09, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, + 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x09, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, + 0x69, 0x6e, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x4b, 0x0a, 0x0e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x23, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x73, 0x70, 0x64, 0x6b, + 0x72, 0x70, 0x63, 0x2e, 0x4c, 0x76, 0x6f, 0x6c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, + 0x02, 0x38, 0x01, 0x22, 0xc5, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x19, 0x0a, 0x08, 0x6c, 0x76, 0x73, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6c, 0x76, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6c, + 0x76, 0x73, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6c, + 0x76, 0x73, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x70, 0x65, 0x63, 0x53, + 0x69, 0x7a, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x78, + 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, + 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x14, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6c, 0x65, 0x61, 0x6e, + 0x75, 0x70, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0f, 0x63, 0x6c, 0x65, 0x61, 0x6e, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, + 0x65, 0x64, 0x22, 0x27, 0x0a, 0x11, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x13, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x46, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x1a, 0x4d, 0x0a, 0x0d, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x26, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9f, 0x01, 0x0a, 0x20, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, + 0x53, 0x72, 0x63, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x64, + 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, + 0x1b, 0x64, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x5f, + 0x6c, 0x76, 0x6f, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x18, 0x64, 0x73, 0x74, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x4c, 0x76, 0x6f, 0x6c, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x61, 0x0a, 0x21, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, + 0x67, 0x53, 0x72, 0x63, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x10, 0x64, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x64, 0x73, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0x5c, 0x0a, 0x21, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x53, 0x68, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x5f, 0x0a, + 0x20, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, + 0x6e, 0x67, 0x44, 0x73, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, + 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, + 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x22, 0x3d, + 0x0a, 0x21, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, + 0x69, 0x6e, 0x67, 0x44, 0x73, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x64, 0x0a, + 0x21, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, + 0x6e, 0x67, 0x44, 0x73, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, + 0x73, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x10, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x64, 0x22, 0xd0, 0x04, 0x0a, 0x06, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x70, 0x65, 0x63, 0x53, 0x69, 0x7a, 0x65, + 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0a, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x53, 0x69, 0x7a, + 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x56, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x07, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x12, 0x4d, 0x0a, + 0x10, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x6d, 0x61, + 0x70, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, + 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x4d, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x72, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x70, 0x12, 0x1a, 0x0a, 0x08, + 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x70, + 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x73, 0x67, 0x1a, 0x44, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x57, 0x0a, + 0x13, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x4d, 0x61, 0x70, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, + 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xcd, 0x02, 0x0a, 0x13, 0x45, 0x6e, 0x67, 0x69, 0x6e, + 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x73, 0x70, 0x65, 0x63, 0x53, 0x69, 0x7a, 0x65, + 0x12, 0x63, 0x0a, 0x13, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x61, 0x70, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x11, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x4d, 0x61, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x1a, 0x44, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x29, 0x0a, 0x13, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x26, 0x0a, 0x10, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x12, 0x45, 0x6e, + 0x67, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x42, 0x0a, 0x07, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x28, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x73, 0x1a, 0x4b, 0x0a, 0x0c, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x73, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x25, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x22, 0x86, 0x01, 0x0a, 0x17, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, + 0x0b, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, + 0x0a, 0x0c, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, + 0x0f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x4a, 0x0a, 0x0f, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, + 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x37, 0x0a, 0x10, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x87, 0x03, 0x0a, 0x0d, + 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x18, 0x0a, + 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x67, 0x69, 0x74, 0x43, 0x6f, + 0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x67, 0x69, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6c, 0x69, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6c, 0x69, 0x41, + 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6c, 0x69, + 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6c, 0x69, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x72, 0x41, 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x41, + 0x50, 0x49, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x38, 0x0a, 0x17, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x17, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x41, 0x50, 0x49, 0x4d, 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, + 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x11, 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, + 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, + 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x12, 0x32, 0x0a, 0x14, 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x4d, + 0x69, 0x6e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x14, 0x64, 0x61, 0x74, 0x61, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x4d, 0x69, 0x6e, 0x56, 0x65, + 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x49, 0x0a, 0x15, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x30, + 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x22, 0x94, 0x02, 0x0a, 0x04, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x61, 0x74, + 0x68, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, + 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x72, 0x65, 0x65, 0x5f, 0x73, 0x69, 0x7a, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x66, 0x72, 0x65, 0x65, 0x53, 0x69, 0x7a, + 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x6c, + 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x65, 0x65, 0x5f, 0x62, 0x6c, 0x6f, + 0x63, 0x6b, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x66, 0x72, 0x65, 0x65, 0x42, + 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, + 0x53, 0x69, 0x7a, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, + 0x73, 0x69, 0x7a, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, + 0x74, 0x65, 0x72, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x89, 0x01, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x6b, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, + 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, + 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, + 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, + 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, + 0x50, 0x61, 0x74, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x73, 0x69, + 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x53, + 0x69, 0x7a, 0x65, 0x22, 0x2d, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x4d, 0x0a, 0x11, 0x44, 0x69, 0x73, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x6b, 0x5f, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x69, 0x73, 0x6b, 0x55, 0x75, 0x69, + 0x64, 0x2a, 0x26, 0x0a, 0x0b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4d, 0x6f, 0x64, 0x65, + 0x12, 0x06, 0x0a, 0x02, 0x57, 0x4f, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x57, 0x10, 0x01, + 0x12, 0x07, 0x0a, 0x03, 0x45, 0x52, 0x52, 0x10, 0x02, 0x32, 0xd6, 0x10, 0x0a, 0x0b, 0x53, 0x50, + 0x44, 0x4b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0d, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x73, 0x70, 0x64, + 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x73, 0x70, 0x64, 0x6b, + 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x46, 0x0a, 0x0d, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1d, 0x2e, 0x73, + 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x3a, 0x0a, 0x0a, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x47, 0x65, + 0x74, 0x12, 0x1a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, + 0x43, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, + 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x12, 0x49, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, + 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x18, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, + 0x49, 0x0a, 0x15, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, + 0x6f, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, + 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x43, 0x0a, 0x0b, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x1a, 0x1c, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x42, 0x0a, 0x0c, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x57, 0x61, 0x74, 0x63, 0x68, 0x12, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x30, 0x01, 0x12, 0x60, 0x0a, 0x19, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, + 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x72, 0x63, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x12, 0x29, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, + 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x72, 0x63, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x62, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, 0x72, 0x63, 0x46, 0x69, 0x6e, + 0x69, 0x73, 0x68, 0x12, 0x2a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x53, + 0x72, 0x63, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x60, 0x0a, 0x1a, 0x52, 0x65, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x53, 0x68, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x70, 0x79, 0x12, 0x2a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, + 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, + 0x74, 0x53, 0x68, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x70, 0x79, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x74, 0x0a, 0x19, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, + 0x44, 0x73, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x29, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, + 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, + 0x64, 0x69, 0x6e, 0x67, 0x44, 0x73, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, + 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, + 0x73, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, + 0x00, 0x12, 0x62, 0x0a, 0x1a, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x65, 0x62, 0x75, + 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x73, 0x74, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x12, + 0x2a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x73, 0x74, 0x46, 0x69, + 0x6e, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x22, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x52, 0x65, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0x44, 0x73, 0x74, 0x53, 0x6e, 0x61, + 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x73, 0x70, + 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3d, 0x0a, + 0x0c, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x73, 0x70, + 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x44, 0x0a, 0x0c, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x1c, 0x2e, 0x73, + 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x37, 0x0a, 0x09, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x47, 0x65, 0x74, 0x12, + 0x19, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, + 0x47, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x73, 0x70, 0x64, + 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x12, 0x4b, 0x0a, 0x14, 0x45, + 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x12, 0x18, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, + 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, + 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x48, 0x0a, 0x14, 0x45, 0x6e, 0x67, 0x69, + 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x12, 0x18, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, + 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x48, 0x0a, 0x14, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x53, 0x6e, 0x61, 0x70, + 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x76, 0x65, 0x72, 0x74, 0x12, 0x18, 0x2e, 0x73, 0x70, 0x64, + 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x6e, 0x61, 0x70, 0x73, 0x68, 0x6f, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x41, 0x0a, 0x0a, + 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x1a, 0x1b, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, + 0x69, 0x6e, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x41, 0x0a, 0x0b, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x57, 0x61, 0x74, 0x63, 0x68, 0x12, 0x16, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, + 0x30, 0x01, 0x12, 0x4e, 0x0a, 0x10, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x41, 0x64, 0x64, 0x12, 0x20, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, + 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x41, 0x64, + 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x22, 0x00, 0x12, 0x54, 0x0a, 0x13, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, + 0x69, 0x63, 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, 0x23, 0x2e, 0x73, 0x70, 0x64, 0x6b, + 0x72, 0x70, 0x63, 0x2e, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, + 0x61, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x37, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x6b, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, + 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x0d, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, + 0x6b, 0x12, 0x40, 0x0a, 0x0a, 0x44, 0x69, 0x73, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x12, + 0x1a, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x12, 0x31, 0x0a, 0x07, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, 0x74, 0x12, 0x17, + 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x47, 0x65, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0d, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, + 0x63, 0x2e, 0x44, 0x69, 0x73, 0x6b, 0x12, 0x4a, 0x0a, 0x10, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, + 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x47, 0x65, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x1a, 0x1e, 0x2e, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x2e, 0x56, 0x65, 0x72, + 0x73, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x42, 0x38, 0x5a, 0x36, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, 0x72, 0x6e, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x68, 0x6f, + 0x72, 0x6e, 0x2d, 0x73, 0x70, 0x64, 0x6b, 0x2d, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x73, 0x70, 0x64, 0x6b, 0x72, 0x70, 0x63, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescOnce sync.Once + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescData = file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDesc +) + +func file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescGZIP() []byte { + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescOnce.Do(func() { + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescData = protoimpl.X.CompressGZIP(file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescData) + }) + return file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDescData +} + +var file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes = make([]protoimpl.MessageInfo, 34) +var file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_goTypes = []interface{}{ + (ReplicaMode)(0), // 0: spdkrpc.ReplicaMode + (*Lvol)(nil), // 1: spdkrpc.Lvol + (*Replica)(nil), // 2: spdkrpc.Replica + (*ReplicaCreateRequest)(nil), // 3: spdkrpc.ReplicaCreateRequest + (*ReplicaDeleteRequest)(nil), // 4: spdkrpc.ReplicaDeleteRequest + (*ReplicaGetRequest)(nil), // 5: spdkrpc.ReplicaGetRequest + (*ReplicaListResponse)(nil), // 6: spdkrpc.ReplicaListResponse + (*ReplicaRebuildingSrcStartRequest)(nil), // 7: spdkrpc.ReplicaRebuildingSrcStartRequest + (*ReplicaRebuildingSrcFinishRequest)(nil), // 8: spdkrpc.ReplicaRebuildingSrcFinishRequest + (*ReplicaSnapshotShallowCopyRequest)(nil), // 9: spdkrpc.ReplicaSnapshotShallowCopyRequest + (*ReplicaRebuildingDstStartRequest)(nil), // 10: spdkrpc.ReplicaRebuildingDstStartRequest + (*ReplicaRebuildingDstStartResponse)(nil), // 11: spdkrpc.ReplicaRebuildingDstStartResponse + (*ReplicaRebuildingDstFinishRequest)(nil), // 12: spdkrpc.ReplicaRebuildingDstFinishRequest + (*Engine)(nil), // 13: spdkrpc.Engine + (*EngineCreateRequest)(nil), // 14: spdkrpc.EngineCreateRequest + (*EngineDeleteRequest)(nil), // 15: spdkrpc.EngineDeleteRequest + (*EngineGetRequest)(nil), // 16: spdkrpc.EngineGetRequest + (*EngineListResponse)(nil), // 17: spdkrpc.EngineListResponse + (*EngineReplicaAddRequest)(nil), // 18: spdkrpc.EngineReplicaAddRequest + (*EngineReplicaDeleteRequest)(nil), // 19: spdkrpc.EngineReplicaDeleteRequest + (*SnapshotRequest)(nil), // 20: spdkrpc.SnapshotRequest + (*SnapshotResponse)(nil), // 21: spdkrpc.SnapshotResponse + (*VersionOutput)(nil), // 22: spdkrpc.VersionOutput + (*VersionDetailGetReply)(nil), // 23: spdkrpc.VersionDetailGetReply + (*Disk)(nil), // 24: spdkrpc.Disk + (*DiskCreateRequest)(nil), // 25: spdkrpc.DiskCreateRequest + (*DiskGetRequest)(nil), // 26: spdkrpc.DiskGetRequest + (*DiskDeleteRequest)(nil), // 27: spdkrpc.DiskDeleteRequest + nil, // 28: spdkrpc.Lvol.ChildrenEntry + nil, // 29: spdkrpc.Replica.SnapshotsEntry + nil, // 30: spdkrpc.ReplicaListResponse.ReplicasEntry + nil, // 31: spdkrpc.Engine.ReplicaAddressMapEntry + nil, // 32: spdkrpc.Engine.ReplicaModeMapEntry + nil, // 33: spdkrpc.EngineCreateRequest.ReplicaAddressMapEntry + nil, // 34: spdkrpc.EngineListResponse.EnginesEntry + (*emptypb.Empty)(nil), // 35: google.protobuf.Empty +} +var file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_depIdxs = []int32{ + 28, // 0: spdkrpc.Lvol.children:type_name -> spdkrpc.Lvol.ChildrenEntry + 29, // 1: spdkrpc.Replica.snapshots:type_name -> spdkrpc.Replica.SnapshotsEntry + 30, // 2: spdkrpc.ReplicaListResponse.replicas:type_name -> spdkrpc.ReplicaListResponse.ReplicasEntry + 31, // 3: spdkrpc.Engine.replica_address_map:type_name -> spdkrpc.Engine.ReplicaAddressMapEntry + 32, // 4: spdkrpc.Engine.replica_mode_map:type_name -> spdkrpc.Engine.ReplicaModeMapEntry + 33, // 5: spdkrpc.EngineCreateRequest.replica_address_map:type_name -> spdkrpc.EngineCreateRequest.ReplicaAddressMapEntry + 34, // 6: spdkrpc.EngineListResponse.engines:type_name -> spdkrpc.EngineListResponse.EnginesEntry + 22, // 7: spdkrpc.VersionDetailGetReply.version:type_name -> spdkrpc.VersionOutput + 1, // 8: spdkrpc.Replica.SnapshotsEntry.value:type_name -> spdkrpc.Lvol + 2, // 9: spdkrpc.ReplicaListResponse.ReplicasEntry.value:type_name -> spdkrpc.Replica + 0, // 10: spdkrpc.Engine.ReplicaModeMapEntry.value:type_name -> spdkrpc.ReplicaMode + 13, // 11: spdkrpc.EngineListResponse.EnginesEntry.value:type_name -> spdkrpc.Engine + 3, // 12: spdkrpc.SPDKService.ReplicaCreate:input_type -> spdkrpc.ReplicaCreateRequest + 4, // 13: spdkrpc.SPDKService.ReplicaDelete:input_type -> spdkrpc.ReplicaDeleteRequest + 5, // 14: spdkrpc.SPDKService.ReplicaGet:input_type -> spdkrpc.ReplicaGetRequest + 20, // 15: spdkrpc.SPDKService.ReplicaSnapshotCreate:input_type -> spdkrpc.SnapshotRequest + 20, // 16: spdkrpc.SPDKService.ReplicaSnapshotDelete:input_type -> spdkrpc.SnapshotRequest + 20, // 17: spdkrpc.SPDKService.ReplicaSnapshotRevert:input_type -> spdkrpc.SnapshotRequest + 35, // 18: spdkrpc.SPDKService.ReplicaList:input_type -> google.protobuf.Empty + 35, // 19: spdkrpc.SPDKService.ReplicaWatch:input_type -> google.protobuf.Empty + 7, // 20: spdkrpc.SPDKService.ReplicaRebuildingSrcStart:input_type -> spdkrpc.ReplicaRebuildingSrcStartRequest + 8, // 21: spdkrpc.SPDKService.ReplicaRebuildingSrcFinish:input_type -> spdkrpc.ReplicaRebuildingSrcFinishRequest + 9, // 22: spdkrpc.SPDKService.ReplicaSnapshotShallowCopy:input_type -> spdkrpc.ReplicaSnapshotShallowCopyRequest + 10, // 23: spdkrpc.SPDKService.ReplicaRebuildingDstStart:input_type -> spdkrpc.ReplicaRebuildingDstStartRequest + 12, // 24: spdkrpc.SPDKService.ReplicaRebuildingDstFinish:input_type -> spdkrpc.ReplicaRebuildingDstFinishRequest + 20, // 25: spdkrpc.SPDKService.ReplicaRebuildingDstSnapshotCreate:input_type -> spdkrpc.SnapshotRequest + 14, // 26: spdkrpc.SPDKService.EngineCreate:input_type -> spdkrpc.EngineCreateRequest + 15, // 27: spdkrpc.SPDKService.EngineDelete:input_type -> spdkrpc.EngineDeleteRequest + 16, // 28: spdkrpc.SPDKService.EngineGet:input_type -> spdkrpc.EngineGetRequest + 20, // 29: spdkrpc.SPDKService.EngineSnapshotCreate:input_type -> spdkrpc.SnapshotRequest + 20, // 30: spdkrpc.SPDKService.EngineSnapshotDelete:input_type -> spdkrpc.SnapshotRequest + 20, // 31: spdkrpc.SPDKService.EngineSnapshotRevert:input_type -> spdkrpc.SnapshotRequest + 35, // 32: spdkrpc.SPDKService.EngineList:input_type -> google.protobuf.Empty + 35, // 33: spdkrpc.SPDKService.EngineWatch:input_type -> google.protobuf.Empty + 18, // 34: spdkrpc.SPDKService.EngineReplicaAdd:input_type -> spdkrpc.EngineReplicaAddRequest + 19, // 35: spdkrpc.SPDKService.EngineReplicaDelete:input_type -> spdkrpc.EngineReplicaDeleteRequest + 25, // 36: spdkrpc.SPDKService.DiskCreate:input_type -> spdkrpc.DiskCreateRequest + 27, // 37: spdkrpc.SPDKService.DiskDelete:input_type -> spdkrpc.DiskDeleteRequest + 26, // 38: spdkrpc.SPDKService.DiskGet:input_type -> spdkrpc.DiskGetRequest + 35, // 39: spdkrpc.SPDKService.VersionDetailGet:input_type -> google.protobuf.Empty + 2, // 40: spdkrpc.SPDKService.ReplicaCreate:output_type -> spdkrpc.Replica + 35, // 41: spdkrpc.SPDKService.ReplicaDelete:output_type -> google.protobuf.Empty + 2, // 42: spdkrpc.SPDKService.ReplicaGet:output_type -> spdkrpc.Replica + 2, // 43: spdkrpc.SPDKService.ReplicaSnapshotCreate:output_type -> spdkrpc.Replica + 35, // 44: spdkrpc.SPDKService.ReplicaSnapshotDelete:output_type -> google.protobuf.Empty + 35, // 45: spdkrpc.SPDKService.ReplicaSnapshotRevert:output_type -> google.protobuf.Empty + 6, // 46: spdkrpc.SPDKService.ReplicaList:output_type -> spdkrpc.ReplicaListResponse + 35, // 47: spdkrpc.SPDKService.ReplicaWatch:output_type -> google.protobuf.Empty + 35, // 48: spdkrpc.SPDKService.ReplicaRebuildingSrcStart:output_type -> google.protobuf.Empty + 35, // 49: spdkrpc.SPDKService.ReplicaRebuildingSrcFinish:output_type -> google.protobuf.Empty + 35, // 50: spdkrpc.SPDKService.ReplicaSnapshotShallowCopy:output_type -> google.protobuf.Empty + 11, // 51: spdkrpc.SPDKService.ReplicaRebuildingDstStart:output_type -> spdkrpc.ReplicaRebuildingDstStartResponse + 35, // 52: spdkrpc.SPDKService.ReplicaRebuildingDstFinish:output_type -> google.protobuf.Empty + 35, // 53: spdkrpc.SPDKService.ReplicaRebuildingDstSnapshotCreate:output_type -> google.protobuf.Empty + 13, // 54: spdkrpc.SPDKService.EngineCreate:output_type -> spdkrpc.Engine + 35, // 55: spdkrpc.SPDKService.EngineDelete:output_type -> google.protobuf.Empty + 13, // 56: spdkrpc.SPDKService.EngineGet:output_type -> spdkrpc.Engine + 21, // 57: spdkrpc.SPDKService.EngineSnapshotCreate:output_type -> spdkrpc.SnapshotResponse + 35, // 58: spdkrpc.SPDKService.EngineSnapshotDelete:output_type -> google.protobuf.Empty + 35, // 59: spdkrpc.SPDKService.EngineSnapshotRevert:output_type -> google.protobuf.Empty + 17, // 60: spdkrpc.SPDKService.EngineList:output_type -> spdkrpc.EngineListResponse + 35, // 61: spdkrpc.SPDKService.EngineWatch:output_type -> google.protobuf.Empty + 35, // 62: spdkrpc.SPDKService.EngineReplicaAdd:output_type -> google.protobuf.Empty + 35, // 63: spdkrpc.SPDKService.EngineReplicaDelete:output_type -> google.protobuf.Empty + 24, // 64: spdkrpc.SPDKService.DiskCreate:output_type -> spdkrpc.Disk + 35, // 65: spdkrpc.SPDKService.DiskDelete:output_type -> google.protobuf.Empty + 24, // 66: spdkrpc.SPDKService.DiskGet:output_type -> spdkrpc.Disk + 23, // 67: spdkrpc.SPDKService.VersionDetailGet:output_type -> spdkrpc.VersionDetailGetReply + 40, // [40:68] is the sub-list for method output_type + 12, // [12:40] is the sub-list for method input_type + 12, // [12:12] is the sub-list for extension type_name + 12, // [12:12] is the sub-list for extension extendee + 0, // [0:12] is the sub-list for field type_name +} + +func init() { file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_init() } +func file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_init() { + if File_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Lvol); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Replica); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaRebuildingSrcStartRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaRebuildingSrcFinishRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaSnapshotShallowCopyRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaRebuildingDstStartRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaRebuildingDstStartResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplicaRebuildingDstFinishRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Engine); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineListResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaAddRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EngineReplicaDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SnapshotRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SnapshotResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VersionOutput); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VersionDetailGetReply); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Disk); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskCreateRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskGetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DiskDeleteRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDesc, + NumEnums: 1, + NumMessages: 34, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_goTypes, + DependencyIndexes: file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_depIdxs, + EnumInfos: file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_enumTypes, + MessageInfos: file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_msgTypes, + }.Build() + File_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto = out.File + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_rawDesc = nil + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_goTypes = nil + file_github_com_longhorn_longhorn_spdk_engine_proto_spdkrpc_spdk_proto_depIdxs = nil } // Reference imports to suppress errors if they are not otherwise used. var _ context.Context -var _ grpc.ClientConn +var _ grpc.ClientConnInterface // This is a compile-time assertion to ensure that this generated file // is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 +const _ = grpc.SupportPackageIsVersion6 // SPDKServiceClient is the client API for SPDKService service. // // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. type SPDKServiceClient interface { ReplicaCreate(ctx context.Context, in *ReplicaCreateRequest, opts ...grpc.CallOption) (*Replica, error) - ReplicaDelete(ctx context.Context, in *ReplicaDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) + ReplicaDelete(ctx context.Context, in *ReplicaDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) ReplicaGet(ctx context.Context, in *ReplicaGetRequest, opts ...grpc.CallOption) (*Replica, error) ReplicaSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*Replica, error) - ReplicaSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ReplicaListResponse, error) - ReplicaWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (SPDKService_ReplicaWatchClient, error) - ReplicaRebuildingSrcStart(ctx context.Context, in *ReplicaRebuildingSrcStartRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaRebuildingSrcFinish(ctx context.Context, in *ReplicaRebuildingSrcFinishRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaSnapshotShallowCopy(ctx context.Context, in *ReplicaSnapshotShallowCopyRequest, opts ...grpc.CallOption) (*empty.Empty, error) + ReplicaSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaSnapshotRevert(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ReplicaListResponse, error) + ReplicaWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (SPDKService_ReplicaWatchClient, error) + ReplicaRebuildingSrcStart(ctx context.Context, in *ReplicaRebuildingSrcStartRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaRebuildingSrcFinish(ctx context.Context, in *ReplicaRebuildingSrcFinishRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaSnapshotShallowCopy(ctx context.Context, in *ReplicaSnapshotShallowCopyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) ReplicaRebuildingDstStart(ctx context.Context, in *ReplicaRebuildingDstStartRequest, opts ...grpc.CallOption) (*ReplicaRebuildingDstStartResponse, error) - ReplicaRebuildingDstFinish(ctx context.Context, in *ReplicaRebuildingDstFinishRequest, opts ...grpc.CallOption) (*empty.Empty, error) - ReplicaRebuildingDstSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) + ReplicaRebuildingDstFinish(ctx context.Context, in *ReplicaRebuildingDstFinishRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + ReplicaRebuildingDstSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) EngineCreate(ctx context.Context, in *EngineCreateRequest, opts ...grpc.CallOption) (*Engine, error) - EngineDelete(ctx context.Context, in *EngineDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) + EngineDelete(ctx context.Context, in *EngineDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) EngineGet(ctx context.Context, in *EngineGetRequest, opts ...grpc.CallOption) (*Engine, error) - EngineSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*Engine, error) - EngineSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) - EngineList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*EngineListResponse, error) - EngineWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (SPDKService_EngineWatchClient, error) - EngineReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*empty.Empty, error) - EngineReplicaDelete(ctx context.Context, in *EngineReplicaDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) + EngineSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*SnapshotResponse, error) + EngineSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + EngineSnapshotRevert(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + EngineList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*EngineListResponse, error) + EngineWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (SPDKService_EngineWatchClient, error) + EngineReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + EngineReplicaDelete(ctx context.Context, in *EngineReplicaDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) DiskCreate(ctx context.Context, in *DiskCreateRequest, opts ...grpc.CallOption) (*Disk, error) - DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) + DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) DiskGet(ctx context.Context, in *DiskGetRequest, opts ...grpc.CallOption) (*Disk, error) - VersionDetailGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionDetailGetReply, error) + VersionDetailGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionDetailGetReply, error) } type sPDKServiceClient struct { - cc *grpc.ClientConn + cc grpc.ClientConnInterface } -func NewSPDKServiceClient(cc *grpc.ClientConn) SPDKServiceClient { +func NewSPDKServiceClient(cc grpc.ClientConnInterface) SPDKServiceClient { return &sPDKServiceClient{cc} } @@ -1830,8 +2871,8 @@ func (c *sPDKServiceClient) ReplicaCreate(ctx context.Context, in *ReplicaCreate return out, nil } -func (c *sPDKServiceClient) ReplicaDelete(ctx context.Context, in *ReplicaDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaDelete(ctx context.Context, in *ReplicaDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaDelete", in, out, opts...) if err != nil { return nil, err @@ -1857,8 +2898,8 @@ func (c *sPDKServiceClient) ReplicaSnapshotCreate(ctx context.Context, in *Snaps return out, nil } -func (c *sPDKServiceClient) ReplicaSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaSnapshotDelete", in, out, opts...) if err != nil { return nil, err @@ -1866,7 +2907,16 @@ func (c *sPDKServiceClient) ReplicaSnapshotDelete(ctx context.Context, in *Snaps return out, nil } -func (c *sPDKServiceClient) ReplicaList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ReplicaListResponse, error) { +func (c *sPDKServiceClient) ReplicaSnapshotRevert(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaSnapshotRevert", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sPDKServiceClient) ReplicaList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*ReplicaListResponse, error) { out := new(ReplicaListResponse) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaList", in, out, opts...) if err != nil { @@ -1875,7 +2925,7 @@ func (c *sPDKServiceClient) ReplicaList(ctx context.Context, in *empty.Empty, op return out, nil } -func (c *sPDKServiceClient) ReplicaWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (SPDKService_ReplicaWatchClient, error) { +func (c *sPDKServiceClient) ReplicaWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (SPDKService_ReplicaWatchClient, error) { stream, err := c.cc.NewStream(ctx, &_SPDKService_serviceDesc.Streams[0], "/spdkrpc.SPDKService/ReplicaWatch", opts...) if err != nil { return nil, err @@ -1891,7 +2941,7 @@ func (c *sPDKServiceClient) ReplicaWatch(ctx context.Context, in *empty.Empty, o } type SPDKService_ReplicaWatchClient interface { - Recv() (*empty.Empty, error) + Recv() (*emptypb.Empty, error) grpc.ClientStream } @@ -1899,16 +2949,16 @@ type sPDKServiceReplicaWatchClient struct { grpc.ClientStream } -func (x *sPDKServiceReplicaWatchClient) Recv() (*empty.Empty, error) { - m := new(empty.Empty) +func (x *sPDKServiceReplicaWatchClient) Recv() (*emptypb.Empty, error) { + m := new(emptypb.Empty) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } -func (c *sPDKServiceClient) ReplicaRebuildingSrcStart(ctx context.Context, in *ReplicaRebuildingSrcStartRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaRebuildingSrcStart(ctx context.Context, in *ReplicaRebuildingSrcStartRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaRebuildingSrcStart", in, out, opts...) if err != nil { return nil, err @@ -1916,8 +2966,8 @@ func (c *sPDKServiceClient) ReplicaRebuildingSrcStart(ctx context.Context, in *R return out, nil } -func (c *sPDKServiceClient) ReplicaRebuildingSrcFinish(ctx context.Context, in *ReplicaRebuildingSrcFinishRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaRebuildingSrcFinish(ctx context.Context, in *ReplicaRebuildingSrcFinishRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaRebuildingSrcFinish", in, out, opts...) if err != nil { return nil, err @@ -1925,8 +2975,8 @@ func (c *sPDKServiceClient) ReplicaRebuildingSrcFinish(ctx context.Context, in * return out, nil } -func (c *sPDKServiceClient) ReplicaSnapshotShallowCopy(ctx context.Context, in *ReplicaSnapshotShallowCopyRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaSnapshotShallowCopy(ctx context.Context, in *ReplicaSnapshotShallowCopyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaSnapshotShallowCopy", in, out, opts...) if err != nil { return nil, err @@ -1943,8 +2993,8 @@ func (c *sPDKServiceClient) ReplicaRebuildingDstStart(ctx context.Context, in *R return out, nil } -func (c *sPDKServiceClient) ReplicaRebuildingDstFinish(ctx context.Context, in *ReplicaRebuildingDstFinishRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaRebuildingDstFinish(ctx context.Context, in *ReplicaRebuildingDstFinishRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaRebuildingDstFinish", in, out, opts...) if err != nil { return nil, err @@ -1952,8 +3002,8 @@ func (c *sPDKServiceClient) ReplicaRebuildingDstFinish(ctx context.Context, in * return out, nil } -func (c *sPDKServiceClient) ReplicaRebuildingDstSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) ReplicaRebuildingDstSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/ReplicaRebuildingDstSnapshotCreate", in, out, opts...) if err != nil { return nil, err @@ -1970,8 +3020,8 @@ func (c *sPDKServiceClient) EngineCreate(ctx context.Context, in *EngineCreateRe return out, nil } -func (c *sPDKServiceClient) EngineDelete(ctx context.Context, in *EngineDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) EngineDelete(ctx context.Context, in *EngineDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineDelete", in, out, opts...) if err != nil { return nil, err @@ -1988,8 +3038,8 @@ func (c *sPDKServiceClient) EngineGet(ctx context.Context, in *EngineGetRequest, return out, nil } -func (c *sPDKServiceClient) EngineSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*Engine, error) { - out := new(Engine) +func (c *sPDKServiceClient) EngineSnapshotCreate(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*SnapshotResponse, error) { + out := new(SnapshotResponse) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineSnapshotCreate", in, out, opts...) if err != nil { return nil, err @@ -1997,8 +3047,8 @@ func (c *sPDKServiceClient) EngineSnapshotCreate(ctx context.Context, in *Snapsh return out, nil } -func (c *sPDKServiceClient) EngineSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) EngineSnapshotDelete(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineSnapshotDelete", in, out, opts...) if err != nil { return nil, err @@ -2006,7 +3056,16 @@ func (c *sPDKServiceClient) EngineSnapshotDelete(ctx context.Context, in *Snapsh return out, nil } -func (c *sPDKServiceClient) EngineList(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*EngineListResponse, error) { +func (c *sPDKServiceClient) EngineSnapshotRevert(ctx context.Context, in *SnapshotRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineSnapshotRevert", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *sPDKServiceClient) EngineList(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*EngineListResponse, error) { out := new(EngineListResponse) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineList", in, out, opts...) if err != nil { @@ -2015,7 +3074,7 @@ func (c *sPDKServiceClient) EngineList(ctx context.Context, in *empty.Empty, opt return out, nil } -func (c *sPDKServiceClient) EngineWatch(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (SPDKService_EngineWatchClient, error) { +func (c *sPDKServiceClient) EngineWatch(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (SPDKService_EngineWatchClient, error) { stream, err := c.cc.NewStream(ctx, &_SPDKService_serviceDesc.Streams[1], "/spdkrpc.SPDKService/EngineWatch", opts...) if err != nil { return nil, err @@ -2031,7 +3090,7 @@ func (c *sPDKServiceClient) EngineWatch(ctx context.Context, in *empty.Empty, op } type SPDKService_EngineWatchClient interface { - Recv() (*empty.Empty, error) + Recv() (*emptypb.Empty, error) grpc.ClientStream } @@ -2039,16 +3098,16 @@ type sPDKServiceEngineWatchClient struct { grpc.ClientStream } -func (x *sPDKServiceEngineWatchClient) Recv() (*empty.Empty, error) { - m := new(empty.Empty) +func (x *sPDKServiceEngineWatchClient) Recv() (*emptypb.Empty, error) { + m := new(emptypb.Empty) if err := x.ClientStream.RecvMsg(m); err != nil { return nil, err } return m, nil } -func (c *sPDKServiceClient) EngineReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) EngineReplicaAdd(ctx context.Context, in *EngineReplicaAddRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineReplicaAdd", in, out, opts...) if err != nil { return nil, err @@ -2056,8 +3115,8 @@ func (c *sPDKServiceClient) EngineReplicaAdd(ctx context.Context, in *EngineRepl return out, nil } -func (c *sPDKServiceClient) EngineReplicaDelete(ctx context.Context, in *EngineReplicaDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) EngineReplicaDelete(ctx context.Context, in *EngineReplicaDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/EngineReplicaDelete", in, out, opts...) if err != nil { return nil, err @@ -2074,8 +3133,8 @@ func (c *sPDKServiceClient) DiskCreate(ctx context.Context, in *DiskCreateReques return out, nil } -func (c *sPDKServiceClient) DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*empty.Empty, error) { - out := new(empty.Empty) +func (c *sPDKServiceClient) DiskDelete(ctx context.Context, in *DiskDeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/DiskDelete", in, out, opts...) if err != nil { return nil, err @@ -2092,7 +3151,7 @@ func (c *sPDKServiceClient) DiskGet(ctx context.Context, in *DiskGetRequest, opt return out, nil } -func (c *sPDKServiceClient) VersionDetailGet(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionDetailGetReply, error) { +func (c *sPDKServiceClient) VersionDetailGet(ctx context.Context, in *emptypb.Empty, opts ...grpc.CallOption) (*VersionDetailGetReply, error) { out := new(VersionDetailGetReply) err := c.cc.Invoke(ctx, "/spdkrpc.SPDKService/VersionDetailGet", in, out, opts...) if err != nil { @@ -2104,113 +3163,121 @@ func (c *sPDKServiceClient) VersionDetailGet(ctx context.Context, in *empty.Empt // SPDKServiceServer is the server API for SPDKService service. type SPDKServiceServer interface { ReplicaCreate(context.Context, *ReplicaCreateRequest) (*Replica, error) - ReplicaDelete(context.Context, *ReplicaDeleteRequest) (*empty.Empty, error) + ReplicaDelete(context.Context, *ReplicaDeleteRequest) (*emptypb.Empty, error) ReplicaGet(context.Context, *ReplicaGetRequest) (*Replica, error) ReplicaSnapshotCreate(context.Context, *SnapshotRequest) (*Replica, error) - ReplicaSnapshotDelete(context.Context, *SnapshotRequest) (*empty.Empty, error) - ReplicaList(context.Context, *empty.Empty) (*ReplicaListResponse, error) - ReplicaWatch(*empty.Empty, SPDKService_ReplicaWatchServer) error - ReplicaRebuildingSrcStart(context.Context, *ReplicaRebuildingSrcStartRequest) (*empty.Empty, error) - ReplicaRebuildingSrcFinish(context.Context, *ReplicaRebuildingSrcFinishRequest) (*empty.Empty, error) - ReplicaSnapshotShallowCopy(context.Context, *ReplicaSnapshotShallowCopyRequest) (*empty.Empty, error) + ReplicaSnapshotDelete(context.Context, *SnapshotRequest) (*emptypb.Empty, error) + ReplicaSnapshotRevert(context.Context, *SnapshotRequest) (*emptypb.Empty, error) + ReplicaList(context.Context, *emptypb.Empty) (*ReplicaListResponse, error) + ReplicaWatch(*emptypb.Empty, SPDKService_ReplicaWatchServer) error + ReplicaRebuildingSrcStart(context.Context, *ReplicaRebuildingSrcStartRequest) (*emptypb.Empty, error) + ReplicaRebuildingSrcFinish(context.Context, *ReplicaRebuildingSrcFinishRequest) (*emptypb.Empty, error) + ReplicaSnapshotShallowCopy(context.Context, *ReplicaSnapshotShallowCopyRequest) (*emptypb.Empty, error) ReplicaRebuildingDstStart(context.Context, *ReplicaRebuildingDstStartRequest) (*ReplicaRebuildingDstStartResponse, error) - ReplicaRebuildingDstFinish(context.Context, *ReplicaRebuildingDstFinishRequest) (*empty.Empty, error) - ReplicaRebuildingDstSnapshotCreate(context.Context, *SnapshotRequest) (*empty.Empty, error) + ReplicaRebuildingDstFinish(context.Context, *ReplicaRebuildingDstFinishRequest) (*emptypb.Empty, error) + ReplicaRebuildingDstSnapshotCreate(context.Context, *SnapshotRequest) (*emptypb.Empty, error) EngineCreate(context.Context, *EngineCreateRequest) (*Engine, error) - EngineDelete(context.Context, *EngineDeleteRequest) (*empty.Empty, error) + EngineDelete(context.Context, *EngineDeleteRequest) (*emptypb.Empty, error) EngineGet(context.Context, *EngineGetRequest) (*Engine, error) - EngineSnapshotCreate(context.Context, *SnapshotRequest) (*Engine, error) - EngineSnapshotDelete(context.Context, *SnapshotRequest) (*empty.Empty, error) - EngineList(context.Context, *empty.Empty) (*EngineListResponse, error) - EngineWatch(*empty.Empty, SPDKService_EngineWatchServer) error - EngineReplicaAdd(context.Context, *EngineReplicaAddRequest) (*empty.Empty, error) - EngineReplicaDelete(context.Context, *EngineReplicaDeleteRequest) (*empty.Empty, error) + EngineSnapshotCreate(context.Context, *SnapshotRequest) (*SnapshotResponse, error) + EngineSnapshotDelete(context.Context, *SnapshotRequest) (*emptypb.Empty, error) + EngineSnapshotRevert(context.Context, *SnapshotRequest) (*emptypb.Empty, error) + EngineList(context.Context, *emptypb.Empty) (*EngineListResponse, error) + EngineWatch(*emptypb.Empty, SPDKService_EngineWatchServer) error + EngineReplicaAdd(context.Context, *EngineReplicaAddRequest) (*emptypb.Empty, error) + EngineReplicaDelete(context.Context, *EngineReplicaDeleteRequest) (*emptypb.Empty, error) DiskCreate(context.Context, *DiskCreateRequest) (*Disk, error) - DiskDelete(context.Context, *DiskDeleteRequest) (*empty.Empty, error) + DiskDelete(context.Context, *DiskDeleteRequest) (*emptypb.Empty, error) DiskGet(context.Context, *DiskGetRequest) (*Disk, error) - VersionDetailGet(context.Context, *empty.Empty) (*VersionDetailGetReply, error) + VersionDetailGet(context.Context, *emptypb.Empty) (*VersionDetailGetReply, error) } // UnimplementedSPDKServiceServer can be embedded to have forward compatible implementations. type UnimplementedSPDKServiceServer struct { } -func (*UnimplementedSPDKServiceServer) ReplicaCreate(ctx context.Context, req *ReplicaCreateRequest) (*Replica, error) { +func (*UnimplementedSPDKServiceServer) ReplicaCreate(context.Context, *ReplicaCreateRequest) (*Replica, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaCreate not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaDelete(ctx context.Context, req *ReplicaDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaDelete(context.Context, *ReplicaDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaDelete not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaGet(ctx context.Context, req *ReplicaGetRequest) (*Replica, error) { +func (*UnimplementedSPDKServiceServer) ReplicaGet(context.Context, *ReplicaGetRequest) (*Replica, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaGet not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaSnapshotCreate(ctx context.Context, req *SnapshotRequest) (*Replica, error) { +func (*UnimplementedSPDKServiceServer) ReplicaSnapshotCreate(context.Context, *SnapshotRequest) (*Replica, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaSnapshotCreate not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaSnapshotDelete(ctx context.Context, req *SnapshotRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaSnapshotDelete(context.Context, *SnapshotRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaSnapshotDelete not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaList(ctx context.Context, req *empty.Empty) (*ReplicaListResponse, error) { +func (*UnimplementedSPDKServiceServer) ReplicaSnapshotRevert(context.Context, *SnapshotRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReplicaSnapshotRevert not implemented") +} +func (*UnimplementedSPDKServiceServer) ReplicaList(context.Context, *emptypb.Empty) (*ReplicaListResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaList not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaWatch(req *empty.Empty, srv SPDKService_ReplicaWatchServer) error { +func (*UnimplementedSPDKServiceServer) ReplicaWatch(*emptypb.Empty, SPDKService_ReplicaWatchServer) error { return status.Errorf(codes.Unimplemented, "method ReplicaWatch not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaRebuildingSrcStart(ctx context.Context, req *ReplicaRebuildingSrcStartRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaRebuildingSrcStart(context.Context, *ReplicaRebuildingSrcStartRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingSrcStart not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaRebuildingSrcFinish(ctx context.Context, req *ReplicaRebuildingSrcFinishRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaRebuildingSrcFinish(context.Context, *ReplicaRebuildingSrcFinishRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingSrcFinish not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaSnapshotShallowCopy(ctx context.Context, req *ReplicaSnapshotShallowCopyRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaSnapshotShallowCopy(context.Context, *ReplicaSnapshotShallowCopyRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaSnapshotShallowCopy not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstStart(ctx context.Context, req *ReplicaRebuildingDstStartRequest) (*ReplicaRebuildingDstStartResponse, error) { +func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstStart(context.Context, *ReplicaRebuildingDstStartRequest) (*ReplicaRebuildingDstStartResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingDstStart not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstFinish(ctx context.Context, req *ReplicaRebuildingDstFinishRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstFinish(context.Context, *ReplicaRebuildingDstFinishRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingDstFinish not implemented") } -func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstSnapshotCreate(ctx context.Context, req *SnapshotRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) ReplicaRebuildingDstSnapshotCreate(context.Context, *SnapshotRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method ReplicaRebuildingDstSnapshotCreate not implemented") } -func (*UnimplementedSPDKServiceServer) EngineCreate(ctx context.Context, req *EngineCreateRequest) (*Engine, error) { +func (*UnimplementedSPDKServiceServer) EngineCreate(context.Context, *EngineCreateRequest) (*Engine, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineCreate not implemented") } -func (*UnimplementedSPDKServiceServer) EngineDelete(ctx context.Context, req *EngineDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) EngineDelete(context.Context, *EngineDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineDelete not implemented") } -func (*UnimplementedSPDKServiceServer) EngineGet(ctx context.Context, req *EngineGetRequest) (*Engine, error) { +func (*UnimplementedSPDKServiceServer) EngineGet(context.Context, *EngineGetRequest) (*Engine, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineGet not implemented") } -func (*UnimplementedSPDKServiceServer) EngineSnapshotCreate(ctx context.Context, req *SnapshotRequest) (*Engine, error) { +func (*UnimplementedSPDKServiceServer) EngineSnapshotCreate(context.Context, *SnapshotRequest) (*SnapshotResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineSnapshotCreate not implemented") } -func (*UnimplementedSPDKServiceServer) EngineSnapshotDelete(ctx context.Context, req *SnapshotRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) EngineSnapshotDelete(context.Context, *SnapshotRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineSnapshotDelete not implemented") } -func (*UnimplementedSPDKServiceServer) EngineList(ctx context.Context, req *empty.Empty) (*EngineListResponse, error) { +func (*UnimplementedSPDKServiceServer) EngineSnapshotRevert(context.Context, *SnapshotRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method EngineSnapshotRevert not implemented") +} +func (*UnimplementedSPDKServiceServer) EngineList(context.Context, *emptypb.Empty) (*EngineListResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineList not implemented") } -func (*UnimplementedSPDKServiceServer) EngineWatch(req *empty.Empty, srv SPDKService_EngineWatchServer) error { +func (*UnimplementedSPDKServiceServer) EngineWatch(*emptypb.Empty, SPDKService_EngineWatchServer) error { return status.Errorf(codes.Unimplemented, "method EngineWatch not implemented") } -func (*UnimplementedSPDKServiceServer) EngineReplicaAdd(ctx context.Context, req *EngineReplicaAddRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) EngineReplicaAdd(context.Context, *EngineReplicaAddRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineReplicaAdd not implemented") } -func (*UnimplementedSPDKServiceServer) EngineReplicaDelete(ctx context.Context, req *EngineReplicaDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) EngineReplicaDelete(context.Context, *EngineReplicaDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method EngineReplicaDelete not implemented") } -func (*UnimplementedSPDKServiceServer) DiskCreate(ctx context.Context, req *DiskCreateRequest) (*Disk, error) { +func (*UnimplementedSPDKServiceServer) DiskCreate(context.Context, *DiskCreateRequest) (*Disk, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskCreate not implemented") } -func (*UnimplementedSPDKServiceServer) DiskDelete(ctx context.Context, req *DiskDeleteRequest) (*empty.Empty, error) { +func (*UnimplementedSPDKServiceServer) DiskDelete(context.Context, *DiskDeleteRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskDelete not implemented") } -func (*UnimplementedSPDKServiceServer) DiskGet(ctx context.Context, req *DiskGetRequest) (*Disk, error) { +func (*UnimplementedSPDKServiceServer) DiskGet(context.Context, *DiskGetRequest) (*Disk, error) { return nil, status.Errorf(codes.Unimplemented, "method DiskGet not implemented") } -func (*UnimplementedSPDKServiceServer) VersionDetailGet(ctx context.Context, req *empty.Empty) (*VersionDetailGetReply, error) { +func (*UnimplementedSPDKServiceServer) VersionDetailGet(context.Context, *emptypb.Empty) (*VersionDetailGetReply, error) { return nil, status.Errorf(codes.Unimplemented, "method VersionDetailGet not implemented") } @@ -2308,8 +3375,26 @@ func _SPDKService_ReplicaSnapshotDelete_Handler(srv interface{}, ctx context.Con return interceptor(ctx, in, info, handler) } +func _SPDKService_ReplicaSnapshotRevert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SnapshotRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SPDKServiceServer).ReplicaSnapshotRevert(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/spdkrpc.SPDKService/ReplicaSnapshotRevert", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SPDKServiceServer).ReplicaSnapshotRevert(ctx, req.(*SnapshotRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _SPDKService_ReplicaList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -2321,13 +3406,13 @@ func _SPDKService_ReplicaList_Handler(srv interface{}, ctx context.Context, dec FullMethod: "/spdkrpc.SPDKService/ReplicaList", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SPDKServiceServer).ReplicaList(ctx, req.(*empty.Empty)) + return srv.(SPDKServiceServer).ReplicaList(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } func _SPDKService_ReplicaWatch_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(empty.Empty) + m := new(emptypb.Empty) if err := stream.RecvMsg(m); err != nil { return err } @@ -2335,7 +3420,7 @@ func _SPDKService_ReplicaWatch_Handler(srv interface{}, stream grpc.ServerStream } type SPDKService_ReplicaWatchServer interface { - Send(*empty.Empty) error + Send(*emptypb.Empty) error grpc.ServerStream } @@ -2343,7 +3428,7 @@ type sPDKServiceReplicaWatchServer struct { grpc.ServerStream } -func (x *sPDKServiceReplicaWatchServer) Send(m *empty.Empty) error { +func (x *sPDKServiceReplicaWatchServer) Send(m *emptypb.Empty) error { return x.ServerStream.SendMsg(m) } @@ -2545,8 +3630,26 @@ func _SPDKService_EngineSnapshotDelete_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } +func _SPDKService_EngineSnapshotRevert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(SnapshotRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SPDKServiceServer).EngineSnapshotRevert(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/spdkrpc.SPDKService/EngineSnapshotRevert", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SPDKServiceServer).EngineSnapshotRevert(ctx, req.(*SnapshotRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _SPDKService_EngineList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -2558,13 +3661,13 @@ func _SPDKService_EngineList_Handler(srv interface{}, ctx context.Context, dec f FullMethod: "/spdkrpc.SPDKService/EngineList", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SPDKServiceServer).EngineList(ctx, req.(*empty.Empty)) + return srv.(SPDKServiceServer).EngineList(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } func _SPDKService_EngineWatch_Handler(srv interface{}, stream grpc.ServerStream) error { - m := new(empty.Empty) + m := new(emptypb.Empty) if err := stream.RecvMsg(m); err != nil { return err } @@ -2572,7 +3675,7 @@ func _SPDKService_EngineWatch_Handler(srv interface{}, stream grpc.ServerStream) } type SPDKService_EngineWatchServer interface { - Send(*empty.Empty) error + Send(*emptypb.Empty) error grpc.ServerStream } @@ -2580,7 +3683,7 @@ type sPDKServiceEngineWatchServer struct { grpc.ServerStream } -func (x *sPDKServiceEngineWatchServer) Send(m *empty.Empty) error { +func (x *sPDKServiceEngineWatchServer) Send(m *emptypb.Empty) error { return x.ServerStream.SendMsg(m) } @@ -2675,7 +3778,7 @@ func _SPDKService_DiskGet_Handler(srv interface{}, ctx context.Context, dec func } func _SPDKService_VersionDetailGet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(empty.Empty) + in := new(emptypb.Empty) if err := dec(in); err != nil { return nil, err } @@ -2687,7 +3790,7 @@ func _SPDKService_VersionDetailGet_Handler(srv interface{}, ctx context.Context, FullMethod: "/spdkrpc.SPDKService/VersionDetailGet", } handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(SPDKServiceServer).VersionDetailGet(ctx, req.(*empty.Empty)) + return srv.(SPDKServiceServer).VersionDetailGet(ctx, req.(*emptypb.Empty)) } return interceptor(ctx, in, info, handler) } @@ -2716,6 +3819,10 @@ var _SPDKService_serviceDesc = grpc.ServiceDesc{ MethodName: "ReplicaSnapshotDelete", Handler: _SPDKService_ReplicaSnapshotDelete_Handler, }, + { + MethodName: "ReplicaSnapshotRevert", + Handler: _SPDKService_ReplicaSnapshotRevert_Handler, + }, { MethodName: "ReplicaList", Handler: _SPDKService_ReplicaList_Handler, @@ -2764,6 +3871,10 @@ var _SPDKService_serviceDesc = grpc.ServiceDesc{ MethodName: "EngineSnapshotDelete", Handler: _SPDKService_EngineSnapshotDelete_Handler, }, + { + MethodName: "EngineSnapshotRevert", + Handler: _SPDKService_EngineSnapshotRevert_Handler, + }, { MethodName: "EngineList", Handler: _SPDKService_EngineList_Handler, @@ -2805,5 +3916,5 @@ var _SPDKService_serviceDesc = grpc.ServiceDesc{ ServerStreams: true, }, }, - Metadata: "spdk.proto", + Metadata: "github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto", } diff --git a/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto b/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto index b676ad0b90..94dc5a77bd 100644 --- a/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto +++ b/vendor/github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc/spdk.proto @@ -2,6 +2,8 @@ syntax="proto3"; package spdkrpc; +option go_package = "github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc"; + import "google/protobuf/empty.proto"; service SPDKService { @@ -10,6 +12,7 @@ service SPDKService { rpc ReplicaGet(ReplicaGetRequest) returns (Replica); rpc ReplicaSnapshotCreate(SnapshotRequest) returns (Replica); rpc ReplicaSnapshotDelete(SnapshotRequest) returns (google.protobuf.Empty); + rpc ReplicaSnapshotRevert(SnapshotRequest) returns (google.protobuf.Empty); rpc ReplicaList(google.protobuf.Empty) returns (ReplicaListResponse); rpc ReplicaWatch(google.protobuf.Empty) returns (stream google.protobuf.Empty) {} rpc ReplicaRebuildingSrcStart(ReplicaRebuildingSrcStartRequest) returns (google.protobuf.Empty) {} @@ -23,8 +26,9 @@ service SPDKService { rpc EngineCreate(EngineCreateRequest) returns (Engine); rpc EngineDelete(EngineDeleteRequest) returns (google.protobuf.Empty); rpc EngineGet(EngineGetRequest) returns (Engine); - rpc EngineSnapshotCreate(SnapshotRequest) returns (Engine); + rpc EngineSnapshotCreate(SnapshotRequest) returns (SnapshotResponse); rpc EngineSnapshotDelete(SnapshotRequest) returns (google.protobuf.Empty); + rpc EngineSnapshotRevert(SnapshotRequest) returns (google.protobuf.Empty); rpc EngineList(google.protobuf.Empty) returns (EngineListResponse); rpc EngineWatch(google.protobuf.Empty) returns (stream google.protobuf.Empty) {} rpc EngineReplicaAdd(EngineReplicaAddRequest) returns (google.protobuf.Empty) {} @@ -48,17 +52,17 @@ message Lvol { message Replica { string name = 1; - string uuid = 2; - string lvs_name = 3; - string lvs_uuid = 4; - uint64 spec_size = 5; - uint64 actual_size = 6; - string ip = 7; - int32 port_start = 8; - int32 port_end = 9; - map snapshots = 10; - bool rebuilding = 11; - string state = 12; + string lvs_name = 2; + string lvs_uuid = 3; + uint64 spec_size = 4; + uint64 actual_size = 5; + string ip = 6; + int32 port_start = 7; + int32 port_end = 8; + map snapshots = 9; + bool rebuilding = 10; + string state = 11; + string error_msg = 12; } message ReplicaCreateRequest { @@ -131,6 +135,7 @@ message Engine { string frontend = 9; string endpoint = 10; string state = 11; + string error_msg = 12; } message EngineCreateRequest { @@ -171,6 +176,10 @@ message SnapshotRequest { string snapshot_name = 2; } +message SnapshotResponse { + string snapshot_name = 1; +} + message VersionOutput { string version = 1; string gitCommit = 2; diff --git a/vendor/golang.org/x/sync/errgroup/errgroup.go b/vendor/golang.org/x/sync/errgroup/errgroup.go index cbee7a4e23..b18efb743f 100644 --- a/vendor/golang.org/x/sync/errgroup/errgroup.go +++ b/vendor/golang.org/x/sync/errgroup/errgroup.go @@ -20,7 +20,7 @@ type token struct{} // A zero Group is valid, has no limit on the number of active goroutines, // and does not cancel on error. type Group struct { - cancel func() + cancel func(error) wg sync.WaitGroup @@ -43,7 +43,7 @@ func (g *Group) done() { // returns a non-nil error or the first time Wait returns, whichever occurs // first. func WithContext(ctx context.Context) (*Group, context.Context) { - ctx, cancel := context.WithCancel(ctx) + ctx, cancel := withCancelCause(ctx) return &Group{cancel: cancel}, ctx } @@ -52,7 +52,7 @@ func WithContext(ctx context.Context) (*Group, context.Context) { func (g *Group) Wait() error { g.wg.Wait() if g.cancel != nil { - g.cancel() + g.cancel(g.err) } return g.err } @@ -76,7 +76,7 @@ func (g *Group) Go(f func() error) { g.errOnce.Do(func() { g.err = err if g.cancel != nil { - g.cancel() + g.cancel(g.err) } }) } @@ -105,7 +105,7 @@ func (g *Group) TryGo(f func() error) bool { g.errOnce.Do(func() { g.err = err if g.cancel != nil { - g.cancel() + g.cancel(g.err) } }) } diff --git a/vendor/golang.org/x/sync/errgroup/go120.go b/vendor/golang.org/x/sync/errgroup/go120.go new file mode 100644 index 0000000000..7d419d3760 --- /dev/null +++ b/vendor/golang.org/x/sync/errgroup/go120.go @@ -0,0 +1,14 @@ +// Copyright 2023 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build go1.20 +// +build go1.20 + +package errgroup + +import "context" + +func withCancelCause(parent context.Context) (context.Context, func(error)) { + return context.WithCancelCause(parent) +} diff --git a/vendor/golang.org/x/sync/errgroup/pre_go120.go b/vendor/golang.org/x/sync/errgroup/pre_go120.go new file mode 100644 index 0000000000..1795c18ace --- /dev/null +++ b/vendor/golang.org/x/sync/errgroup/pre_go120.go @@ -0,0 +1,15 @@ +// Copyright 2023 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build !go1.20 +// +build !go1.20 + +package errgroup + +import "context" + +func withCancelCause(parent context.Context) (context.Context, func(error)) { + ctx, cancel := context.WithCancel(parent) + return ctx, func(error) { cancel() } +} diff --git a/vendor/google.golang.org/grpc/README.md b/vendor/google.golang.org/grpc/README.md index 0e6ae69a58..1bc92248cb 100644 --- a/vendor/google.golang.org/grpc/README.md +++ b/vendor/google.golang.org/grpc/README.md @@ -14,21 +14,14 @@ RPC framework that puts mobile and HTTP/2 first. For more information see the ## Installation -With [Go module][] support (Go 1.11+), simply add the following import +Simply add the following import to your code, and then `go [build|run|test]` +will automatically fetch the necessary dependencies: + ```go import "google.golang.org/grpc" ``` -to your code, and then `go [build|run|test]` will automatically fetch the -necessary dependencies. - -Otherwise, to install the `grpc-go` package, run the following command: - -```console -$ go get -u google.golang.org/grpc -``` - > **Note:** If you are trying to access `grpc-go` from **China**, see the > [FAQ](#FAQ) below. @@ -56,15 +49,6 @@ To build Go code, there are several options: - Set up a VPN and access google.golang.org through that. -- Without Go module support: `git clone` the repo manually: - - ```sh - git clone https://github.com/grpc/grpc-go.git $GOPATH/src/google.golang.org/grpc - ``` - - You will need to do the same for all of grpc's dependencies in `golang.org`, - e.g. `golang.org/x/net`. - - 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: @@ -76,33 +60,13 @@ To build Go code, there are several options: ``` 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](https://github.com/golang/go/issues/28652). + golang.org as well. For details, refer to [golang/go issue + #28652](https://github.com/golang/go/issues/28652). ### Compiling error, undefined: grpc.SupportPackageIsVersion -#### If you are using Go modules: - -Ensure your gRPC-Go version is `require`d at the appropriate version in -the same module containing the generated `.pb.go` files. For example, -`SupportPackageIsVersion6` needs `v1.27.0`, so in your `go.mod` file: - -```go -module - -require ( - google.golang.org/grpc v1.27.0 -) -``` - -#### If you are *not* using Go modules: - -Update the `proto` package, gRPC package, and rebuild the `.proto` files: - -```sh -go get -u github.com/golang/protobuf/{proto,protoc-gen-go} -go get -u google.golang.org/grpc -protoc --go_out=plugins=grpc:. *.proto -``` +Please update to the latest version of gRPC-Go using +`go get google.golang.org/grpc`. ### How to turn on logging @@ -121,9 +85,11 @@ possible reasons, including: 1. mis-configured transport credentials, connection failed on handshaking 1. bytes disrupted, possibly by a proxy in between 1. server shutdown - 1. Keepalive parameters caused connection shutdown, for example if you have configured - your server to terminate connections regularly to [trigger DNS lookups](https://github.com/grpc/grpc-go/issues/3170#issuecomment-552517779). - If this is the case, you may want to increase your [MaxConnectionAgeGrace](https://pkg.go.dev/google.golang.org/grpc/keepalive?tab=doc#ServerParameters), + 1. Keepalive parameters caused connection shutdown, for example if you have + configured your server to terminate connections regularly to [trigger DNS + lookups](https://github.com/grpc/grpc-go/issues/3170#issuecomment-552517779). + If this is the case, you may want to increase your + [MaxConnectionAgeGrace](https://pkg.go.dev/google.golang.org/grpc/keepalive?tab=doc#ServerParameters), to allow longer RPC calls to finish. It can be tricky to debug this because the error happens on the client side but diff --git a/vendor/google.golang.org/grpc/attributes/attributes.go b/vendor/google.golang.org/grpc/attributes/attributes.go index 3efca45914..712fef4d0f 100644 --- a/vendor/google.golang.org/grpc/attributes/attributes.go +++ b/vendor/google.golang.org/grpc/attributes/attributes.go @@ -34,26 +34,26 @@ import ( // key/value pairs. Keys must be hashable, and users should define their own // types for keys. Values should not be modified after they are added to an // Attributes or if they were received from one. If values implement 'Equal(o -// interface{}) bool', it will be called by (*Attributes).Equal to determine -// whether two values with the same key should be considered equal. +// any) bool', it will be called by (*Attributes).Equal to determine whether +// two values with the same key should be considered equal. type Attributes struct { - m map[interface{}]interface{} + m map[any]any } // New returns a new Attributes containing the key/value pair. -func New(key, value interface{}) *Attributes { - return &Attributes{m: map[interface{}]interface{}{key: value}} +func New(key, value any) *Attributes { + return &Attributes{m: map[any]any{key: value}} } // WithValue returns a new Attributes containing the previous keys and values // and the new key/value pair. If the same key appears multiple times, the // last value overwrites all previous values for that key. To remove an // existing key, use a nil value. value should not be modified later. -func (a *Attributes) WithValue(key, value interface{}) *Attributes { +func (a *Attributes) WithValue(key, value any) *Attributes { if a == nil { return New(key, value) } - n := &Attributes{m: make(map[interface{}]interface{}, len(a.m)+1)} + n := &Attributes{m: make(map[any]any, len(a.m)+1)} for k, v := range a.m { n.m[k] = v } @@ -63,20 +63,19 @@ func (a *Attributes) WithValue(key, value interface{}) *Attributes { // Value returns the value associated with these attributes for key, or nil if // no value is associated with key. The returned value should not be modified. -func (a *Attributes) Value(key interface{}) interface{} { +func (a *Attributes) Value(key any) any { if a == nil { return nil } return a.m[key] } -// Equal returns whether a and o are equivalent. If 'Equal(o interface{}) -// bool' is implemented for a value in the attributes, it is called to -// determine if the value matches the one stored in the other attributes. If -// Equal is not implemented, standard equality is used to determine if the two -// values are equal. Note that some types (e.g. maps) aren't comparable by -// default, so they must be wrapped in a struct, or in an alias type, with Equal -// defined. +// Equal returns whether a and o are equivalent. If 'Equal(o any) bool' is +// implemented for a value in the attributes, it is called to determine if the +// value matches the one stored in the other attributes. If Equal is not +// implemented, standard equality is used to determine if the two values are +// equal. Note that some types (e.g. maps) aren't comparable by default, so +// they must be wrapped in a struct, or in an alias type, with Equal defined. func (a *Attributes) Equal(o *Attributes) bool { if a == nil && o == nil { return true @@ -93,7 +92,7 @@ func (a *Attributes) Equal(o *Attributes) bool { // o missing element of a return false } - if eq, ok := v.(interface{ Equal(o interface{}) bool }); ok { + if eq, ok := v.(interface{ Equal(o any) bool }); ok { if !eq.Equal(ov) { return false } @@ -112,19 +111,31 @@ func (a *Attributes) String() string { sb.WriteString("{") first := true for k, v := range a.m { - var key, val string - if str, ok := k.(interface{ String() string }); ok { - key = str.String() - } - if str, ok := v.(interface{ String() string }); ok { - val = str.String() - } if !first { sb.WriteString(", ") } - sb.WriteString(fmt.Sprintf("%q: %q, ", key, val)) + sb.WriteString(fmt.Sprintf("%q: %q ", str(k), str(v))) first = false } sb.WriteString("}") return sb.String() } + +func str(x any) string { + if v, ok := x.(fmt.Stringer); ok { + return v.String() + } else if v, ok := x.(string); ok { + return v + } + return fmt.Sprintf("<%p>", x) +} + +// MarshalJSON helps implement the json.Marshaler interface, thereby rendering +// the Attributes correctly when printing (via pretty.JSON) structs containing +// Attributes as fields. +// +// Is it impossible to unmarshal attributes from a JSON representation and this +// method is meant only for debugging purposes. +func (a *Attributes) MarshalJSON() ([]byte, error) { + return []byte(a.String()), nil +} diff --git a/vendor/google.golang.org/grpc/balancer/balancer.go b/vendor/google.golang.org/grpc/balancer/balancer.go index 8f00523c0e..b6377f445a 100644 --- a/vendor/google.golang.org/grpc/balancer/balancer.go +++ b/vendor/google.golang.org/grpc/balancer/balancer.go @@ -105,8 +105,8 @@ type SubConn interface { // // This will trigger a state transition for the SubConn. // - // Deprecated: This method is now part of the ClientConn interface and will - // eventually be removed from here. + // Deprecated: this method will be removed. Create new SubConns for new + // addresses instead. UpdateAddresses([]resolver.Address) // Connect starts the connecting for this SubConn. Connect() @@ -115,6 +115,13 @@ type SubConn interface { // creates a new one and returns it. Returns a close function which must // be called when the Producer is no longer needed. GetOrBuildProducer(ProducerBuilder) (p Producer, close func()) + // Shutdown shuts down the SubConn gracefully. Any started RPCs will be + // allowed to complete. No future calls should be made on the SubConn. + // One final state update will be delivered to the StateListener (or + // UpdateSubConnState; deprecated) with ConnectivityState of Shutdown to + // indicate the shutdown operation. This may be delivered before + // in-progress RPCs are complete and the actual connection is closed. + Shutdown() } // NewSubConnOptions contains options to create new SubConn. @@ -129,6 +136,11 @@ type NewSubConnOptions struct { // HealthCheckEnabled indicates whether health check service should be // enabled on this SubConn HealthCheckEnabled bool + // StateListener is called when the state of the subconn changes. If nil, + // Balancer.UpdateSubConnState will be called instead. Will never be + // invoked until after Connect() is called on the SubConn created with + // these options. + StateListener func(SubConnState) } // State contains the balancer's state relevant to the gRPC ClientConn. @@ -150,16 +162,24 @@ type ClientConn interface { // NewSubConn is called by balancer to create a new SubConn. // It doesn't block and wait for the connections to be established. // Behaviors of the SubConn can be controlled by options. + // + // Deprecated: please be aware that in a future version, SubConns will only + // support one address per SubConn. NewSubConn([]resolver.Address, NewSubConnOptions) (SubConn, error) // RemoveSubConn removes the SubConn from ClientConn. // The SubConn will be shutdown. + // + // Deprecated: use SubConn.Shutdown instead. RemoveSubConn(SubConn) // UpdateAddresses updates the addresses used in the passed in SubConn. // gRPC checks if the currently connected address is still in the new list. // If so, the connection will be kept. Else, the connection will be // gracefully closed, and a new connection will be created. // - // This will trigger a state transition for the SubConn. + // This may trigger a state transition for the SubConn. + // + // Deprecated: this method will be removed. Create new SubConns for new + // addresses instead. UpdateAddresses(SubConn, []resolver.Address) // UpdateState notifies gRPC that the balancer's internal state has @@ -250,7 +270,7 @@ type DoneInfo struct { // trailing metadata. // // The only supported type now is *orca_v3.LoadReport. - ServerLoad interface{} + ServerLoad any } var ( @@ -343,9 +363,13 @@ type Balancer interface { ResolverError(error) // UpdateSubConnState is called by gRPC when the state of a SubConn // changes. + // + // Deprecated: Use NewSubConnOptions.StateListener when creating the + // SubConn instead. UpdateSubConnState(SubConn, SubConnState) - // Close closes the balancer. The balancer is not required to call - // ClientConn.RemoveSubConn for its existing SubConns. + // Close closes the balancer. The balancer is not currently required to + // call SubConn.Shutdown for its existing SubConns; however, this will be + // required in a future release, so it is recommended. Close() } @@ -390,15 +414,14 @@ var ErrBadResolverState = errors.New("bad resolver state") type ProducerBuilder interface { // Build creates a Producer. The first parameter is always a // grpc.ClientConnInterface (a type to allow creating RPCs/streams on the - // associated SubConn), but is declared as interface{} to avoid a - // dependency cycle. Should also return a close function that will be - // called when all references to the Producer have been given up. - Build(grpcClientConnInterface interface{}) (p Producer, close func()) + // associated SubConn), but is declared as `any` to avoid a dependency + // cycle. Should also return a close function that will be called when all + // references to the Producer have been given up. + Build(grpcClientConnInterface any) (p Producer, close func()) } // A Producer is a type shared among potentially many consumers. It is // associated with a SubConn, and an implementation will typically contain // other methods to provide additional functionality, e.g. configuration or // subscription registration. -type Producer interface { -} +type Producer any diff --git a/vendor/google.golang.org/grpc/balancer/base/balancer.go b/vendor/google.golang.org/grpc/balancer/base/balancer.go index 3929c26d31..a7f1eeec8e 100644 --- a/vendor/google.golang.org/grpc/balancer/base/balancer.go +++ b/vendor/google.golang.org/grpc/balancer/base/balancer.go @@ -105,7 +105,12 @@ func (b *baseBalancer) UpdateClientConnState(s balancer.ClientConnState) error { addrsSet.Set(a, nil) if _, ok := b.subConns.Get(a); !ok { // a is a new address (not existing in b.subConns). - sc, err := b.cc.NewSubConn([]resolver.Address{a}, balancer.NewSubConnOptions{HealthCheckEnabled: b.config.HealthCheck}) + var sc balancer.SubConn + opts := balancer.NewSubConnOptions{ + HealthCheckEnabled: b.config.HealthCheck, + StateListener: func(scs balancer.SubConnState) { b.updateSubConnState(sc, scs) }, + } + sc, err := b.cc.NewSubConn([]resolver.Address{a}, opts) if err != nil { logger.Warningf("base.baseBalancer: failed to create new SubConn: %v", err) continue @@ -121,10 +126,10 @@ func (b *baseBalancer) UpdateClientConnState(s balancer.ClientConnState) error { sc := sci.(balancer.SubConn) // a was removed by resolver. if _, ok := addrsSet.Get(a); !ok { - b.cc.RemoveSubConn(sc) + sc.Shutdown() b.subConns.Delete(a) // Keep the state of this sc in b.scStates until sc's state becomes Shutdown. - // The entry will be deleted in UpdateSubConnState. + // The entry will be deleted in updateSubConnState. } } // If resolver state contains no addresses, return an error so ClientConn @@ -177,7 +182,12 @@ func (b *baseBalancer) regeneratePicker() { b.picker = b.pickerBuilder.Build(PickerBuildInfo{ReadySCs: readySCs}) } +// UpdateSubConnState is a nop because a StateListener is always set in NewSubConn. func (b *baseBalancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) { + logger.Errorf("base.baseBalancer: UpdateSubConnState(%v, %+v) called unexpectedly", sc, state) +} + +func (b *baseBalancer) updateSubConnState(sc balancer.SubConn, state balancer.SubConnState) { s := state.ConnectivityState if logger.V(2) { logger.Infof("base.baseBalancer: handle SubConn state change: %p, %v", sc, s) @@ -204,8 +214,8 @@ func (b *baseBalancer) UpdateSubConnState(sc balancer.SubConn, state balancer.Su case connectivity.Idle: sc.Connect() case connectivity.Shutdown: - // When an address was removed by resolver, b called RemoveSubConn but - // kept the sc's state in scStates. Remove state for this sc here. + // When an address was removed by resolver, b called Shutdown but kept + // the sc's state in scStates. Remove state for this sc here. delete(b.scStates, sc) case connectivity.TransientFailure: // Save error to be reported via picker. @@ -226,7 +236,7 @@ func (b *baseBalancer) UpdateSubConnState(sc balancer.SubConn, state balancer.Su } // Close is a nop because base balancer doesn't have internal state to clean up, -// and it doesn't need to call RemoveSubConn for the SubConns. +// and it doesn't need to call Shutdown for the SubConns. func (b *baseBalancer) Close() { } diff --git a/vendor/google.golang.org/grpc/balancer_conn_wrappers.go b/vendor/google.golang.org/grpc/balancer_conn_wrappers.go index 04b9ad4116..a4411c22bf 100644 --- a/vendor/google.golang.org/grpc/balancer_conn_wrappers.go +++ b/vendor/google.golang.org/grpc/balancer_conn_wrappers.go @@ -99,20 +99,6 @@ func (ccb *ccBalancerWrapper) updateClientConnState(ccs *balancer.ClientConnStat // lock held. But the lock guards only the scheduling part. The actual // callback is called asynchronously without the lock being held. ok := ccb.serializer.Schedule(func(_ context.Context) { - // If the addresses specified in the update contain addresses of type - // "grpclb" and the selected LB policy is not "grpclb", these addresses - // will be filtered out and ccs will be modified with the updated - // address list. - if ccb.curBalancerName != grpclbName { - var addrs []resolver.Address - for _, addr := range ccs.ResolverState.Addresses { - if addr.Type == resolver.GRPCLB { - continue - } - addrs = append(addrs, addr) - } - ccs.ResolverState.Addresses = addrs - } errCh <- ccb.balancer.UpdateClientConnState(*ccs) }) if !ok { @@ -139,7 +125,9 @@ func (ccb *ccBalancerWrapper) updateClientConnState(ccs *balancer.ClientConnStat func (ccb *ccBalancerWrapper) updateSubConnState(sc balancer.SubConn, s connectivity.State, err error) { ccb.mu.Lock() ccb.serializer.Schedule(func(_ context.Context) { - ccb.balancer.UpdateSubConnState(sc, balancer.SubConnState{ConnectivityState: s, ConnectionError: err}) + // Even though it is optional for balancers, gracefulswitch ensures + // opts.StateListener is set, so this cannot ever be nil. + sc.(*acBalancerWrapper).stateListener(balancer.SubConnState{ConnectivityState: s, ConnectionError: err}) }) ccb.mu.Unlock() } @@ -221,7 +209,7 @@ func (ccb *ccBalancerWrapper) closeBalancer(m ccbMode) { } ccb.mode = m - done := ccb.serializer.Done + done := ccb.serializer.Done() b := ccb.balancer ok := ccb.serializer.Schedule(func(_ context.Context) { // Close the serializer to ensure that no more calls from gRPC are sent @@ -238,11 +226,9 @@ func (ccb *ccBalancerWrapper) closeBalancer(m ccbMode) { } ccb.mu.Unlock() - // Give enqueued callbacks a chance to finish. + // Give enqueued callbacks a chance to finish before closing the balancer. <-done - // Spawn a goroutine to close the balancer (since it may block trying to - // cleanup all allocated resources) and return early. - go b.Close() + b.Close() } // exitIdleMode is invoked by grpc when the channel exits idle mode either @@ -314,29 +300,19 @@ func (ccb *ccBalancerWrapper) NewSubConn(addrs []resolver.Address, opts balancer channelz.Warningf(logger, ccb.cc.channelzID, "acBalancerWrapper: NewSubConn: failed to newAddrConn: %v", err) return nil, err } - acbw := &acBalancerWrapper{ac: ac, producers: make(map[balancer.ProducerBuilder]*refCountedProducer)} + acbw := &acBalancerWrapper{ + ccb: ccb, + ac: ac, + producers: make(map[balancer.ProducerBuilder]*refCountedProducer), + stateListener: opts.StateListener, + } ac.acbw = acbw return acbw, nil } func (ccb *ccBalancerWrapper) RemoveSubConn(sc balancer.SubConn) { - if ccb.isIdleOrClosed() { - // It it safe to ignore this call when the balancer is closed or in idle - // because the ClientConn takes care of closing the connections. - // - // Not returning early from here when the balancer is closed or in idle - // leads to a deadlock though, because of the following sequence of - // calls when holding cc.mu: - // cc.exitIdleMode --> ccb.enterIdleMode --> gsw.Close --> - // ccb.RemoveAddrConn --> cc.removeAddrConn - return - } - - acbw, ok := sc.(*acBalancerWrapper) - if !ok { - return - } - ccb.cc.removeAddrConn(acbw.ac, errConnDrain) + // The graceful switch balancer will never call this. + logger.Errorf("ccb RemoveSubConn(%v) called unexpectedly, sc") } func (ccb *ccBalancerWrapper) UpdateAddresses(sc balancer.SubConn, addrs []resolver.Address) { @@ -380,7 +356,9 @@ func (ccb *ccBalancerWrapper) Target() string { // acBalancerWrapper is a wrapper on top of ac for balancers. // It implements balancer.SubConn interface. type acBalancerWrapper struct { - ac *addrConn // read-only + ac *addrConn // read-only + ccb *ccBalancerWrapper // read-only + stateListener func(balancer.SubConnState) mu sync.Mutex producers map[balancer.ProducerBuilder]*refCountedProducer @@ -398,6 +376,23 @@ func (acbw *acBalancerWrapper) Connect() { go acbw.ac.connect() } +func (acbw *acBalancerWrapper) Shutdown() { + ccb := acbw.ccb + if ccb.isIdleOrClosed() { + // It it safe to ignore this call when the balancer is closed or in idle + // because the ClientConn takes care of closing the connections. + // + // Not returning early from here when the balancer is closed or in idle + // leads to a deadlock though, because of the following sequence of + // calls when holding cc.mu: + // cc.exitIdleMode --> ccb.enterIdleMode --> gsw.Close --> + // ccb.RemoveAddrConn --> cc.removeAddrConn + return + } + + ccb.cc.removeAddrConn(acbw.ac, errConnDrain) +} + // NewStream begins a streaming RPC on the addrConn. If the addrConn is not // ready, blocks until it is or ctx expires. Returns an error when the context // expires or the addrConn is shut down. @@ -411,7 +406,7 @@ func (acbw *acBalancerWrapper) NewStream(ctx context.Context, desc *StreamDesc, // Invoke performs a unary RPC. If the addrConn is not ready, returns // errSubConnNotReady. -func (acbw *acBalancerWrapper) Invoke(ctx context.Context, method string, args interface{}, reply interface{}, opts ...CallOption) error { +func (acbw *acBalancerWrapper) Invoke(ctx context.Context, method string, args any, reply any, opts ...CallOption) error { cs, err := acbw.NewStream(ctx, unaryStreamDesc, method, opts...) if err != nil { return err diff --git a/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go b/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go index ec2c2fa14d..5954801122 100644 --- a/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go +++ b/vendor/google.golang.org/grpc/binarylog/grpc_binarylog_v1/binarylog.pb.go @@ -18,7 +18,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.30.0 +// protoc-gen-go v1.31.0 // protoc v4.22.0 // source: grpc/binlog/v1/binarylog.proto diff --git a/vendor/google.golang.org/grpc/call.go b/vendor/google.golang.org/grpc/call.go index e6a1dc5d75..788c89c16f 100644 --- a/vendor/google.golang.org/grpc/call.go +++ b/vendor/google.golang.org/grpc/call.go @@ -26,12 +26,7 @@ import ( // received. This is typically called by generated code. // // All errors returned by Invoke are compatible with the status package. -func (cc *ClientConn) Invoke(ctx context.Context, method string, args, reply interface{}, opts ...CallOption) error { - if err := cc.idlenessMgr.onCallBegin(); err != nil { - return err - } - defer cc.idlenessMgr.onCallEnd() - +func (cc *ClientConn) Invoke(ctx context.Context, method string, args, reply any, opts ...CallOption) error { // allow interceptor to see all applicable call options, which means those // configured as defaults from dial option as well as per-call options opts = combine(cc.dopts.callOptions, opts) @@ -61,13 +56,13 @@ func combine(o1 []CallOption, o2 []CallOption) []CallOption { // received. This is typically called by generated code. // // DEPRECATED: Use ClientConn.Invoke instead. -func Invoke(ctx context.Context, method string, args, reply interface{}, cc *ClientConn, opts ...CallOption) error { +func Invoke(ctx context.Context, method string, args, reply any, cc *ClientConn, opts ...CallOption) error { return cc.Invoke(ctx, method, args, reply, opts...) } var unaryStreamDesc = &StreamDesc{ServerStreams: false, ClientStreams: false} -func invoke(ctx context.Context, method string, req, reply interface{}, cc *ClientConn, opts ...CallOption) error { +func invoke(ctx context.Context, method string, req, reply any, cc *ClientConn, opts ...CallOption) error { cs, err := newClientStream(ctx, unaryStreamDesc, cc, method, opts...) if err != nil { return err diff --git a/vendor/google.golang.org/grpc/clientconn.go b/vendor/google.golang.org/grpc/clientconn.go index 95a7459b02..ff7fea1022 100644 --- a/vendor/google.golang.org/grpc/clientconn.go +++ b/vendor/google.golang.org/grpc/clientconn.go @@ -34,9 +34,12 @@ import ( "google.golang.org/grpc/codes" "google.golang.org/grpc/connectivity" "google.golang.org/grpc/credentials" + "google.golang.org/grpc/internal" "google.golang.org/grpc/internal/backoff" "google.golang.org/grpc/internal/channelz" "google.golang.org/grpc/internal/grpcsync" + "google.golang.org/grpc/internal/idle" + "google.golang.org/grpc/internal/pretty" iresolver "google.golang.org/grpc/internal/resolver" "google.golang.org/grpc/internal/transport" "google.golang.org/grpc/keepalive" @@ -53,8 +56,6 @@ import ( const ( // minimum time to give a connection to complete minConnectTimeout = 20 * time.Second - // must match grpclbName in grpclb/grpclb.go - grpclbName = "grpclb" ) var ( @@ -137,7 +138,6 @@ func (dcs *defaultConfigSelector) SelectConfig(rpcInfo iresolver.RPCInfo) (*ires func DialContext(ctx context.Context, target string, opts ...DialOption) (conn *ClientConn, err error) { cc := &ClientConn{ target: target, - csMgr: &connectivityStateManager{}, conns: make(map[*addrConn]struct{}), dopts: defaultDialOptions(), czData: new(channelzData), @@ -190,6 +190,8 @@ func DialContext(ctx context.Context, target string, opts ...DialOption) (conn * // Register ClientConn with channelz. cc.channelzRegistration(target) + cc.csMgr = newConnectivityStateManager(cc.ctx, cc.channelzID) + if err := cc.validateTransportCredentials(); err != nil { return nil, err } @@ -265,7 +267,7 @@ func DialContext(ctx context.Context, target string, opts ...DialOption) (conn * // Configure idleness support with configured idle timeout or default idle // timeout duration. Idleness can be explicitly disabled by the user, by // setting the dial option to 0. - cc.idlenessMgr = newIdlenessManager(cc, cc.dopts.idleTimeout) + cc.idlenessMgr = idle.NewManager(idle.ManagerOptions{Enforcer: (*idler)(cc), Timeout: cc.dopts.idleTimeout, Logger: logger}) // Return early for non-blocking dials. if !cc.dopts.block { @@ -316,6 +318,16 @@ func (cc *ClientConn) addTraceEvent(msg string) { channelz.AddTraceEvent(logger, cc.channelzID, 0, ted) } +type idler ClientConn + +func (i *idler) EnterIdleMode() error { + return (*ClientConn)(i).enterIdleMode() +} + +func (i *idler) ExitIdleMode() error { + return (*ClientConn)(i).exitIdleMode() +} + // exitIdleMode moves the channel out of idle mode by recreating the name // resolver and load balancer. func (cc *ClientConn) exitIdleMode() error { @@ -326,7 +338,7 @@ func (cc *ClientConn) exitIdleMode() error { } if cc.idlenessState != ccIdlenessStateIdle { cc.mu.Unlock() - logger.Info("ClientConn asked to exit idle mode when not in idle mode") + channelz.Infof(logger, cc.channelzID, "ClientConn asked to exit idle mode, current mode is %v", cc.idlenessState) return nil } @@ -349,7 +361,7 @@ func (cc *ClientConn) exitIdleMode() error { cc.idlenessState = ccIdlenessStateExitingIdle exitedIdle := false if cc.blockingpicker == nil { - cc.blockingpicker = newPickerWrapper() + cc.blockingpicker = newPickerWrapper(cc.dopts.copts.StatsHandlers) } else { cc.blockingpicker.exitIdleMode() exitedIdle = true @@ -397,7 +409,8 @@ func (cc *ClientConn) enterIdleMode() error { return ErrClientConnClosing } if cc.idlenessState != ccIdlenessStateActive { - logger.Error("ClientConn asked to enter idle mode when not active") + channelz.Errorf(logger, cc.channelzID, "ClientConn asked to enter idle mode, current mode is %v", cc.idlenessState) + cc.mu.Unlock() return nil } @@ -474,7 +487,6 @@ func (cc *ClientConn) validateTransportCredentials() error { func (cc *ClientConn) channelzRegistration(target string) { cc.channelzID = channelz.RegisterChannel(&channelzChannel{cc}, cc.dopts.channelzParentID, target) cc.addTraceEvent("created") - cc.csMgr.channelzID = cc.channelzID } // chainUnaryClientInterceptors chains all unary client interceptors into one. @@ -491,7 +503,7 @@ func chainUnaryClientInterceptors(cc *ClientConn) { } else if len(interceptors) == 1 { chainedInt = interceptors[0] } else { - chainedInt = func(ctx context.Context, method string, req, reply interface{}, cc *ClientConn, invoker UnaryInvoker, opts ...CallOption) error { + chainedInt = func(ctx context.Context, method string, req, reply any, cc *ClientConn, invoker UnaryInvoker, opts ...CallOption) error { return interceptors[0](ctx, method, req, reply, cc, getChainUnaryInvoker(interceptors, 0, invoker), opts...) } } @@ -503,7 +515,7 @@ func getChainUnaryInvoker(interceptors []UnaryClientInterceptor, curr int, final if curr == len(interceptors)-1 { return finalInvoker } - return func(ctx context.Context, method string, req, reply interface{}, cc *ClientConn, opts ...CallOption) error { + return func(ctx context.Context, method string, req, reply any, cc *ClientConn, opts ...CallOption) error { return interceptors[curr+1](ctx, method, req, reply, cc, getChainUnaryInvoker(interceptors, curr+1, finalInvoker), opts...) } } @@ -539,13 +551,27 @@ func getChainStreamer(interceptors []StreamClientInterceptor, curr int, finalStr } } +// newConnectivityStateManager creates an connectivityStateManager with +// the specified id. +func newConnectivityStateManager(ctx context.Context, id *channelz.Identifier) *connectivityStateManager { + return &connectivityStateManager{ + channelzID: id, + pubSub: grpcsync.NewPubSub(ctx), + } +} + // connectivityStateManager keeps the connectivity.State of ClientConn. // This struct will eventually be exported so the balancers can access it. +// +// TODO: If possible, get rid of the `connectivityStateManager` type, and +// provide this functionality using the `PubSub`, to avoid keeping track of +// the connectivity state at two places. type connectivityStateManager struct { mu sync.Mutex state connectivity.State notifyChan chan struct{} channelzID *channelz.Identifier + pubSub *grpcsync.PubSub } // updateState updates the connectivity.State of ClientConn. @@ -561,6 +587,8 @@ func (csm *connectivityStateManager) updateState(state connectivity.State) { return } csm.state = state + csm.pubSub.Publish(state) + channelz.Infof(logger, csm.channelzID, "Channel Connectivity change to %v", state) if csm.notifyChan != nil { // There are other goroutines waiting on this channel. @@ -590,7 +618,7 @@ func (csm *connectivityStateManager) getNotifyChan() <-chan struct{} { type ClientConnInterface interface { // Invoke performs a unary RPC and returns after the response is received // into reply. - Invoke(ctx context.Context, method string, args interface{}, reply interface{}, opts ...CallOption) error + Invoke(ctx context.Context, method string, args any, reply any, opts ...CallOption) error // NewStream begins a streaming RPC. NewStream(ctx context.Context, desc *StreamDesc, method string, opts ...CallOption) (ClientStream, error) } @@ -622,7 +650,7 @@ type ClientConn struct { channelzID *channelz.Identifier // Channelz identifier for the channel. resolverBuilder resolver.Builder // See parseTargetAndFindResolver(). balancerWrapper *ccBalancerWrapper // Uses gracefulswitch.balancer underneath. - idlenessMgr idlenessManager + idlenessMgr idle.Manager // The following provide their own synchronization, and therefore don't // require cc.mu to be held to access them. @@ -668,6 +696,19 @@ const ( ccIdlenessStateExitingIdle ) +func (s ccIdlenessState) String() string { + switch s { + case ccIdlenessStateActive: + return "active" + case ccIdlenessStateIdle: + return "idle" + case ccIdlenessStateExitingIdle: + return "exitingIdle" + default: + return "unknown" + } +} + // WaitForStateChange waits until the connectivity.State of ClientConn changes from sourceState or // ctx expires. A true value is returned in former case and false in latter. // @@ -759,6 +800,10 @@ func init() { panic(fmt.Sprintf("impossible error parsing empty service config: %v", cfg.Err)) } emptyServiceConfig = cfg.Config.(*ServiceConfig) + + internal.SubscribeToConnectivityStateChanges = func(cc *ClientConn, s grpcsync.Subscriber) func() { + return cc.csMgr.pubSub.Subscribe(s) + } } func (cc *ClientConn) maybeApplyDefaultServiceConfig(addrs []resolver.Address) { @@ -867,6 +912,20 @@ func (cc *ClientConn) handleSubConnStateChange(sc balancer.SubConn, s connectivi cc.balancerWrapper.updateSubConnState(sc, s, err) } +// Makes a copy of the input addresses slice and clears out the balancer +// attributes field. Addresses are passed during subconn creation and address +// update operations. In both cases, we will clear the balancer attributes by +// calling this function, and therefore we will be able to use the Equal method +// provided by the resolver.Address type for comparison. +func copyAddressesWithoutBalancerAttributes(in []resolver.Address) []resolver.Address { + out := make([]resolver.Address, len(in)) + for i := range in { + out[i] = in[i] + out[i].BalancerAttributes = nil + } + return out +} + // newAddrConn creates an addrConn for addrs and adds it to cc.conns. // // Caller needs to make sure len(addrs) > 0. @@ -874,7 +933,7 @@ func (cc *ClientConn) newAddrConn(addrs []resolver.Address, opts balancer.NewSub ac := &addrConn{ state: connectivity.Idle, cc: cc, - addrs: addrs, + addrs: copyAddressesWithoutBalancerAttributes(addrs), scopts: opts, dopts: cc.dopts, czData: new(channelzData), @@ -995,8 +1054,9 @@ func equalAddresses(a, b []resolver.Address) bool { // connections or connection attempts. func (ac *addrConn) updateAddrs(addrs []resolver.Address) { ac.mu.Lock() - channelz.Infof(logger, ac.channelzID, "addrConn: updateAddrs curAddr: %v, addrs: %v", ac.curAddr, addrs) + channelz.Infof(logger, ac.channelzID, "addrConn: updateAddrs curAddr: %v, addrs: %v", pretty.ToJSON(ac.curAddr), pretty.ToJSON(addrs)) + addrs = copyAddressesWithoutBalancerAttributes(addrs) if equalAddresses(ac.addrs, addrs) { ac.mu.Unlock() return @@ -1031,8 +1091,8 @@ func (ac *addrConn) updateAddrs(addrs []resolver.Address) { ac.cancel() ac.ctx, ac.cancel = context.WithCancel(ac.cc.ctx) - // We have to defer here because GracefulClose => Close => onClose, which - // requires locking ac.mu. + // We have to defer here because GracefulClose => onClose, which requires + // locking ac.mu. if ac.transport != nil { defer ac.transport.GracefulClose() ac.transport = nil @@ -1137,23 +1197,13 @@ func (cc *ClientConn) applyServiceConfigAndBalancer(sc *ServiceConfig, configSel } var newBalancerName string - if cc.sc != nil && cc.sc.lbConfig != nil { + if cc.sc == nil || (cc.sc.lbConfig == nil && cc.sc.LB == nil) { + // No service config or no LB policy specified in config. + newBalancerName = PickFirstBalancerName + } else if cc.sc.lbConfig != nil { newBalancerName = cc.sc.lbConfig.name - } else { - var isGRPCLB bool - for _, a := range addrs { - if a.Type == resolver.GRPCLB { - isGRPCLB = true - break - } - } - if isGRPCLB { - newBalancerName = grpclbName - } else if cc.sc != nil && cc.sc.LB != nil { - newBalancerName = *cc.sc.LB - } else { - newBalancerName = PickFirstBalancerName - } + } else { // cc.sc.LB != nil + newBalancerName = *cc.sc.LB } cc.balancerWrapper.switchTo(newBalancerName) } @@ -1192,7 +1242,10 @@ func (cc *ClientConn) ResetConnectBackoff() { // Close tears down the ClientConn and all underlying connections. func (cc *ClientConn) Close() error { - defer cc.cancel() + defer func() { + cc.cancel() + <-cc.csMgr.pubSub.Done() + }() cc.mu.Lock() if cc.conns == nil { @@ -1226,7 +1279,7 @@ func (cc *ClientConn) Close() error { rWrapper.close() } if idlenessMgr != nil { - idlenessMgr.close() + idlenessMgr.Close() } for ac := range conns { @@ -1336,12 +1389,14 @@ func (ac *addrConn) resetTransport() { if err := ac.tryAllAddrs(acCtx, addrs, connectDeadline); err != nil { ac.cc.resolveNow(resolver.ResolveNowOptions{}) - // After exhausting all addresses, the addrConn enters - // TRANSIENT_FAILURE. + ac.mu.Lock() if acCtx.Err() != nil { + // addrConn was torn down. + ac.mu.Unlock() return } - ac.mu.Lock() + // After exhausting all addresses, the addrConn enters + // TRANSIENT_FAILURE. ac.updateConnectivityState(connectivity.TransientFailure, err) // Backoff. @@ -1537,7 +1592,7 @@ func (ac *addrConn) startHealthCheck(ctx context.Context) { // Set up the health check helper functions. currentTr := ac.transport - newStream := func(method string) (interface{}, error) { + newStream := func(method string) (any, error) { ac.mu.Lock() if ac.transport != currentTr { ac.mu.Unlock() @@ -1625,16 +1680,7 @@ func (ac *addrConn) tearDown(err error) { ac.updateConnectivityState(connectivity.Shutdown, nil) ac.cancel() ac.curAddr = resolver.Address{} - if err == errConnDrain && curTr != nil { - // GracefulClose(...) may be executed multiple times when - // i) receiving multiple GoAway frames from the server; or - // ii) there are concurrent name resolver/Balancer triggered - // address removal and GoAway. - // We have to unlock and re-lock here because GracefulClose => Close => onClose, which requires locking ac.mu. - ac.mu.Unlock() - curTr.GracefulClose() - ac.mu.Lock() - } + channelz.AddTraceEvent(logger, ac.channelzID, 0, &channelz.TraceEventDesc{ Desc: "Subchannel deleted", Severity: channelz.CtInfo, @@ -1648,6 +1694,29 @@ func (ac *addrConn) tearDown(err error) { // being deleted right away. channelz.RemoveEntry(ac.channelzID) ac.mu.Unlock() + + // We have to release the lock before the call to GracefulClose/Close here + // because both of them call onClose(), which requires locking ac.mu. + if curTr != nil { + if err == errConnDrain { + // Close the transport gracefully when the subConn is being shutdown. + // + // GracefulClose() may be executed multiple times if: + // - multiple GoAway frames are received from the server + // - there are concurrent name resolver or balancer triggered + // address removal and GoAway + curTr.GracefulClose() + } else { + // Hard close the transport when the channel is entering idle or is + // being shutdown. In the case where the channel is being shutdown, + // closing of transports is also taken care of by cancelation of cc.ctx. + // But in the case where the channel is entering idle, we need to + // explicitly close the transports here. Instead of distinguishing + // between these two cases, it is simpler to close the transport + // unconditionally here. + curTr.Close(err) + } + } } func (ac *addrConn) getState() connectivity.State { @@ -1807,19 +1876,70 @@ func (cc *ClientConn) parseTargetAndFindResolver() error { } // parseTarget uses RFC 3986 semantics to parse the given target into a -// resolver.Target struct containing scheme, authority and url. Query -// params are stripped from the endpoint. +// resolver.Target struct containing url. Query params are stripped from the +// endpoint. func parseTarget(target string) (resolver.Target, error) { u, err := url.Parse(target) if err != nil { return resolver.Target{}, err } - return resolver.Target{ - Scheme: u.Scheme, - Authority: u.Host, - URL: *u, - }, nil + return resolver.Target{URL: *u}, nil +} + +func encodeAuthority(authority string) string { + const upperhex = "0123456789ABCDEF" + + // Return for characters that must be escaped as per + // Valid chars are mentioned here: + // https://datatracker.ietf.org/doc/html/rfc3986#section-3.2 + shouldEscape := func(c byte) bool { + // Alphanum are always allowed. + if 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z' || '0' <= c && c <= '9' { + return false + } + switch c { + case '-', '_', '.', '~': // Unreserved characters + return false + case '!', '$', '&', '\'', '(', ')', '*', '+', ',', ';', '=': // Subdelim characters + return false + case ':', '[', ']', '@': // Authority related delimeters + return false + } + // Everything else must be escaped. + return true + } + + hexCount := 0 + for i := 0; i < len(authority); i++ { + c := authority[i] + if shouldEscape(c) { + hexCount++ + } + } + + if hexCount == 0 { + return authority + } + + required := len(authority) + 2*hexCount + t := make([]byte, required) + + j := 0 + // This logic is a barebones version of escape in the go net/url library. + for i := 0; i < len(authority); i++ { + switch c := authority[i]; { + case shouldEscape(c): + t[j] = '%' + t[j+1] = upperhex[c>>4] + t[j+2] = upperhex[c&15] + j += 3 + default: + t[j] = authority[i] + j++ + } + } + return string(t) } // Determine channel authority. The order of precedence is as follows: @@ -1872,7 +1992,11 @@ func (cc *ClientConn) determineAuthority() error { // the channel authority given the user's dial target. For resolvers // which don't implement this interface, we will use the endpoint from // "scheme://authority/endpoint" as the default authority. - cc.authority = endpoint + // Escape the endpoint to handle use cases where the endpoint + // might not be a valid authority by default. + // For example an endpoint which has multiple paths like + // 'a/b/c', which is not a valid authority by default. + cc.authority = encodeAuthority(endpoint) } channelz.Infof(logger, cc.channelzID, "Channel authority set to %q", cc.authority) return nil diff --git a/vendor/google.golang.org/grpc/codec.go b/vendor/google.golang.org/grpc/codec.go index 1297765478..411e3dfd47 100644 --- a/vendor/google.golang.org/grpc/codec.go +++ b/vendor/google.golang.org/grpc/codec.go @@ -27,8 +27,8 @@ import ( // omits the name/string, which vary between the two and are not needed for // anything besides the registry in the encoding package. type baseCodec interface { - Marshal(v interface{}) ([]byte, error) - Unmarshal(data []byte, v interface{}) error + Marshal(v any) ([]byte, error) + Unmarshal(data []byte, v any) error } var _ baseCodec = Codec(nil) @@ -41,9 +41,9 @@ var _ baseCodec = encoding.Codec(nil) // Deprecated: use encoding.Codec instead. type Codec interface { // Marshal returns the wire format of v. - Marshal(v interface{}) ([]byte, error) + Marshal(v any) ([]byte, error) // Unmarshal parses the wire format into v. - Unmarshal(data []byte, v interface{}) error + Unmarshal(data []byte, v any) error // String returns the name of the Codec implementation. This is unused by // gRPC. String() string diff --git a/vendor/google.golang.org/grpc/dialoptions.go b/vendor/google.golang.org/grpc/dialoptions.go index 15a3d5102a..1fd0d5c127 100644 --- a/vendor/google.golang.org/grpc/dialoptions.go +++ b/vendor/google.golang.org/grpc/dialoptions.go @@ -78,6 +78,7 @@ type dialOptions struct { defaultServiceConfigRawJSON *string resolvers []resolver.Builder idleTimeout time.Duration + recvBufferPool SharedBufferPool } // DialOption configures how we set up the connection. @@ -138,6 +139,20 @@ func newJoinDialOption(opts ...DialOption) DialOption { return &joinDialOption{opts: opts} } +// WithSharedWriteBuffer allows reusing per-connection transport write buffer. +// If this option is set to true every connection will release the buffer after +// flushing the data on the wire. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func WithSharedWriteBuffer(val bool) DialOption { + return newFuncDialOption(func(o *dialOptions) { + o.copts.SharedWriteBuffer = val + }) +} + // WithWriteBufferSize determines how much data can be batched before doing a // write on the wire. The corresponding memory allocation for this buffer will // be twice the size to keep syscalls low. The default value for this buffer is @@ -628,6 +643,7 @@ func defaultDialOptions() dialOptions { ReadBufferSize: defaultReadBufSize, UseProxy: true, }, + recvBufferPool: nopBufferPool{}, } } @@ -676,3 +692,24 @@ func WithIdleTimeout(d time.Duration) DialOption { o.idleTimeout = d }) } + +// WithRecvBufferPool returns a DialOption that configures the ClientConn +// to use the provided shared buffer pool for parsing incoming messages. Depending +// on the application's workload, this could result in reduced memory allocation. +// +// If you are unsure about how to implement a memory pool but want to utilize one, +// begin with grpc.NewSharedBufferPool. +// +// Note: The shared buffer pool feature will not be active if any of the following +// options are used: WithStatsHandler, EnableTracing, or binary logging. In such +// cases, the shared buffer pool will be ignored. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func WithRecvBufferPool(bufferPool SharedBufferPool) DialOption { + return newFuncDialOption(func(o *dialOptions) { + o.recvBufferPool = bufferPool + }) +} diff --git a/vendor/google.golang.org/grpc/encoding/encoding.go b/vendor/google.golang.org/grpc/encoding/encoding.go index 07a5861352..69d5580b6a 100644 --- a/vendor/google.golang.org/grpc/encoding/encoding.go +++ b/vendor/google.golang.org/grpc/encoding/encoding.go @@ -90,9 +90,9 @@ func GetCompressor(name string) Compressor { // methods can be called from concurrent goroutines. type Codec interface { // Marshal returns the wire format of v. - Marshal(v interface{}) ([]byte, error) + Marshal(v any) ([]byte, error) // Unmarshal parses the wire format into v. - Unmarshal(data []byte, v interface{}) error + Unmarshal(data []byte, v any) error // Name returns the name of the Codec implementation. The returned string // will be used as part of content type in transmission. The result must be // static; the result cannot change between calls. diff --git a/vendor/google.golang.org/grpc/encoding/gzip/gzip.go b/vendor/google.golang.org/grpc/encoding/gzip/gzip.go index a3bb173c24..6306e8bb0f 100644 --- a/vendor/google.golang.org/grpc/encoding/gzip/gzip.go +++ b/vendor/google.golang.org/grpc/encoding/gzip/gzip.go @@ -40,7 +40,7 @@ const Name = "gzip" func init() { c := &compressor{} - c.poolCompressor.New = func() interface{} { + c.poolCompressor.New = func() any { return &writer{Writer: gzip.NewWriter(io.Discard), pool: &c.poolCompressor} } encoding.RegisterCompressor(c) @@ -61,7 +61,7 @@ func SetLevel(level int) error { return fmt.Errorf("grpc: invalid gzip compression level: %d", level) } c := encoding.GetCompressor(Name).(*compressor) - c.poolCompressor.New = func() interface{} { + c.poolCompressor.New = func() any { w, err := gzip.NewWriterLevel(io.Discard, level) if err != nil { panic(err) diff --git a/vendor/google.golang.org/grpc/encoding/proto/proto.go b/vendor/google.golang.org/grpc/encoding/proto/proto.go index 3009b35afe..0ee3d3bae9 100644 --- a/vendor/google.golang.org/grpc/encoding/proto/proto.go +++ b/vendor/google.golang.org/grpc/encoding/proto/proto.go @@ -37,7 +37,7 @@ func init() { // codec is a Codec implementation with protobuf. It is the default codec for gRPC. type codec struct{} -func (codec) Marshal(v interface{}) ([]byte, error) { +func (codec) Marshal(v any) ([]byte, error) { vv, ok := v.(proto.Message) if !ok { return nil, fmt.Errorf("failed to marshal, message is %T, want proto.Message", v) @@ -45,7 +45,7 @@ func (codec) Marshal(v interface{}) ([]byte, error) { return proto.Marshal(vv) } -func (codec) Unmarshal(data []byte, v interface{}) error { +func (codec) Unmarshal(data []byte, v any) error { vv, ok := v.(proto.Message) if !ok { return fmt.Errorf("failed to unmarshal, message is %T, want proto.Message", v) diff --git a/vendor/google.golang.org/grpc/grpclog/component.go b/vendor/google.golang.org/grpc/grpclog/component.go index 8358dd6e2a..ac73c9ced2 100644 --- a/vendor/google.golang.org/grpc/grpclog/component.go +++ b/vendor/google.golang.org/grpc/grpclog/component.go @@ -31,71 +31,71 @@ type componentData struct { var cache = map[string]*componentData{} -func (c *componentData) InfoDepth(depth int, args ...interface{}) { - args = append([]interface{}{"[" + string(c.name) + "]"}, args...) +func (c *componentData) InfoDepth(depth int, args ...any) { + args = append([]any{"[" + string(c.name) + "]"}, args...) grpclog.InfoDepth(depth+1, args...) } -func (c *componentData) WarningDepth(depth int, args ...interface{}) { - args = append([]interface{}{"[" + string(c.name) + "]"}, args...) +func (c *componentData) WarningDepth(depth int, args ...any) { + args = append([]any{"[" + string(c.name) + "]"}, args...) grpclog.WarningDepth(depth+1, args...) } -func (c *componentData) ErrorDepth(depth int, args ...interface{}) { - args = append([]interface{}{"[" + string(c.name) + "]"}, args...) +func (c *componentData) ErrorDepth(depth int, args ...any) { + args = append([]any{"[" + string(c.name) + "]"}, args...) grpclog.ErrorDepth(depth+1, args...) } -func (c *componentData) FatalDepth(depth int, args ...interface{}) { - args = append([]interface{}{"[" + string(c.name) + "]"}, args...) +func (c *componentData) FatalDepth(depth int, args ...any) { + args = append([]any{"[" + string(c.name) + "]"}, args...) grpclog.FatalDepth(depth+1, args...) } -func (c *componentData) Info(args ...interface{}) { +func (c *componentData) Info(args ...any) { c.InfoDepth(1, args...) } -func (c *componentData) Warning(args ...interface{}) { +func (c *componentData) Warning(args ...any) { c.WarningDepth(1, args...) } -func (c *componentData) Error(args ...interface{}) { +func (c *componentData) Error(args ...any) { c.ErrorDepth(1, args...) } -func (c *componentData) Fatal(args ...interface{}) { +func (c *componentData) Fatal(args ...any) { c.FatalDepth(1, args...) } -func (c *componentData) Infof(format string, args ...interface{}) { +func (c *componentData) Infof(format string, args ...any) { c.InfoDepth(1, fmt.Sprintf(format, args...)) } -func (c *componentData) Warningf(format string, args ...interface{}) { +func (c *componentData) Warningf(format string, args ...any) { c.WarningDepth(1, fmt.Sprintf(format, args...)) } -func (c *componentData) Errorf(format string, args ...interface{}) { +func (c *componentData) Errorf(format string, args ...any) { c.ErrorDepth(1, fmt.Sprintf(format, args...)) } -func (c *componentData) Fatalf(format string, args ...interface{}) { +func (c *componentData) Fatalf(format string, args ...any) { c.FatalDepth(1, fmt.Sprintf(format, args...)) } -func (c *componentData) Infoln(args ...interface{}) { +func (c *componentData) Infoln(args ...any) { c.InfoDepth(1, args...) } -func (c *componentData) Warningln(args ...interface{}) { +func (c *componentData) Warningln(args ...any) { c.WarningDepth(1, args...) } -func (c *componentData) Errorln(args ...interface{}) { +func (c *componentData) Errorln(args ...any) { c.ErrorDepth(1, args...) } -func (c *componentData) Fatalln(args ...interface{}) { +func (c *componentData) Fatalln(args ...any) { c.FatalDepth(1, args...) } diff --git a/vendor/google.golang.org/grpc/grpclog/grpclog.go b/vendor/google.golang.org/grpc/grpclog/grpclog.go index c8bb2be34b..16928c9cb9 100644 --- a/vendor/google.golang.org/grpc/grpclog/grpclog.go +++ b/vendor/google.golang.org/grpc/grpclog/grpclog.go @@ -42,53 +42,53 @@ func V(l int) bool { } // Info logs to the INFO log. -func Info(args ...interface{}) { +func Info(args ...any) { grpclog.Logger.Info(args...) } // Infof logs to the INFO log. Arguments are handled in the manner of fmt.Printf. -func Infof(format string, args ...interface{}) { +func Infof(format string, args ...any) { grpclog.Logger.Infof(format, args...) } // Infoln logs to the INFO log. Arguments are handled in the manner of fmt.Println. -func Infoln(args ...interface{}) { +func Infoln(args ...any) { grpclog.Logger.Infoln(args...) } // Warning logs to the WARNING log. -func Warning(args ...interface{}) { +func Warning(args ...any) { grpclog.Logger.Warning(args...) } // Warningf logs to the WARNING log. Arguments are handled in the manner of fmt.Printf. -func Warningf(format string, args ...interface{}) { +func Warningf(format string, args ...any) { grpclog.Logger.Warningf(format, args...) } // Warningln logs to the WARNING log. Arguments are handled in the manner of fmt.Println. -func Warningln(args ...interface{}) { +func Warningln(args ...any) { grpclog.Logger.Warningln(args...) } // Error logs to the ERROR log. -func Error(args ...interface{}) { +func Error(args ...any) { grpclog.Logger.Error(args...) } // Errorf logs to the ERROR log. Arguments are handled in the manner of fmt.Printf. -func Errorf(format string, args ...interface{}) { +func Errorf(format string, args ...any) { grpclog.Logger.Errorf(format, args...) } // Errorln logs to the ERROR log. Arguments are handled in the manner of fmt.Println. -func Errorln(args ...interface{}) { +func Errorln(args ...any) { grpclog.Logger.Errorln(args...) } // Fatal logs to the FATAL log. Arguments are handled in the manner of fmt.Print. // It calls os.Exit() with exit code 1. -func Fatal(args ...interface{}) { +func Fatal(args ...any) { grpclog.Logger.Fatal(args...) // Make sure fatal logs will exit. os.Exit(1) @@ -96,7 +96,7 @@ func Fatal(args ...interface{}) { // Fatalf logs to the FATAL log. Arguments are handled in the manner of fmt.Printf. // It calls os.Exit() with exit code 1. -func Fatalf(format string, args ...interface{}) { +func Fatalf(format string, args ...any) { grpclog.Logger.Fatalf(format, args...) // Make sure fatal logs will exit. os.Exit(1) @@ -104,7 +104,7 @@ func Fatalf(format string, args ...interface{}) { // Fatalln logs to the FATAL log. Arguments are handled in the manner of fmt.Println. // It calle os.Exit()) with exit code 1. -func Fatalln(args ...interface{}) { +func Fatalln(args ...any) { grpclog.Logger.Fatalln(args...) // Make sure fatal logs will exit. os.Exit(1) @@ -113,20 +113,20 @@ func Fatalln(args ...interface{}) { // Print prints to the logger. Arguments are handled in the manner of fmt.Print. // // Deprecated: use Info. -func Print(args ...interface{}) { +func Print(args ...any) { grpclog.Logger.Info(args...) } // Printf prints to the logger. Arguments are handled in the manner of fmt.Printf. // // Deprecated: use Infof. -func Printf(format string, args ...interface{}) { +func Printf(format string, args ...any) { grpclog.Logger.Infof(format, args...) } // Println prints to the logger. Arguments are handled in the manner of fmt.Println. // // Deprecated: use Infoln. -func Println(args ...interface{}) { +func Println(args ...any) { grpclog.Logger.Infoln(args...) } diff --git a/vendor/google.golang.org/grpc/grpclog/logger.go b/vendor/google.golang.org/grpc/grpclog/logger.go index ef06a4822b..b1674d8267 100644 --- a/vendor/google.golang.org/grpc/grpclog/logger.go +++ b/vendor/google.golang.org/grpc/grpclog/logger.go @@ -24,12 +24,12 @@ import "google.golang.org/grpc/internal/grpclog" // // Deprecated: use LoggerV2. type Logger interface { - Fatal(args ...interface{}) - Fatalf(format string, args ...interface{}) - Fatalln(args ...interface{}) - Print(args ...interface{}) - Printf(format string, args ...interface{}) - Println(args ...interface{}) + Fatal(args ...any) + Fatalf(format string, args ...any) + Fatalln(args ...any) + Print(args ...any) + Printf(format string, args ...any) + Println(args ...any) } // SetLogger sets the logger that is used in grpc. Call only from @@ -45,39 +45,39 @@ type loggerWrapper struct { Logger } -func (g *loggerWrapper) Info(args ...interface{}) { +func (g *loggerWrapper) Info(args ...any) { g.Logger.Print(args...) } -func (g *loggerWrapper) Infoln(args ...interface{}) { +func (g *loggerWrapper) Infoln(args ...any) { g.Logger.Println(args...) } -func (g *loggerWrapper) Infof(format string, args ...interface{}) { +func (g *loggerWrapper) Infof(format string, args ...any) { g.Logger.Printf(format, args...) } -func (g *loggerWrapper) Warning(args ...interface{}) { +func (g *loggerWrapper) Warning(args ...any) { g.Logger.Print(args...) } -func (g *loggerWrapper) Warningln(args ...interface{}) { +func (g *loggerWrapper) Warningln(args ...any) { g.Logger.Println(args...) } -func (g *loggerWrapper) Warningf(format string, args ...interface{}) { +func (g *loggerWrapper) Warningf(format string, args ...any) { g.Logger.Printf(format, args...) } -func (g *loggerWrapper) Error(args ...interface{}) { +func (g *loggerWrapper) Error(args ...any) { g.Logger.Print(args...) } -func (g *loggerWrapper) Errorln(args ...interface{}) { +func (g *loggerWrapper) Errorln(args ...any) { g.Logger.Println(args...) } -func (g *loggerWrapper) Errorf(format string, args ...interface{}) { +func (g *loggerWrapper) Errorf(format string, args ...any) { g.Logger.Printf(format, args...) } diff --git a/vendor/google.golang.org/grpc/grpclog/loggerv2.go b/vendor/google.golang.org/grpc/grpclog/loggerv2.go index 5de66e40d3..ecfd36d713 100644 --- a/vendor/google.golang.org/grpc/grpclog/loggerv2.go +++ b/vendor/google.golang.org/grpc/grpclog/loggerv2.go @@ -33,35 +33,35 @@ import ( // LoggerV2 does underlying logging work for grpclog. type LoggerV2 interface { // Info logs to INFO log. Arguments are handled in the manner of fmt.Print. - Info(args ...interface{}) + Info(args ...any) // Infoln logs to INFO log. Arguments are handled in the manner of fmt.Println. - Infoln(args ...interface{}) + Infoln(args ...any) // Infof logs to INFO log. Arguments are handled in the manner of fmt.Printf. - Infof(format string, args ...interface{}) + Infof(format string, args ...any) // Warning logs to WARNING log. Arguments are handled in the manner of fmt.Print. - Warning(args ...interface{}) + Warning(args ...any) // Warningln logs to WARNING log. Arguments are handled in the manner of fmt.Println. - Warningln(args ...interface{}) + Warningln(args ...any) // Warningf logs to WARNING log. Arguments are handled in the manner of fmt.Printf. - Warningf(format string, args ...interface{}) + Warningf(format string, args ...any) // Error logs to ERROR log. Arguments are handled in the manner of fmt.Print. - Error(args ...interface{}) + Error(args ...any) // Errorln logs to ERROR log. Arguments are handled in the manner of fmt.Println. - Errorln(args ...interface{}) + Errorln(args ...any) // Errorf logs to ERROR log. Arguments are handled in the manner of fmt.Printf. - Errorf(format string, args ...interface{}) + Errorf(format string, args ...any) // Fatal logs to ERROR log. Arguments are handled in the manner of fmt.Print. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatal(args ...interface{}) + Fatal(args ...any) // Fatalln logs to ERROR log. Arguments are handled in the manner of fmt.Println. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatalln(args ...interface{}) + Fatalln(args ...any) // Fatalf logs to ERROR log. Arguments are handled in the manner of fmt.Printf. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatalf(format string, args ...interface{}) + Fatalf(format string, args ...any) // V reports whether verbosity level l is at least the requested verbose level. V(l int) bool } @@ -182,53 +182,53 @@ func (g *loggerT) output(severity int, s string) { g.m[severity].Output(2, string(b)) } -func (g *loggerT) Info(args ...interface{}) { +func (g *loggerT) Info(args ...any) { g.output(infoLog, fmt.Sprint(args...)) } -func (g *loggerT) Infoln(args ...interface{}) { +func (g *loggerT) Infoln(args ...any) { g.output(infoLog, fmt.Sprintln(args...)) } -func (g *loggerT) Infof(format string, args ...interface{}) { +func (g *loggerT) Infof(format string, args ...any) { g.output(infoLog, fmt.Sprintf(format, args...)) } -func (g *loggerT) Warning(args ...interface{}) { +func (g *loggerT) Warning(args ...any) { g.output(warningLog, fmt.Sprint(args...)) } -func (g *loggerT) Warningln(args ...interface{}) { +func (g *loggerT) Warningln(args ...any) { g.output(warningLog, fmt.Sprintln(args...)) } -func (g *loggerT) Warningf(format string, args ...interface{}) { +func (g *loggerT) Warningf(format string, args ...any) { g.output(warningLog, fmt.Sprintf(format, args...)) } -func (g *loggerT) Error(args ...interface{}) { +func (g *loggerT) Error(args ...any) { g.output(errorLog, fmt.Sprint(args...)) } -func (g *loggerT) Errorln(args ...interface{}) { +func (g *loggerT) Errorln(args ...any) { g.output(errorLog, fmt.Sprintln(args...)) } -func (g *loggerT) Errorf(format string, args ...interface{}) { +func (g *loggerT) Errorf(format string, args ...any) { g.output(errorLog, fmt.Sprintf(format, args...)) } -func (g *loggerT) Fatal(args ...interface{}) { +func (g *loggerT) Fatal(args ...any) { g.output(fatalLog, fmt.Sprint(args...)) os.Exit(1) } -func (g *loggerT) Fatalln(args ...interface{}) { +func (g *loggerT) Fatalln(args ...any) { g.output(fatalLog, fmt.Sprintln(args...)) os.Exit(1) } -func (g *loggerT) Fatalf(format string, args ...interface{}) { +func (g *loggerT) Fatalf(format string, args ...any) { g.output(fatalLog, fmt.Sprintf(format, args...)) os.Exit(1) } @@ -248,11 +248,11 @@ func (g *loggerT) V(l int) bool { type DepthLoggerV2 interface { LoggerV2 // InfoDepth logs to INFO log at the specified depth. Arguments are handled in the manner of fmt.Println. - InfoDepth(depth int, args ...interface{}) + InfoDepth(depth int, args ...any) // WarningDepth logs to WARNING log at the specified depth. Arguments are handled in the manner of fmt.Println. - WarningDepth(depth int, args ...interface{}) + WarningDepth(depth int, args ...any) // ErrorDepth logs to ERROR log at the specified depth. Arguments are handled in the manner of fmt.Println. - ErrorDepth(depth int, args ...interface{}) + ErrorDepth(depth int, args ...any) // FatalDepth logs to FATAL log at the specified depth. Arguments are handled in the manner of fmt.Println. - FatalDepth(depth int, args ...interface{}) + FatalDepth(depth int, args ...any) } diff --git a/vendor/google.golang.org/grpc/health/grpc_health_v1/health.pb.go b/vendor/google.golang.org/grpc/health/grpc_health_v1/health.pb.go index 142d35f753..24299efd63 100644 --- a/vendor/google.golang.org/grpc/health/grpc_health_v1/health.pb.go +++ b/vendor/google.golang.org/grpc/health/grpc_health_v1/health.pb.go @@ -17,7 +17,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.30.0 +// protoc-gen-go v1.31.0 // protoc v4.22.0 // source: grpc/health/v1/health.proto diff --git a/vendor/google.golang.org/grpc/interceptor.go b/vendor/google.golang.org/grpc/interceptor.go index bb96ef57be..877d78fc3d 100644 --- a/vendor/google.golang.org/grpc/interceptor.go +++ b/vendor/google.golang.org/grpc/interceptor.go @@ -23,7 +23,7 @@ import ( ) // UnaryInvoker is called by UnaryClientInterceptor to complete RPCs. -type UnaryInvoker func(ctx context.Context, method string, req, reply interface{}, cc *ClientConn, opts ...CallOption) error +type UnaryInvoker func(ctx context.Context, method string, req, reply any, cc *ClientConn, opts ...CallOption) error // UnaryClientInterceptor intercepts the execution of a unary RPC on the client. // Unary interceptors can be specified as a DialOption, using @@ -40,7 +40,7 @@ type UnaryInvoker func(ctx context.Context, method string, req, reply interface{ // defaults from the ClientConn as well as per-call options. // // The returned error must be compatible with the status package. -type UnaryClientInterceptor func(ctx context.Context, method string, req, reply interface{}, cc *ClientConn, invoker UnaryInvoker, opts ...CallOption) error +type UnaryClientInterceptor func(ctx context.Context, method string, req, reply any, cc *ClientConn, invoker UnaryInvoker, opts ...CallOption) error // Streamer is called by StreamClientInterceptor to create a ClientStream. type Streamer func(ctx context.Context, desc *StreamDesc, cc *ClientConn, method string, opts ...CallOption) (ClientStream, error) @@ -66,7 +66,7 @@ type StreamClientInterceptor func(ctx context.Context, desc *StreamDesc, cc *Cli // server side. All per-rpc information may be mutated by the interceptor. type UnaryServerInfo struct { // Server is the service implementation the user provides. This is read-only. - Server interface{} + Server any // FullMethod is the full RPC method string, i.e., /package.service/method. FullMethod string } @@ -78,13 +78,13 @@ type UnaryServerInfo struct { // status package, or be one of the context errors. Otherwise, gRPC will use // codes.Unknown as the status code and err.Error() as the status message of the // RPC. -type UnaryHandler func(ctx context.Context, req interface{}) (interface{}, error) +type UnaryHandler func(ctx context.Context, req any) (any, error) // UnaryServerInterceptor provides a hook to intercept the execution of a unary RPC on the server. info // contains all the information of this RPC the interceptor can operate on. And handler is the wrapper // of the service method implementation. It is the responsibility of the interceptor to invoke handler // to complete the RPC. -type UnaryServerInterceptor func(ctx context.Context, req interface{}, info *UnaryServerInfo, handler UnaryHandler) (resp interface{}, err error) +type UnaryServerInterceptor func(ctx context.Context, req any, info *UnaryServerInfo, handler UnaryHandler) (resp any, err error) // StreamServerInfo consists of various information about a streaming RPC on // server side. All per-rpc information may be mutated by the interceptor. @@ -101,4 +101,4 @@ type StreamServerInfo struct { // info contains all the information of this RPC the interceptor can operate on. And handler is the // service method implementation. It is the responsibility of the interceptor to invoke handler to // complete the RPC. -type StreamServerInterceptor func(srv interface{}, ss ServerStream, info *StreamServerInfo, handler StreamHandler) error +type StreamServerInterceptor func(srv any, ss ServerStream, info *StreamServerInfo, handler StreamHandler) error diff --git a/vendor/google.golang.org/grpc/internal/balancer/gracefulswitch/gracefulswitch.go b/vendor/google.golang.org/grpc/internal/balancer/gracefulswitch/gracefulswitch.go index 08666f62a7..3c594e6e4e 100644 --- a/vendor/google.golang.org/grpc/internal/balancer/gracefulswitch/gracefulswitch.go +++ b/vendor/google.golang.org/grpc/internal/balancer/gracefulswitch/gracefulswitch.go @@ -200,8 +200,8 @@ func (gsb *Balancer) ExitIdle() { } } -// UpdateSubConnState forwards the update to the appropriate child. -func (gsb *Balancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) { +// updateSubConnState forwards the update to the appropriate child. +func (gsb *Balancer) updateSubConnState(sc balancer.SubConn, state balancer.SubConnState, cb func(balancer.SubConnState)) { gsb.currentMu.Lock() defer gsb.currentMu.Unlock() gsb.mu.Lock() @@ -214,13 +214,26 @@ func (gsb *Balancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubC } else if gsb.balancerPending != nil && gsb.balancerPending.subconns[sc] { balToUpdate = gsb.balancerPending } - gsb.mu.Unlock() if balToUpdate == nil { // SubConn belonged to a stale lb policy that has not yet fully closed, // or the balancer was already closed. + gsb.mu.Unlock() return } - balToUpdate.UpdateSubConnState(sc, state) + if state.ConnectivityState == connectivity.Shutdown { + delete(balToUpdate.subconns, sc) + } + gsb.mu.Unlock() + if cb != nil { + cb(state) + } else { + balToUpdate.UpdateSubConnState(sc, state) + } +} + +// UpdateSubConnState forwards the update to the appropriate child. +func (gsb *Balancer) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) { + gsb.updateSubConnState(sc, state, nil) } // Close closes any active child balancers. @@ -242,7 +255,7 @@ func (gsb *Balancer) Close() { // // It implements the balancer.ClientConn interface and is passed down in that // capacity to the wrapped balancer. It maintains a set of subConns created by -// the wrapped balancer and calls from the latter to create/update/remove +// the wrapped balancer and calls from the latter to create/update/shutdown // SubConns update this set before being forwarded to the parent ClientConn. // State updates from the wrapped balancer can result in invocation of the // graceful switch logic. @@ -254,21 +267,10 @@ type balancerWrapper struct { subconns map[balancer.SubConn]bool // subconns created by this balancer } -func (bw *balancerWrapper) UpdateSubConnState(sc balancer.SubConn, state balancer.SubConnState) { - if state.ConnectivityState == connectivity.Shutdown { - bw.gsb.mu.Lock() - delete(bw.subconns, sc) - bw.gsb.mu.Unlock() - } - // There is no need to protect this read with a mutex, as the write to the - // Balancer field happens in SwitchTo, which completes before this can be - // called. - bw.Balancer.UpdateSubConnState(sc, state) -} - -// Close closes the underlying LB policy and removes the subconns it created. bw -// must not be referenced via balancerCurrent or balancerPending in gsb when -// called. gsb.mu must not be held. Does not panic with a nil receiver. +// Close closes the underlying LB policy and shuts down the subconns it +// created. bw must not be referenced via balancerCurrent or balancerPending in +// gsb when called. gsb.mu must not be held. Does not panic with a nil +// receiver. func (bw *balancerWrapper) Close() { // before Close is called. if bw == nil { @@ -281,7 +283,7 @@ func (bw *balancerWrapper) Close() { bw.Balancer.Close() bw.gsb.mu.Lock() for sc := range bw.subconns { - bw.gsb.cc.RemoveSubConn(sc) + sc.Shutdown() } bw.gsb.mu.Unlock() } @@ -335,13 +337,16 @@ func (bw *balancerWrapper) NewSubConn(addrs []resolver.Address, opts balancer.Ne } bw.gsb.mu.Unlock() + var sc balancer.SubConn + oldListener := opts.StateListener + opts.StateListener = func(state balancer.SubConnState) { bw.gsb.updateSubConnState(sc, state, oldListener) } sc, err := bw.gsb.cc.NewSubConn(addrs, opts) if err != nil { return nil, err } bw.gsb.mu.Lock() if !bw.gsb.balancerCurrentOrPending(bw) { // balancer was closed during this call - bw.gsb.cc.RemoveSubConn(sc) + sc.Shutdown() bw.gsb.mu.Unlock() return nil, fmt.Errorf("%T at address %p that called NewSubConn is deleted", bw, bw) } @@ -360,13 +365,9 @@ func (bw *balancerWrapper) ResolveNow(opts resolver.ResolveNowOptions) { } func (bw *balancerWrapper) RemoveSubConn(sc balancer.SubConn) { - bw.gsb.mu.Lock() - if !bw.gsb.balancerCurrentOrPending(bw) { - bw.gsb.mu.Unlock() - return - } - bw.gsb.mu.Unlock() - bw.gsb.cc.RemoveSubConn(sc) + // Note: existing third party balancers may call this, so it must remain + // until RemoveSubConn is fully removed. + sc.Shutdown() } func (bw *balancerWrapper) UpdateAddresses(sc balancer.SubConn, addrs []resolver.Address) { diff --git a/vendor/google.golang.org/grpc/internal/balancerload/load.go b/vendor/google.golang.org/grpc/internal/balancerload/load.go index 3a905d9665..94a08d6875 100644 --- a/vendor/google.golang.org/grpc/internal/balancerload/load.go +++ b/vendor/google.golang.org/grpc/internal/balancerload/load.go @@ -25,7 +25,7 @@ import ( // Parser converts loads from metadata into a concrete type. type Parser interface { // Parse parses loads from metadata. - Parse(md metadata.MD) interface{} + Parse(md metadata.MD) any } var parser Parser @@ -38,7 +38,7 @@ func SetParser(lr Parser) { } // Parse calls parser.Read(). -func Parse(md metadata.MD) interface{} { +func Parse(md metadata.MD) any { if parser == nil { return nil } diff --git a/vendor/google.golang.org/grpc/internal/binarylog/method_logger.go b/vendor/google.golang.org/grpc/internal/binarylog/method_logger.go index 6c3f632215..0f31274a3c 100644 --- a/vendor/google.golang.org/grpc/internal/binarylog/method_logger.go +++ b/vendor/google.golang.org/grpc/internal/binarylog/method_logger.go @@ -230,7 +230,7 @@ type ClientMessage struct { OnClientSide bool // Message can be a proto.Message or []byte. Other messages formats are not // supported. - Message interface{} + Message any } func (c *ClientMessage) toProto() *binlogpb.GrpcLogEntry { @@ -270,7 +270,7 @@ type ServerMessage struct { OnClientSide bool // Message can be a proto.Message or []byte. Other messages formats are not // supported. - Message interface{} + Message any } func (c *ServerMessage) toProto() *binlogpb.GrpcLogEntry { diff --git a/vendor/google.golang.org/grpc/internal/buffer/unbounded.go b/vendor/google.golang.org/grpc/internal/buffer/unbounded.go index 81c2f5fd76..4399c3df49 100644 --- a/vendor/google.golang.org/grpc/internal/buffer/unbounded.go +++ b/vendor/google.golang.org/grpc/internal/buffer/unbounded.go @@ -28,25 +28,25 @@ import "sync" // the underlying mutex used for synchronization. // // Unbounded supports values of any type to be stored in it by using a channel -// of `interface{}`. This means that a call to Put() incurs an extra memory -// allocation, and also that users need a type assertion while reading. For -// performance critical code paths, using Unbounded is strongly discouraged and -// defining a new type specific implementation of this buffer is preferred. See +// of `any`. This means that a call to Put() incurs an extra memory allocation, +// and also that users need a type assertion while reading. For performance +// critical code paths, using Unbounded is strongly discouraged and defining a +// new type specific implementation of this buffer is preferred. See // internal/transport/transport.go for an example of this. type Unbounded struct { - c chan interface{} + c chan any closed bool mu sync.Mutex - backlog []interface{} + backlog []any } // NewUnbounded returns a new instance of Unbounded. func NewUnbounded() *Unbounded { - return &Unbounded{c: make(chan interface{}, 1)} + return &Unbounded{c: make(chan any, 1)} } // Put adds t to the unbounded buffer. -func (b *Unbounded) Put(t interface{}) { +func (b *Unbounded) Put(t any) { b.mu.Lock() defer b.mu.Unlock() if b.closed { @@ -89,7 +89,7 @@ func (b *Unbounded) Load() { // // If the unbounded buffer is closed, the read channel returned by this method // is closed. -func (b *Unbounded) Get() <-chan interface{} { +func (b *Unbounded) Get() <-chan any { return b.c } diff --git a/vendor/google.golang.org/grpc/internal/channelz/funcs.go b/vendor/google.golang.org/grpc/internal/channelz/funcs.go index 777cbcd792..5395e77529 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/funcs.go +++ b/vendor/google.golang.org/grpc/internal/channelz/funcs.go @@ -24,9 +24,7 @@ package channelz import ( - "context" "errors" - "fmt" "sort" "sync" "sync/atomic" @@ -40,8 +38,11 @@ const ( ) var ( - db dbWrapper - idGen idGenerator + // IDGen is the global channelz entity ID generator. It should not be used + // outside this package except by tests. + IDGen IDGenerator + + db dbWrapper // EntryPerPage defines the number of channelz entries to be shown on a web page. EntryPerPage = int64(50) curState int32 @@ -52,14 +53,14 @@ var ( func TurnOn() { if !IsOn() { db.set(newChannelMap()) - idGen.reset() + IDGen.Reset() atomic.StoreInt32(&curState, 1) } } // IsOn returns whether channelz data collection is on. func IsOn() bool { - return atomic.CompareAndSwapInt32(&curState, 1, 1) + return atomic.LoadInt32(&curState) == 1 } // SetMaxTraceEntry sets maximum number of trace entry per entity (i.e. channel/subchannel). @@ -97,43 +98,6 @@ func (d *dbWrapper) get() *channelMap { return d.DB } -// NewChannelzStorageForTesting initializes channelz data storage and id -// generator for testing purposes. -// -// Returns a cleanup function to be invoked by the test, which waits for up to -// 10s for all channelz state to be reset by the grpc goroutines when those -// entities get closed. This cleanup function helps with ensuring that tests -// don't mess up each other. -func NewChannelzStorageForTesting() (cleanup func() error) { - db.set(newChannelMap()) - idGen.reset() - - return func() error { - cm := db.get() - if cm == nil { - return nil - } - - ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) - defer cancel() - ticker := time.NewTicker(10 * time.Millisecond) - defer ticker.Stop() - for { - cm.mu.RLock() - topLevelChannels, servers, channels, subChannels, listenSockets, normalSockets := len(cm.topLevelChannels), len(cm.servers), len(cm.channels), len(cm.subChannels), len(cm.listenSockets), len(cm.normalSockets) - cm.mu.RUnlock() - - if err := ctx.Err(); err != nil { - return fmt.Errorf("after 10s the channelz map has not been cleaned up yet, topchannels: %d, servers: %d, channels: %d, subchannels: %d, listen sockets: %d, normal sockets: %d", topLevelChannels, servers, channels, subChannels, listenSockets, normalSockets) - } - if topLevelChannels == 0 && servers == 0 && channels == 0 && subChannels == 0 && listenSockets == 0 && normalSockets == 0 { - return nil - } - <-ticker.C - } - } -} - // GetTopChannels returns a slice of top channel's ChannelMetric, along with a // boolean indicating whether there's more top channels to be queried for. // @@ -193,7 +157,7 @@ func GetServer(id int64) *ServerMetric { // // If channelz is not turned ON, the channelz database is not mutated. func RegisterChannel(c Channel, pid *Identifier, ref string) *Identifier { - id := idGen.genID() + id := IDGen.genID() var parent int64 isTopChannel := true if pid != nil { @@ -229,7 +193,7 @@ func RegisterSubChannel(c Channel, pid *Identifier, ref string) (*Identifier, er if pid == nil { return nil, errors.New("a SubChannel's parent id cannot be nil") } - id := idGen.genID() + id := IDGen.genID() if !IsOn() { return newIdentifer(RefSubChannel, id, pid), nil } @@ -251,7 +215,7 @@ func RegisterSubChannel(c Channel, pid *Identifier, ref string) (*Identifier, er // // If channelz is not turned ON, the channelz database is not mutated. func RegisterServer(s Server, ref string) *Identifier { - id := idGen.genID() + id := IDGen.genID() if !IsOn() { return newIdentifer(RefServer, id, nil) } @@ -277,7 +241,7 @@ func RegisterListenSocket(s Socket, pid *Identifier, ref string) (*Identifier, e if pid == nil { return nil, errors.New("a ListenSocket's parent id cannot be 0") } - id := idGen.genID() + id := IDGen.genID() if !IsOn() { return newIdentifer(RefListenSocket, id, pid), nil } @@ -297,7 +261,7 @@ func RegisterNormalSocket(s Socket, pid *Identifier, ref string) (*Identifier, e if pid == nil { return nil, errors.New("a NormalSocket's parent id cannot be 0") } - id := idGen.genID() + id := IDGen.genID() if !IsOn() { return newIdentifer(RefNormalSocket, id, pid), nil } @@ -776,14 +740,17 @@ func (c *channelMap) GetServer(id int64) *ServerMetric { return sm } -type idGenerator struct { +// IDGenerator is an incrementing atomic that tracks IDs for channelz entities. +type IDGenerator struct { id int64 } -func (i *idGenerator) reset() { +// Reset resets the generated ID back to zero. Should only be used at +// initialization or by tests sensitive to the ID number. +func (i *IDGenerator) Reset() { atomic.StoreInt64(&i.id, 0) } -func (i *idGenerator) genID() int64 { +func (i *IDGenerator) genID() int64 { return atomic.AddInt64(&i.id, 1) } diff --git a/vendor/google.golang.org/grpc/internal/channelz/logging.go b/vendor/google.golang.org/grpc/internal/channelz/logging.go index 8e13a3d2ce..f89e6f77bb 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/logging.go +++ b/vendor/google.golang.org/grpc/internal/channelz/logging.go @@ -31,7 +31,7 @@ func withParens(id *Identifier) string { } // Info logs and adds a trace event if channelz is on. -func Info(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { +func Info(l grpclog.DepthLoggerV2, id *Identifier, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprint(args...), Severity: CtInfo, @@ -39,7 +39,7 @@ func Info(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { } // Infof logs and adds a trace event if channelz is on. -func Infof(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...interface{}) { +func Infof(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprintf(format, args...), Severity: CtInfo, @@ -47,7 +47,7 @@ func Infof(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...inter } // Warning logs and adds a trace event if channelz is on. -func Warning(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { +func Warning(l grpclog.DepthLoggerV2, id *Identifier, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprint(args...), Severity: CtWarning, @@ -55,7 +55,7 @@ func Warning(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { } // Warningf logs and adds a trace event if channelz is on. -func Warningf(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...interface{}) { +func Warningf(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprintf(format, args...), Severity: CtWarning, @@ -63,7 +63,7 @@ func Warningf(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...in } // Error logs and adds a trace event if channelz is on. -func Error(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { +func Error(l grpclog.DepthLoggerV2, id *Identifier, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprint(args...), Severity: CtError, @@ -71,7 +71,7 @@ func Error(l grpclog.DepthLoggerV2, id *Identifier, args ...interface{}) { } // Errorf logs and adds a trace event if channelz is on. -func Errorf(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...interface{}) { +func Errorf(l grpclog.DepthLoggerV2, id *Identifier, format string, args ...any) { AddTraceEvent(l, id, 1, &TraceEventDesc{ Desc: fmt.Sprintf(format, args...), Severity: CtError, diff --git a/vendor/google.golang.org/grpc/internal/channelz/types.go b/vendor/google.golang.org/grpc/internal/channelz/types.go index 7b2f350e2e..1d4020f537 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/types.go +++ b/vendor/google.golang.org/grpc/internal/channelz/types.go @@ -628,6 +628,7 @@ type tracedChannel interface { type channelTrace struct { cm *channelMap + clearCalled bool createdTime time.Time eventCount int64 mu sync.Mutex @@ -656,6 +657,10 @@ func (c *channelTrace) append(e *TraceEvent) { } func (c *channelTrace) clear() { + if c.clearCalled { + return + } + c.clearCalled = true c.mu.Lock() for _, e := range c.events { if e.RefID != 0 { diff --git a/vendor/google.golang.org/grpc/internal/channelz/util_linux.go b/vendor/google.golang.org/grpc/internal/channelz/util_linux.go index 8d194e44e1..98288c3f86 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/util_linux.go +++ b/vendor/google.golang.org/grpc/internal/channelz/util_linux.go @@ -23,7 +23,7 @@ import ( ) // GetSocketOption gets the socket option info of the conn. -func GetSocketOption(socket interface{}) *SocketOptionData { +func GetSocketOption(socket any) *SocketOptionData { c, ok := socket.(syscall.Conn) if !ok { return nil diff --git a/vendor/google.golang.org/grpc/internal/channelz/util_nonlinux.go b/vendor/google.golang.org/grpc/internal/channelz/util_nonlinux.go index 837ddc4024..b5568b22e2 100644 --- a/vendor/google.golang.org/grpc/internal/channelz/util_nonlinux.go +++ b/vendor/google.golang.org/grpc/internal/channelz/util_nonlinux.go @@ -22,6 +22,6 @@ package channelz // GetSocketOption gets the socket option info of the conn. -func GetSocketOption(c interface{}) *SocketOptionData { +func GetSocketOption(c any) *SocketOptionData { return nil } diff --git a/vendor/google.golang.org/grpc/internal/credentials/credentials.go b/vendor/google.golang.org/grpc/internal/credentials/credentials.go index 32c9b59033..9deee7f651 100644 --- a/vendor/google.golang.org/grpc/internal/credentials/credentials.go +++ b/vendor/google.golang.org/grpc/internal/credentials/credentials.go @@ -25,12 +25,12 @@ import ( type requestInfoKey struct{} // NewRequestInfoContext creates a context with ri. -func NewRequestInfoContext(ctx context.Context, ri interface{}) context.Context { +func NewRequestInfoContext(ctx context.Context, ri any) context.Context { return context.WithValue(ctx, requestInfoKey{}, ri) } // RequestInfoFromContext extracts the RequestInfo from ctx. -func RequestInfoFromContext(ctx context.Context) interface{} { +func RequestInfoFromContext(ctx context.Context) any { return ctx.Value(requestInfoKey{}) } @@ -39,11 +39,11 @@ func RequestInfoFromContext(ctx context.Context) interface{} { type clientHandshakeInfoKey struct{} // ClientHandshakeInfoFromContext extracts the ClientHandshakeInfo from ctx. -func ClientHandshakeInfoFromContext(ctx context.Context) interface{} { +func ClientHandshakeInfoFromContext(ctx context.Context) any { return ctx.Value(clientHandshakeInfoKey{}) } // NewClientHandshakeInfoContext creates a context with chi. -func NewClientHandshakeInfoContext(ctx context.Context, chi interface{}) context.Context { +func NewClientHandshakeInfoContext(ctx context.Context, chi any) context.Context { return context.WithValue(ctx, clientHandshakeInfoKey{}, chi) } diff --git a/vendor/google.golang.org/grpc/internal/envconfig/envconfig.go b/vendor/google.golang.org/grpc/internal/envconfig/envconfig.go index 80fd5c7d2a..3cf10ddfbd 100644 --- a/vendor/google.golang.org/grpc/internal/envconfig/envconfig.go +++ b/vendor/google.golang.org/grpc/internal/envconfig/envconfig.go @@ -37,9 +37,15 @@ var ( // checking which NACKs configs specifying ring sizes > 8*1024*1024 (~8M). RingHashCap = uint64FromEnv("GRPC_RING_HASH_CAP", 4096, 1, 8*1024*1024) // PickFirstLBConfig is set if we should support configuration of the - // pick_first LB policy, which can be enabled by setting the environment - // variable "GRPC_EXPERIMENTAL_PICKFIRST_LB_CONFIG" to "true". - PickFirstLBConfig = boolFromEnv("GRPC_EXPERIMENTAL_PICKFIRST_LB_CONFIG", false) + // pick_first LB policy. + PickFirstLBConfig = boolFromEnv("GRPC_EXPERIMENTAL_PICKFIRST_LB_CONFIG", true) + // LeastRequestLB is set if we should support the least_request_experimental + // LB policy, which can be enabled by setting the environment variable + // "GRPC_EXPERIMENTAL_ENABLE_LEAST_REQUEST" to "true". + LeastRequestLB = boolFromEnv("GRPC_EXPERIMENTAL_ENABLE_LEAST_REQUEST", false) + // ALTSMaxConcurrentHandshakes is the maximum number of concurrent ALTS + // handshakes that can be performed. + ALTSMaxConcurrentHandshakes = uint64FromEnv("GRPC_ALTS_MAX_CONCURRENT_HANDSHAKES", 100, 1, 100) ) func boolFromEnv(envVar string, def bool) bool { diff --git a/vendor/google.golang.org/grpc/internal/grpclog/grpclog.go b/vendor/google.golang.org/grpc/internal/grpclog/grpclog.go index b68e26a364..bfc45102ab 100644 --- a/vendor/google.golang.org/grpc/internal/grpclog/grpclog.go +++ b/vendor/google.golang.org/grpc/internal/grpclog/grpclog.go @@ -30,7 +30,7 @@ var Logger LoggerV2 var DepthLogger DepthLoggerV2 // InfoDepth logs to the INFO log at the specified depth. -func InfoDepth(depth int, args ...interface{}) { +func InfoDepth(depth int, args ...any) { if DepthLogger != nil { DepthLogger.InfoDepth(depth, args...) } else { @@ -39,7 +39,7 @@ func InfoDepth(depth int, args ...interface{}) { } // WarningDepth logs to the WARNING log at the specified depth. -func WarningDepth(depth int, args ...interface{}) { +func WarningDepth(depth int, args ...any) { if DepthLogger != nil { DepthLogger.WarningDepth(depth, args...) } else { @@ -48,7 +48,7 @@ func WarningDepth(depth int, args ...interface{}) { } // ErrorDepth logs to the ERROR log at the specified depth. -func ErrorDepth(depth int, args ...interface{}) { +func ErrorDepth(depth int, args ...any) { if DepthLogger != nil { DepthLogger.ErrorDepth(depth, args...) } else { @@ -57,7 +57,7 @@ func ErrorDepth(depth int, args ...interface{}) { } // FatalDepth logs to the FATAL log at the specified depth. -func FatalDepth(depth int, args ...interface{}) { +func FatalDepth(depth int, args ...any) { if DepthLogger != nil { DepthLogger.FatalDepth(depth, args...) } else { @@ -71,35 +71,35 @@ func FatalDepth(depth int, args ...interface{}) { // is defined here to avoid a circular dependency. type LoggerV2 interface { // Info logs to INFO log. Arguments are handled in the manner of fmt.Print. - Info(args ...interface{}) + Info(args ...any) // Infoln logs to INFO log. Arguments are handled in the manner of fmt.Println. - Infoln(args ...interface{}) + Infoln(args ...any) // Infof logs to INFO log. Arguments are handled in the manner of fmt.Printf. - Infof(format string, args ...interface{}) + Infof(format string, args ...any) // Warning logs to WARNING log. Arguments are handled in the manner of fmt.Print. - Warning(args ...interface{}) + Warning(args ...any) // Warningln logs to WARNING log. Arguments are handled in the manner of fmt.Println. - Warningln(args ...interface{}) + Warningln(args ...any) // Warningf logs to WARNING log. Arguments are handled in the manner of fmt.Printf. - Warningf(format string, args ...interface{}) + Warningf(format string, args ...any) // Error logs to ERROR log. Arguments are handled in the manner of fmt.Print. - Error(args ...interface{}) + Error(args ...any) // Errorln logs to ERROR log. Arguments are handled in the manner of fmt.Println. - Errorln(args ...interface{}) + Errorln(args ...any) // Errorf logs to ERROR log. Arguments are handled in the manner of fmt.Printf. - Errorf(format string, args ...interface{}) + Errorf(format string, args ...any) // Fatal logs to ERROR log. Arguments are handled in the manner of fmt.Print. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatal(args ...interface{}) + Fatal(args ...any) // Fatalln logs to ERROR log. Arguments are handled in the manner of fmt.Println. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatalln(args ...interface{}) + Fatalln(args ...any) // Fatalf logs to ERROR log. Arguments are handled in the manner of fmt.Printf. // gRPC ensures that all Fatal logs will exit with os.Exit(1). // Implementations may also call os.Exit() with a non-zero exit code. - Fatalf(format string, args ...interface{}) + Fatalf(format string, args ...any) // V reports whether verbosity level l is at least the requested verbose level. V(l int) bool } @@ -116,11 +116,11 @@ type LoggerV2 interface { // later release. type DepthLoggerV2 interface { // InfoDepth logs to INFO log at the specified depth. Arguments are handled in the manner of fmt.Println. - InfoDepth(depth int, args ...interface{}) + InfoDepth(depth int, args ...any) // WarningDepth logs to WARNING log at the specified depth. Arguments are handled in the manner of fmt.Println. - WarningDepth(depth int, args ...interface{}) + WarningDepth(depth int, args ...any) // ErrorDepth logs to ERROR log at the specified depth. Arguments are handled in the manner of fmt.Println. - ErrorDepth(depth int, args ...interface{}) + ErrorDepth(depth int, args ...any) // FatalDepth logs to FATAL log at the specified depth. Arguments are handled in the manner of fmt.Println. - FatalDepth(depth int, args ...interface{}) + FatalDepth(depth int, args ...any) } diff --git a/vendor/google.golang.org/grpc/internal/grpclog/prefixLogger.go b/vendor/google.golang.org/grpc/internal/grpclog/prefixLogger.go index 02224b42ca..faa998de76 100644 --- a/vendor/google.golang.org/grpc/internal/grpclog/prefixLogger.go +++ b/vendor/google.golang.org/grpc/internal/grpclog/prefixLogger.go @@ -31,7 +31,7 @@ type PrefixLogger struct { } // Infof does info logging. -func (pl *PrefixLogger) Infof(format string, args ...interface{}) { +func (pl *PrefixLogger) Infof(format string, args ...any) { if pl != nil { // Handle nil, so the tests can pass in a nil logger. format = pl.prefix + format @@ -42,7 +42,7 @@ func (pl *PrefixLogger) Infof(format string, args ...interface{}) { } // Warningf does warning logging. -func (pl *PrefixLogger) Warningf(format string, args ...interface{}) { +func (pl *PrefixLogger) Warningf(format string, args ...any) { if pl != nil { format = pl.prefix + format pl.logger.WarningDepth(1, fmt.Sprintf(format, args...)) @@ -52,7 +52,7 @@ func (pl *PrefixLogger) Warningf(format string, args ...interface{}) { } // Errorf does error logging. -func (pl *PrefixLogger) Errorf(format string, args ...interface{}) { +func (pl *PrefixLogger) Errorf(format string, args ...any) { if pl != nil { format = pl.prefix + format pl.logger.ErrorDepth(1, fmt.Sprintf(format, args...)) @@ -62,7 +62,7 @@ func (pl *PrefixLogger) Errorf(format string, args ...interface{}) { } // Debugf does info logging at verbose level 2. -func (pl *PrefixLogger) Debugf(format string, args ...interface{}) { +func (pl *PrefixLogger) Debugf(format string, args ...any) { // TODO(6044): Refactor interfaces LoggerV2 and DepthLogger, and maybe // rewrite PrefixLogger a little to ensure that we don't use the global // `Logger` here, and instead use the `logger` field. diff --git a/vendor/google.golang.org/grpc/internal/grpcrand/grpcrand.go b/vendor/google.golang.org/grpc/internal/grpcrand/grpcrand.go index d08e3e9076..aa97273e7d 100644 --- a/vendor/google.golang.org/grpc/internal/grpcrand/grpcrand.go +++ b/vendor/google.golang.org/grpc/internal/grpcrand/grpcrand.go @@ -80,6 +80,13 @@ func Uint32() uint32 { return r.Uint32() } +// ExpFloat64 implements rand.ExpFloat64 on the grpcrand global source. +func ExpFloat64() float64 { + mu.Lock() + defer mu.Unlock() + return r.ExpFloat64() +} + // Shuffle implements rand.Shuffle on the grpcrand global source. var Shuffle = func(n int, f func(int, int)) { mu.Lock() diff --git a/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go b/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go index 37b8d4117e..900917dbe6 100644 --- a/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go +++ b/vendor/google.golang.org/grpc/internal/grpcsync/callback_serializer.go @@ -32,10 +32,10 @@ import ( // // This type is safe for concurrent access. type CallbackSerializer struct { - // Done is closed once the serializer is shut down completely, i.e all + // done is closed once the serializer is shut down completely, i.e all // scheduled callbacks are executed and the serializer has deallocated all // its resources. - Done chan struct{} + done chan struct{} callbacks *buffer.Unbounded closedMu sync.Mutex @@ -48,12 +48,12 @@ type CallbackSerializer struct { // callbacks will be added once this context is canceled, and any pending un-run // callbacks will be executed before the serializer is shut down. func NewCallbackSerializer(ctx context.Context) *CallbackSerializer { - t := &CallbackSerializer{ - Done: make(chan struct{}), + cs := &CallbackSerializer{ + done: make(chan struct{}), callbacks: buffer.NewUnbounded(), } - go t.run(ctx) - return t + go cs.run(ctx) + return cs } // Schedule adds a callback to be scheduled after existing callbacks are run. @@ -64,56 +64,62 @@ func NewCallbackSerializer(ctx context.Context) *CallbackSerializer { // Return value indicates if the callback was successfully added to the list of // callbacks to be executed by the serializer. It is not possible to add // callbacks once the context passed to NewCallbackSerializer is cancelled. -func (t *CallbackSerializer) Schedule(f func(ctx context.Context)) bool { - t.closedMu.Lock() - defer t.closedMu.Unlock() +func (cs *CallbackSerializer) Schedule(f func(ctx context.Context)) bool { + cs.closedMu.Lock() + defer cs.closedMu.Unlock() - if t.closed { + if cs.closed { return false } - t.callbacks.Put(f) + cs.callbacks.Put(f) return true } -func (t *CallbackSerializer) run(ctx context.Context) { +func (cs *CallbackSerializer) run(ctx context.Context) { var backlog []func(context.Context) - defer close(t.Done) + defer close(cs.done) for ctx.Err() == nil { select { case <-ctx.Done(): // Do nothing here. Next iteration of the for loop will not happen, // since ctx.Err() would be non-nil. - case callback, ok := <-t.callbacks.Get(): + case callback, ok := <-cs.callbacks.Get(): if !ok { return } - t.callbacks.Load() + cs.callbacks.Load() callback.(func(ctx context.Context))(ctx) } } // Fetch pending callbacks if any, and execute them before returning from - // this method and closing t.Done. - t.closedMu.Lock() - t.closed = true - backlog = t.fetchPendingCallbacks() - t.callbacks.Close() - t.closedMu.Unlock() + // this method and closing cs.done. + cs.closedMu.Lock() + cs.closed = true + backlog = cs.fetchPendingCallbacks() + cs.callbacks.Close() + cs.closedMu.Unlock() for _, b := range backlog { b(ctx) } } -func (t *CallbackSerializer) fetchPendingCallbacks() []func(context.Context) { +func (cs *CallbackSerializer) fetchPendingCallbacks() []func(context.Context) { var backlog []func(context.Context) for { select { - case b := <-t.callbacks.Get(): + case b := <-cs.callbacks.Get(): backlog = append(backlog, b.(func(context.Context))) - t.callbacks.Load() + cs.callbacks.Load() default: return backlog } } } + +// Done returns a channel that is closed after the context passed to +// NewCallbackSerializer is canceled and all callbacks have been executed. +func (cs *CallbackSerializer) Done() <-chan struct{} { + return cs.done +} diff --git a/vendor/google.golang.org/grpc/internal/grpcsync/pubsub.go b/vendor/google.golang.org/grpc/internal/grpcsync/pubsub.go new file mode 100644 index 0000000000..aef8cec1ab --- /dev/null +++ b/vendor/google.golang.org/grpc/internal/grpcsync/pubsub.go @@ -0,0 +1,121 @@ +/* + * + * Copyright 2023 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package grpcsync + +import ( + "context" + "sync" +) + +// Subscriber represents an entity that is subscribed to messages published on +// a PubSub. It wraps the callback to be invoked by the PubSub when a new +// message is published. +type Subscriber interface { + // OnMessage is invoked when a new message is published. Implementations + // must not block in this method. + OnMessage(msg any) +} + +// PubSub is a simple one-to-many publish-subscribe system that supports +// messages of arbitrary type. It guarantees that messages are delivered in +// the same order in which they were published. +// +// Publisher invokes the Publish() method to publish new messages, while +// subscribers interested in receiving these messages register a callback +// via the Subscribe() method. +// +// Once a PubSub is stopped, no more messages can be published, but any pending +// published messages will be delivered to the subscribers. Done may be used +// to determine when all published messages have been delivered. +type PubSub struct { + cs *CallbackSerializer + + // Access to the below fields are guarded by this mutex. + mu sync.Mutex + msg any + subscribers map[Subscriber]bool +} + +// NewPubSub returns a new PubSub instance. Users should cancel the +// provided context to shutdown the PubSub. +func NewPubSub(ctx context.Context) *PubSub { + return &PubSub{ + cs: NewCallbackSerializer(ctx), + subscribers: map[Subscriber]bool{}, + } +} + +// Subscribe registers the provided Subscriber to the PubSub. +// +// If the PubSub contains a previously published message, the Subscriber's +// OnMessage() callback will be invoked asynchronously with the existing +// message to begin with, and subsequently for every newly published message. +// +// The caller is responsible for invoking the returned cancel function to +// unsubscribe itself from the PubSub. +func (ps *PubSub) Subscribe(sub Subscriber) (cancel func()) { + ps.mu.Lock() + defer ps.mu.Unlock() + + ps.subscribers[sub] = true + + if ps.msg != nil { + msg := ps.msg + ps.cs.Schedule(func(context.Context) { + ps.mu.Lock() + defer ps.mu.Unlock() + if !ps.subscribers[sub] { + return + } + sub.OnMessage(msg) + }) + } + + return func() { + ps.mu.Lock() + defer ps.mu.Unlock() + delete(ps.subscribers, sub) + } +} + +// Publish publishes the provided message to the PubSub, and invokes +// callbacks registered by subscribers asynchronously. +func (ps *PubSub) Publish(msg any) { + ps.mu.Lock() + defer ps.mu.Unlock() + + ps.msg = msg + for sub := range ps.subscribers { + s := sub + ps.cs.Schedule(func(context.Context) { + ps.mu.Lock() + defer ps.mu.Unlock() + if !ps.subscribers[s] { + return + } + s.OnMessage(msg) + }) + } +} + +// Done returns a channel that is closed after the context passed to NewPubSub +// is canceled and all updates have been sent to subscribers. +func (ps *PubSub) Done() <-chan struct{} { + return ps.cs.Done() +} diff --git a/vendor/google.golang.org/grpc/idle.go b/vendor/google.golang.org/grpc/internal/idle/idle.go similarity index 61% rename from vendor/google.golang.org/grpc/idle.go rename to vendor/google.golang.org/grpc/internal/idle/idle.go index dc3dc72f6b..6c272476e5 100644 --- a/vendor/google.golang.org/grpc/idle.go +++ b/vendor/google.golang.org/grpc/internal/idle/idle.go @@ -16,7 +16,9 @@ * */ -package grpc +// Package idle contains a component for managing idleness (entering and exiting) +// based on RPC activity. +package idle import ( "fmt" @@ -24,6 +26,8 @@ import ( "sync" "sync/atomic" "time" + + "google.golang.org/grpc/grpclog" ) // For overriding in unit tests. @@ -31,31 +35,31 @@ var timeAfterFunc = func(d time.Duration, f func()) *time.Timer { return time.AfterFunc(d, f) } -// idlenessEnforcer is the functionality provided by grpc.ClientConn to enter +// Enforcer is the functionality provided by grpc.ClientConn to enter // and exit from idle mode. -type idlenessEnforcer interface { - exitIdleMode() error - enterIdleMode() error +type Enforcer interface { + ExitIdleMode() error + EnterIdleMode() error } -// idlenessManager defines the functionality required to track RPC activity on a +// Manager defines the functionality required to track RPC activity on a // channel. -type idlenessManager interface { - onCallBegin() error - onCallEnd() - close() +type Manager interface { + OnCallBegin() error + OnCallEnd() + Close() } -type noopIdlenessManager struct{} +type noopManager struct{} -func (noopIdlenessManager) onCallBegin() error { return nil } -func (noopIdlenessManager) onCallEnd() {} -func (noopIdlenessManager) close() {} +func (noopManager) OnCallBegin() error { return nil } +func (noopManager) OnCallEnd() {} +func (noopManager) Close() {} -// idlenessManagerImpl implements the idlenessManager interface. It uses atomic -// operations to synchronize access to shared state and a mutex to guarantee -// mutual exclusion in a critical section. -type idlenessManagerImpl struct { +// manager implements the Manager interface. It uses atomic operations to +// synchronize access to shared state and a mutex to guarantee mutual exclusion +// in a critical section. +type manager struct { // State accessed atomically. lastCallEndTime int64 // Unix timestamp in nanos; time when the most recent RPC completed. activeCallsCount int32 // Count of active RPCs; -math.MaxInt32 means channel is idle or is trying to get there. @@ -64,14 +68,15 @@ type idlenessManagerImpl struct { // Can be accessed without atomics or mutex since these are set at creation // time and read-only after that. - enforcer idlenessEnforcer // Functionality provided by grpc.ClientConn. - timeout int64 // Idle timeout duration nanos stored as an int64. + enforcer Enforcer // Functionality provided by grpc.ClientConn. + timeout int64 // Idle timeout duration nanos stored as an int64. + logger grpclog.LoggerV2 // idleMu is used to guarantee mutual exclusion in two scenarios: // - Opposing intentions: // - a: Idle timeout has fired and handleIdleTimeout() is trying to put // the channel in idle mode because the channel has been inactive. - // - b: At the same time an RPC is made on the channel, and onCallBegin() + // - b: At the same time an RPC is made on the channel, and OnCallBegin() // is trying to prevent the channel from going idle. // - Competing intentions: // - The channel is in idle mode and there are multiple RPCs starting at @@ -83,28 +88,37 @@ type idlenessManagerImpl struct { timer *time.Timer } -// newIdlenessManager creates a new idleness manager implementation for the +// ManagerOptions is a collection of options used by +// NewManager. +type ManagerOptions struct { + Enforcer Enforcer + Timeout time.Duration + Logger grpclog.LoggerV2 +} + +// NewManager creates a new idleness manager implementation for the // given idle timeout. -func newIdlenessManager(enforcer idlenessEnforcer, idleTimeout time.Duration) idlenessManager { - if idleTimeout == 0 { - return noopIdlenessManager{} +func NewManager(opts ManagerOptions) Manager { + if opts.Timeout == 0 { + return noopManager{} } - i := &idlenessManagerImpl{ - enforcer: enforcer, - timeout: int64(idleTimeout), + m := &manager{ + enforcer: opts.Enforcer, + timeout: int64(opts.Timeout), + logger: opts.Logger, } - i.timer = timeAfterFunc(idleTimeout, i.handleIdleTimeout) - return i + m.timer = timeAfterFunc(opts.Timeout, m.handleIdleTimeout) + return m } // resetIdleTimer resets the idle timer to the given duration. This method // should only be called from the timer callback. -func (i *idlenessManagerImpl) resetIdleTimer(d time.Duration) { - i.idleMu.Lock() - defer i.idleMu.Unlock() +func (m *manager) resetIdleTimer(d time.Duration) { + m.idleMu.Lock() + defer m.idleMu.Unlock() - if i.timer == nil { + if m.timer == nil { // Only close sets timer to nil. We are done. return } @@ -112,47 +126,47 @@ func (i *idlenessManagerImpl) resetIdleTimer(d time.Duration) { // It is safe to ignore the return value from Reset() because this method is // only ever called from the timer callback, which means the timer has // already fired. - i.timer.Reset(d) + m.timer.Reset(d) } // handleIdleTimeout is the timer callback that is invoked upon expiry of the // configured idle timeout. The channel is considered inactive if there are no // ongoing calls and no RPC activity since the last time the timer fired. -func (i *idlenessManagerImpl) handleIdleTimeout() { - if i.isClosed() { +func (m *manager) handleIdleTimeout() { + if m.isClosed() { return } - if atomic.LoadInt32(&i.activeCallsCount) > 0 { - i.resetIdleTimer(time.Duration(i.timeout)) + if atomic.LoadInt32(&m.activeCallsCount) > 0 { + m.resetIdleTimer(time.Duration(m.timeout)) return } // There has been activity on the channel since we last got here. Reset the // timer and return. - if atomic.LoadInt32(&i.activeSinceLastTimerCheck) == 1 { + if atomic.LoadInt32(&m.activeSinceLastTimerCheck) == 1 { // Set the timer to fire after a duration of idle timeout, calculated // from the time the most recent RPC completed. - atomic.StoreInt32(&i.activeSinceLastTimerCheck, 0) - i.resetIdleTimer(time.Duration(atomic.LoadInt64(&i.lastCallEndTime) + i.timeout - time.Now().UnixNano())) + atomic.StoreInt32(&m.activeSinceLastTimerCheck, 0) + m.resetIdleTimer(time.Duration(atomic.LoadInt64(&m.lastCallEndTime) + m.timeout - time.Now().UnixNano())) return } // This CAS operation is extremely likely to succeed given that there has // been no activity since the last time we were here. Setting the - // activeCallsCount to -math.MaxInt32 indicates to onCallBegin() that the + // activeCallsCount to -math.MaxInt32 indicates to OnCallBegin() that the // channel is either in idle mode or is trying to get there. - if !atomic.CompareAndSwapInt32(&i.activeCallsCount, 0, -math.MaxInt32) { + if !atomic.CompareAndSwapInt32(&m.activeCallsCount, 0, -math.MaxInt32) { // This CAS operation can fail if an RPC started after we checked for // activity at the top of this method, or one was ongoing from before // the last time we were here. In both case, reset the timer and return. - i.resetIdleTimer(time.Duration(i.timeout)) + m.resetIdleTimer(time.Duration(m.timeout)) return } // Now that we've set the active calls count to -math.MaxInt32, it's time to // actually move to idle mode. - if i.tryEnterIdleMode() { + if m.tryEnterIdleMode() { // Successfully entered idle mode. No timer needed until we exit idle. return } @@ -160,8 +174,8 @@ func (i *idlenessManagerImpl) handleIdleTimeout() { // Failed to enter idle mode due to a concurrent RPC that kept the channel // active, or because of an error from the channel. Undo the attempt to // enter idle, and reset the timer to try again later. - atomic.AddInt32(&i.activeCallsCount, math.MaxInt32) - i.resetIdleTimer(time.Duration(i.timeout)) + atomic.AddInt32(&m.activeCallsCount, math.MaxInt32) + m.resetIdleTimer(time.Duration(m.timeout)) } // tryEnterIdleMode instructs the channel to enter idle mode. But before @@ -171,15 +185,15 @@ func (i *idlenessManagerImpl) handleIdleTimeout() { // Return value indicates whether or not the channel moved to idle mode. // // Holds idleMu which ensures mutual exclusion with exitIdleMode. -func (i *idlenessManagerImpl) tryEnterIdleMode() bool { - i.idleMu.Lock() - defer i.idleMu.Unlock() +func (m *manager) tryEnterIdleMode() bool { + m.idleMu.Lock() + defer m.idleMu.Unlock() - if atomic.LoadInt32(&i.activeCallsCount) != -math.MaxInt32 { + if atomic.LoadInt32(&m.activeCallsCount) != -math.MaxInt32 { // We raced and lost to a new RPC. Very rare, but stop entering idle. return false } - if atomic.LoadInt32(&i.activeSinceLastTimerCheck) == 1 { + if atomic.LoadInt32(&m.activeSinceLastTimerCheck) == 1 { // An very short RPC could have come in (and also finished) after we // checked for calls count and activity in handleIdleTimeout(), but // before the CAS operation. So, we need to check for activity again. @@ -189,99 +203,99 @@ func (i *idlenessManagerImpl) tryEnterIdleMode() bool { // No new RPCs have come in since we last set the active calls count value // -math.MaxInt32 in the timer callback. And since we have the lock, it is // safe to enter idle mode now. - if err := i.enforcer.enterIdleMode(); err != nil { - logger.Errorf("Failed to enter idle mode: %v", err) + if err := m.enforcer.EnterIdleMode(); err != nil { + m.logger.Errorf("Failed to enter idle mode: %v", err) return false } // Successfully entered idle mode. - i.actuallyIdle = true + m.actuallyIdle = true return true } -// onCallBegin is invoked at the start of every RPC. -func (i *idlenessManagerImpl) onCallBegin() error { - if i.isClosed() { +// OnCallBegin is invoked at the start of every RPC. +func (m *manager) OnCallBegin() error { + if m.isClosed() { return nil } - if atomic.AddInt32(&i.activeCallsCount, 1) > 0 { + if atomic.AddInt32(&m.activeCallsCount, 1) > 0 { // Channel is not idle now. Set the activity bit and allow the call. - atomic.StoreInt32(&i.activeSinceLastTimerCheck, 1) + atomic.StoreInt32(&m.activeSinceLastTimerCheck, 1) return nil } // Channel is either in idle mode or is in the process of moving to idle // mode. Attempt to exit idle mode to allow this RPC. - if err := i.exitIdleMode(); err != nil { + if err := m.exitIdleMode(); err != nil { // Undo the increment to calls count, and return an error causing the // RPC to fail. - atomic.AddInt32(&i.activeCallsCount, -1) + atomic.AddInt32(&m.activeCallsCount, -1) return err } - atomic.StoreInt32(&i.activeSinceLastTimerCheck, 1) + atomic.StoreInt32(&m.activeSinceLastTimerCheck, 1) return nil } // exitIdleMode instructs the channel to exit idle mode. // // Holds idleMu which ensures mutual exclusion with tryEnterIdleMode. -func (i *idlenessManagerImpl) exitIdleMode() error { - i.idleMu.Lock() - defer i.idleMu.Unlock() +func (m *manager) exitIdleMode() error { + m.idleMu.Lock() + defer m.idleMu.Unlock() - if !i.actuallyIdle { + if !m.actuallyIdle { // This can happen in two scenarios: // - handleIdleTimeout() set the calls count to -math.MaxInt32 and called // tryEnterIdleMode(). But before the latter could grab the lock, an RPC - // came in and onCallBegin() noticed that the calls count is negative. + // came in and OnCallBegin() noticed that the calls count is negative. // - Channel is in idle mode, and multiple new RPCs come in at the same - // time, all of them notice a negative calls count in onCallBegin and get + // time, all of them notice a negative calls count in OnCallBegin and get // here. The first one to get the lock would got the channel to exit idle. // // Either way, nothing to do here. return nil } - if err := i.enforcer.exitIdleMode(); err != nil { + if err := m.enforcer.ExitIdleMode(); err != nil { return fmt.Errorf("channel failed to exit idle mode: %v", err) } // Undo the idle entry process. This also respects any new RPC attempts. - atomic.AddInt32(&i.activeCallsCount, math.MaxInt32) - i.actuallyIdle = false + atomic.AddInt32(&m.activeCallsCount, math.MaxInt32) + m.actuallyIdle = false // Start a new timer to fire after the configured idle timeout. - i.timer = timeAfterFunc(time.Duration(i.timeout), i.handleIdleTimeout) + m.timer = timeAfterFunc(time.Duration(m.timeout), m.handleIdleTimeout) return nil } -// onCallEnd is invoked at the end of every RPC. -func (i *idlenessManagerImpl) onCallEnd() { - if i.isClosed() { +// OnCallEnd is invoked at the end of every RPC. +func (m *manager) OnCallEnd() { + if m.isClosed() { return } // Record the time at which the most recent call finished. - atomic.StoreInt64(&i.lastCallEndTime, time.Now().UnixNano()) + atomic.StoreInt64(&m.lastCallEndTime, time.Now().UnixNano()) // Decrement the active calls count. This count can temporarily go negative // when the timer callback is in the process of moving the channel to idle // mode, but one or more RPCs come in and complete before the timer callback // can get done with the process of moving to idle mode. - atomic.AddInt32(&i.activeCallsCount, -1) + atomic.AddInt32(&m.activeCallsCount, -1) } -func (i *idlenessManagerImpl) isClosed() bool { - return atomic.LoadInt32(&i.closed) == 1 +func (m *manager) isClosed() bool { + return atomic.LoadInt32(&m.closed) == 1 } -func (i *idlenessManagerImpl) close() { - atomic.StoreInt32(&i.closed, 1) +func (m *manager) Close() { + atomic.StoreInt32(&m.closed, 1) - i.idleMu.Lock() - i.timer.Stop() - i.timer = nil - i.idleMu.Unlock() + m.idleMu.Lock() + m.timer.Stop() + m.timer = nil + m.idleMu.Unlock() } diff --git a/vendor/google.golang.org/grpc/internal/internal.go b/vendor/google.golang.org/grpc/internal/internal.go index 42ff39c844..c8a8c76d62 100644 --- a/vendor/google.golang.org/grpc/internal/internal.go +++ b/vendor/google.golang.org/grpc/internal/internal.go @@ -30,7 +30,7 @@ import ( var ( // WithHealthCheckFunc is set by dialoptions.go - WithHealthCheckFunc interface{} // func (HealthChecker) DialOption + WithHealthCheckFunc any // func (HealthChecker) DialOption // HealthCheckFunc is used to provide client-side LB channel health checking HealthCheckFunc HealthChecker // BalancerUnregister is exported by package balancer to unregister a balancer. @@ -38,8 +38,12 @@ var ( // KeepaliveMinPingTime is the minimum ping interval. This must be 10s by // default, but tests may wish to set it lower for convenience. KeepaliveMinPingTime = 10 * time.Second + // KeepaliveMinServerPingTime is the minimum ping interval for servers. + // This must be 1s by default, but tests may wish to set it lower for + // convenience. + KeepaliveMinServerPingTime = time.Second // ParseServiceConfig parses a JSON representation of the service config. - ParseServiceConfig interface{} // func(string) *serviceconfig.ParseResult + ParseServiceConfig any // func(string) *serviceconfig.ParseResult // EqualServiceConfigForTesting is for testing service config generation and // parsing. Both a and b should be returned by ParseServiceConfig. // This function compares the config without rawJSON stripped, in case the @@ -49,33 +53,33 @@ var ( // given name. This is set by package certprovider for use from xDS // bootstrap code while parsing certificate provider configs in the // bootstrap file. - GetCertificateProviderBuilder interface{} // func(string) certprovider.Builder + GetCertificateProviderBuilder any // func(string) certprovider.Builder // GetXDSHandshakeInfoForTesting returns a pointer to the xds.HandshakeInfo // stored in the passed in attributes. This is set by // credentials/xds/xds.go. - GetXDSHandshakeInfoForTesting interface{} // func (*attributes.Attributes) *xds.HandshakeInfo + GetXDSHandshakeInfoForTesting any // func (*attributes.Attributes) *xds.HandshakeInfo // GetServerCredentials returns the transport credentials configured on a // gRPC server. An xDS-enabled server needs to know what type of credentials // is configured on the underlying gRPC server. This is set by server.go. - GetServerCredentials interface{} // func (*grpc.Server) credentials.TransportCredentials + GetServerCredentials any // func (*grpc.Server) credentials.TransportCredentials // CanonicalString returns the canonical string of the code defined here: // https://github.com/grpc/grpc/blob/master/doc/statuscodes.md. // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - CanonicalString interface{} // func (codes.Code) string + CanonicalString any // func (codes.Code) string // DrainServerTransports initiates a graceful close of existing connections // on a gRPC server accepted on the provided listener address. An // xDS-enabled server invokes this method on a grpc.Server when a particular // listener moves to "not-serving" mode. - DrainServerTransports interface{} // func(*grpc.Server, string) + DrainServerTransports any // func(*grpc.Server, string) // AddGlobalServerOptions adds an array of ServerOption that will be // effective globally for newly created servers. The priority will be: 1. // user-provided; 2. this method; 3. default values. // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - AddGlobalServerOptions interface{} // func(opt ...ServerOption) + AddGlobalServerOptions any // func(opt ...ServerOption) // ClearGlobalServerOptions clears the array of extra ServerOption. This // method is useful in testing and benchmarking. // @@ -88,14 +92,14 @@ var ( // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - AddGlobalDialOptions interface{} // func(opt ...DialOption) + AddGlobalDialOptions any // func(opt ...DialOption) // DisableGlobalDialOptions returns a DialOption that prevents the // ClientConn from applying the global DialOptions (set via // AddGlobalDialOptions). // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - DisableGlobalDialOptions interface{} // func() grpc.DialOption + DisableGlobalDialOptions any // func() grpc.DialOption // ClearGlobalDialOptions clears the array of extra DialOption. This // method is useful in testing and benchmarking. // @@ -104,23 +108,26 @@ var ( ClearGlobalDialOptions func() // JoinDialOptions combines the dial options passed as arguments into a // single dial option. - JoinDialOptions interface{} // func(...grpc.DialOption) grpc.DialOption + JoinDialOptions any // func(...grpc.DialOption) grpc.DialOption // JoinServerOptions combines the server options passed as arguments into a // single server option. - JoinServerOptions interface{} // func(...grpc.ServerOption) grpc.ServerOption + JoinServerOptions any // func(...grpc.ServerOption) grpc.ServerOption // WithBinaryLogger returns a DialOption that specifies the binary logger // for a ClientConn. // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - WithBinaryLogger interface{} // func(binarylog.Logger) grpc.DialOption + WithBinaryLogger any // func(binarylog.Logger) grpc.DialOption // BinaryLogger returns a ServerOption that can set the binary logger for a // server. // // This is used in the 1.0 release of gcp/observability, and thus must not be // deleted or changed. - BinaryLogger interface{} // func(binarylog.Logger) grpc.ServerOption + BinaryLogger any // func(binarylog.Logger) grpc.ServerOption + + // SubscribeToConnectivityStateChanges adds a grpcsync.Subscriber to a provided grpc.ClientConn + SubscribeToConnectivityStateChanges any // func(*grpc.ClientConn, grpcsync.Subscriber) // NewXDSResolverWithConfigForTesting creates a new xds resolver builder using // the provided xds bootstrap config instead of the global configuration from @@ -131,7 +138,7 @@ var ( // // This function should ONLY be used for testing and may not work with some // other features, including the CSDS service. - NewXDSResolverWithConfigForTesting interface{} // func([]byte) (resolver.Builder, error) + NewXDSResolverWithConfigForTesting any // func([]byte) (resolver.Builder, error) // RegisterRLSClusterSpecifierPluginForTesting registers the RLS Cluster // Specifier Plugin for testing purposes, regardless of the XDSRLS environment @@ -163,7 +170,11 @@ var ( UnregisterRBACHTTPFilterForTesting func() // ORCAAllowAnyMinReportingInterval is for examples/orca use ONLY. - ORCAAllowAnyMinReportingInterval interface{} // func(so *orca.ServiceOptions) + ORCAAllowAnyMinReportingInterval any // func(so *orca.ServiceOptions) + + // GRPCResolverSchemeExtraMetadata determines when gRPC will add extra + // metadata to RPCs. + GRPCResolverSchemeExtraMetadata string = "xds" ) // HealthChecker defines the signature of the client-side LB channel health checking function. @@ -174,7 +185,7 @@ var ( // // The health checking protocol is defined at: // https://github.com/grpc/grpc/blob/master/doc/health-checking.md -type HealthChecker func(ctx context.Context, newStream func(string) (interface{}, error), setConnectivityState func(connectivity.State, error), serviceName string) error +type HealthChecker func(ctx context.Context, newStream func(string) (any, error), setConnectivityState func(connectivity.State, error), serviceName string) error const ( // CredsBundleModeFallback switches GoogleDefaultCreds to fallback mode. diff --git a/vendor/google.golang.org/grpc/internal/metadata/metadata.go b/vendor/google.golang.org/grpc/internal/metadata/metadata.go index c82e608e07..900bfb7160 100644 --- a/vendor/google.golang.org/grpc/internal/metadata/metadata.go +++ b/vendor/google.golang.org/grpc/internal/metadata/metadata.go @@ -35,7 +35,7 @@ const mdKey = mdKeyType("grpc.internal.address.metadata") type mdValue metadata.MD -func (m mdValue) Equal(o interface{}) bool { +func (m mdValue) Equal(o any) bool { om, ok := o.(mdValue) if !ok { return false diff --git a/vendor/google.golang.org/grpc/internal/pretty/pretty.go b/vendor/google.golang.org/grpc/internal/pretty/pretty.go index 0177af4b51..7033191375 100644 --- a/vendor/google.golang.org/grpc/internal/pretty/pretty.go +++ b/vendor/google.golang.org/grpc/internal/pretty/pretty.go @@ -35,7 +35,7 @@ const jsonIndent = " " // ToJSON marshals the input into a json string. // // If marshal fails, it falls back to fmt.Sprintf("%+v"). -func ToJSON(e interface{}) string { +func ToJSON(e any) string { switch ee := e.(type) { case protov1.Message: mm := jsonpb.Marshaler{Indent: jsonIndent} diff --git a/vendor/google.golang.org/grpc/internal/resolver/config_selector.go b/vendor/google.golang.org/grpc/internal/resolver/config_selector.go index c7a18a948a..f0603871c9 100644 --- a/vendor/google.golang.org/grpc/internal/resolver/config_selector.go +++ b/vendor/google.golang.org/grpc/internal/resolver/config_selector.go @@ -92,7 +92,7 @@ type ClientStream interface { // calling RecvMsg on the same stream at the same time, but it is not safe // to call SendMsg on the same stream in different goroutines. It is also // not safe to call CloseSend concurrently with SendMsg. - SendMsg(m interface{}) error + SendMsg(m any) error // RecvMsg blocks until it receives a message into m or the stream is // done. It returns io.EOF when the stream completes successfully. On // any other error, the stream is aborted and the error contains the RPC @@ -101,7 +101,7 @@ type ClientStream interface { // It is safe to have a goroutine calling SendMsg and another goroutine // calling RecvMsg on the same stream at the same time, but it is not // safe to call RecvMsg on the same stream in different goroutines. - RecvMsg(m interface{}) error + RecvMsg(m any) error } // ClientInterceptor is an interceptor for gRPC client streams. diff --git a/vendor/google.golang.org/grpc/internal/resolver/dns/dns_resolver.go b/vendor/google.golang.org/grpc/internal/resolver/dns/dns_resolver.go index 09a667f33c..99e1e5b36c 100644 --- a/vendor/google.golang.org/grpc/internal/resolver/dns/dns_resolver.go +++ b/vendor/google.golang.org/grpc/internal/resolver/dns/dns_resolver.go @@ -62,7 +62,8 @@ const ( defaultPort = "443" defaultDNSSvrPort = "53" golang = "GO" - // txtPrefix is the prefix string to be prepended to the host name for txt record lookup. + // txtPrefix is the prefix string to be prepended to the host name for txt + // record lookup. txtPrefix = "_grpc_config." // In DNS, service config is encoded in a TXT record via the mechanism // described in RFC-1464 using the attribute name grpc_config. @@ -86,14 +87,14 @@ var ( minDNSResRate = 30 * time.Second ) -var customAuthorityDialler = func(authority string) func(ctx context.Context, network, address string) (net.Conn, error) { - return func(ctx context.Context, network, address string) (net.Conn, error) { +var addressDialer = func(address string) func(context.Context, string, string) (net.Conn, error) { + return func(ctx context.Context, network, _ string) (net.Conn, error) { var dialer net.Dialer - return dialer.DialContext(ctx, network, authority) + return dialer.DialContext(ctx, network, address) } } -var customAuthorityResolver = func(authority string) (netResolver, error) { +var newNetResolver = func(authority string) (netResolver, error) { host, port, err := parseTarget(authority, defaultDNSSvrPort) if err != nil { return nil, err @@ -103,7 +104,7 @@ var customAuthorityResolver = func(authority string) (netResolver, error) { return &net.Resolver{ PreferGo: true, - Dial: customAuthorityDialler(authorityWithPort), + Dial: addressDialer(authorityWithPort), }, nil } @@ -114,7 +115,8 @@ func NewBuilder() resolver.Builder { type dnsBuilder struct{} -// Build creates and starts a DNS resolver that watches the name resolution of the target. +// Build creates and starts a DNS resolver that watches the name resolution of +// the target. func (b *dnsBuilder) Build(target resolver.Target, cc resolver.ClientConn, opts resolver.BuildOptions) (resolver.Resolver, error) { host, port, err := parseTarget(target.Endpoint(), defaultPort) if err != nil { @@ -143,7 +145,7 @@ func (b *dnsBuilder) Build(target resolver.Target, cc resolver.ClientConn, opts if target.URL.Host == "" { d.resolver = defaultResolver } else { - d.resolver, err = customAuthorityResolver(target.URL.Host) + d.resolver, err = newNetResolver(target.URL.Host) if err != nil { return nil, err } @@ -180,19 +182,22 @@ type dnsResolver struct { ctx context.Context cancel context.CancelFunc cc resolver.ClientConn - // rn channel is used by ResolveNow() to force an immediate resolution of the target. + // rn channel is used by ResolveNow() to force an immediate resolution of the + // target. rn chan struct{} - // wg is used to enforce Close() to return after the watcher() goroutine has finished. - // Otherwise, data race will be possible. [Race Example] in dns_resolver_test we - // replace the real lookup functions with mocked ones to facilitate testing. - // If Close() doesn't wait for watcher() goroutine finishes, race detector sometimes - // will warns lookup (READ the lookup function pointers) inside watcher() goroutine - // has data race with replaceNetFunc (WRITE the lookup function pointers). + // wg is used to enforce Close() to return after the watcher() goroutine has + // finished. Otherwise, data race will be possible. [Race Example] in + // dns_resolver_test we replace the real lookup functions with mocked ones to + // facilitate testing. If Close() doesn't wait for watcher() goroutine + // finishes, race detector sometimes will warns lookup (READ the lookup + // function pointers) inside watcher() goroutine has data race with + // replaceNetFunc (WRITE the lookup function pointers). wg sync.WaitGroup disableServiceConfig bool } -// ResolveNow invoke an immediate resolution of the target that this dnsResolver watches. +// ResolveNow invoke an immediate resolution of the target that this +// dnsResolver watches. func (d *dnsResolver) ResolveNow(resolver.ResolveNowOptions) { select { case d.rn <- struct{}{}: @@ -220,8 +225,8 @@ func (d *dnsResolver) watcher() { var timer *time.Timer if err == nil { - // Success resolving, wait for the next ResolveNow. However, also wait 30 seconds at the very least - // to prevent constantly re-resolving. + // Success resolving, wait for the next ResolveNow. However, also wait 30 + // seconds at the very least to prevent constantly re-resolving. backoffIndex = 1 timer = newTimerDNSResRate(minDNSResRate) select { @@ -231,7 +236,8 @@ func (d *dnsResolver) watcher() { case <-d.rn: } } else { - // Poll on an error found in DNS Resolver or an error received from ClientConn. + // Poll on an error found in DNS Resolver or an error received from + // ClientConn. timer = newTimer(backoff.DefaultExponential.Backoff(backoffIndex)) backoffIndex++ } @@ -278,7 +284,8 @@ func (d *dnsResolver) lookupSRV() ([]resolver.Address, error) { } func handleDNSError(err error, lookupType string) error { - if dnsErr, ok := err.(*net.DNSError); ok && !dnsErr.IsTimeout && !dnsErr.IsTemporary { + dnsErr, ok := err.(*net.DNSError) + if ok && !dnsErr.IsTimeout && !dnsErr.IsTemporary { // Timeouts and temporary errors should be communicated to gRPC to // attempt another DNS query (with backoff). Other errors should be // suppressed (they may represent the absence of a TXT record). @@ -307,10 +314,12 @@ func (d *dnsResolver) lookupTXT() *serviceconfig.ParseResult { res += s } - // TXT record must have "grpc_config=" attribute in order to be used as service config. + // TXT record must have "grpc_config=" attribute in order to be used as + // service config. if !strings.HasPrefix(res, txtAttribute) { logger.Warningf("dns: TXT record %v missing %v attribute", res, txtAttribute) - // This is not an error; it is the equivalent of not having a service config. + // This is not an error; it is the equivalent of not having a service + // config. return nil } sc := canaryingSC(strings.TrimPrefix(res, txtAttribute)) @@ -352,9 +361,10 @@ func (d *dnsResolver) lookup() (*resolver.State, error) { return &state, nil } -// formatIP returns ok = false if addr is not a valid textual representation of an IP address. -// If addr is an IPv4 address, return the addr and ok = true. -// If addr is an IPv6 address, return the addr enclosed in square brackets and ok = true. +// formatIP returns ok = false if addr is not a valid textual representation of +// an IP address. If addr is an IPv4 address, return the addr and ok = true. +// If addr is an IPv6 address, return the addr enclosed in square brackets and +// ok = true. func formatIP(addr string) (addrIP string, ok bool) { ip := net.ParseIP(addr) if ip == nil { @@ -366,10 +376,10 @@ func formatIP(addr string) (addrIP string, ok bool) { return "[" + addr + "]", true } -// parseTarget takes the user input target string and default port, returns formatted host and port info. -// If target doesn't specify a port, set the port to be the defaultPort. -// If target is in IPv6 format and host-name is enclosed in square brackets, brackets -// are stripped when setting the host. +// parseTarget takes the user input target string and default port, returns +// formatted host and port info. If target doesn't specify a port, set the port +// to be the defaultPort. If target is in IPv6 format and host-name is enclosed +// in square brackets, brackets are stripped when setting the host. // examples: // target: "www.google.com" defaultPort: "443" returns host: "www.google.com", port: "443" // target: "ipv4-host:80" defaultPort: "443" returns host: "ipv4-host", port: "80" @@ -385,12 +395,14 @@ func parseTarget(target, defaultPort string) (host, port string, err error) { } if host, port, err = net.SplitHostPort(target); err == nil { if port == "" { - // If the port field is empty (target ends with colon), e.g. "[::1]:", this is an error. + // If the port field is empty (target ends with colon), e.g. "[::1]:", + // this is an error. return "", "", errEndsWithColon } // target has port, i.e ipv4-host:port, [ipv6-host]:port, host-name:port if host == "" { - // Keep consistent with net.Dial(): If the host is empty, as in ":80", the local system is assumed. + // Keep consistent with net.Dial(): If the host is empty, as in ":80", + // the local system is assumed. host = "localhost" } return host, port, nil diff --git a/vendor/google.golang.org/grpc/internal/status/status.go b/vendor/google.golang.org/grpc/internal/status/status.go index b0ead4f54f..4cf85cad9f 100644 --- a/vendor/google.golang.org/grpc/internal/status/status.go +++ b/vendor/google.golang.org/grpc/internal/status/status.go @@ -49,7 +49,7 @@ func New(c codes.Code, msg string) *Status { } // Newf returns New(c, fmt.Sprintf(format, a...)). -func Newf(c codes.Code, format string, a ...interface{}) *Status { +func Newf(c codes.Code, format string, a ...any) *Status { return New(c, fmt.Sprintf(format, a...)) } @@ -64,7 +64,7 @@ func Err(c codes.Code, msg string) error { } // Errorf returns Error(c, fmt.Sprintf(format, a...)). -func Errorf(c codes.Code, format string, a ...interface{}) error { +func Errorf(c codes.Code, format string, a ...any) error { return Err(c, fmt.Sprintf(format, a...)) } @@ -120,11 +120,11 @@ func (s *Status) WithDetails(details ...proto.Message) (*Status, error) { // Details returns a slice of details messages attached to the status. // If a detail cannot be decoded, the error is returned in place of the detail. -func (s *Status) Details() []interface{} { +func (s *Status) Details() []any { if s == nil || s.s == nil { return nil } - details := make([]interface{}, 0, len(s.s.Details)) + details := make([]any, 0, len(s.s.Details)) for _, any := range s.s.Details { detail := &ptypes.DynamicAny{} if err := ptypes.UnmarshalAny(any, detail); err != nil { diff --git a/vendor/google.golang.org/grpc/internal/transport/controlbuf.go b/vendor/google.golang.org/grpc/internal/transport/controlbuf.go index be5a9c81eb..b330ccedc8 100644 --- a/vendor/google.golang.org/grpc/internal/transport/controlbuf.go +++ b/vendor/google.golang.org/grpc/internal/transport/controlbuf.go @@ -40,7 +40,7 @@ var updateHeaderTblSize = func(e *hpack.Encoder, v uint32) { } type itemNode struct { - it interface{} + it any next *itemNode } @@ -49,7 +49,7 @@ type itemList struct { tail *itemNode } -func (il *itemList) enqueue(i interface{}) { +func (il *itemList) enqueue(i any) { n := &itemNode{it: i} if il.tail == nil { il.head, il.tail = n, n @@ -61,11 +61,11 @@ func (il *itemList) enqueue(i interface{}) { // peek returns the first item in the list without removing it from the // list. -func (il *itemList) peek() interface{} { +func (il *itemList) peek() any { return il.head.it } -func (il *itemList) dequeue() interface{} { +func (il *itemList) dequeue() any { if il.head == nil { return nil } @@ -336,7 +336,7 @@ func (c *controlBuffer) put(it cbItem) error { return err } -func (c *controlBuffer) executeAndPut(f func(it interface{}) bool, it cbItem) (bool, error) { +func (c *controlBuffer) executeAndPut(f func(it any) bool, it cbItem) (bool, error) { var wakeUp bool c.mu.Lock() if c.err != nil { @@ -373,7 +373,7 @@ func (c *controlBuffer) executeAndPut(f func(it interface{}) bool, it cbItem) (b } // Note argument f should never be nil. -func (c *controlBuffer) execute(f func(it interface{}) bool, it interface{}) (bool, error) { +func (c *controlBuffer) execute(f func(it any) bool, it any) (bool, error) { c.mu.Lock() if c.err != nil { c.mu.Unlock() @@ -387,7 +387,7 @@ func (c *controlBuffer) execute(f func(it interface{}) bool, it interface{}) (bo return true, nil } -func (c *controlBuffer) get(block bool) (interface{}, error) { +func (c *controlBuffer) get(block bool) (any, error) { for { c.mu.Lock() if c.err != nil { @@ -830,7 +830,7 @@ func (l *loopyWriter) goAwayHandler(g *goAway) error { return nil } -func (l *loopyWriter) handle(i interface{}) error { +func (l *loopyWriter) handle(i any) error { switch i := i.(type) { case *incomingWindowUpdate: l.incomingWindowUpdateHandler(i) diff --git a/vendor/google.golang.org/grpc/internal/transport/http2_client.go b/vendor/google.golang.org/grpc/internal/transport/http2_client.go index 326bf08480..badab8acf3 100644 --- a/vendor/google.golang.org/grpc/internal/transport/http2_client.go +++ b/vendor/google.golang.org/grpc/internal/transport/http2_client.go @@ -330,7 +330,7 @@ func newHTTP2Client(connectCtx, ctx context.Context, addr resolver.Address, opts readerDone: make(chan struct{}), writerDone: make(chan struct{}), goAway: make(chan struct{}), - framer: newFramer(conn, writeBufSize, readBufSize, maxHeaderListSize), + framer: newFramer(conn, writeBufSize, readBufSize, opts.SharedWriteBuffer, maxHeaderListSize), fc: &trInFlow{limit: uint32(icwz)}, scheme: scheme, activeStreams: make(map[uint32]*Stream), @@ -762,7 +762,7 @@ func (t *http2Client) NewStream(ctx context.Context, callHdr *CallHdr) (*Stream, firstTry := true var ch chan struct{} transportDrainRequired := false - checkForStreamQuota := func(it interface{}) bool { + checkForStreamQuota := func(it any) bool { if t.streamQuota <= 0 { // Can go negative if server decreases it. if firstTry { t.waitingStreams++ @@ -800,7 +800,7 @@ func (t *http2Client) NewStream(ctx context.Context, callHdr *CallHdr) (*Stream, return true } var hdrListSizeErr error - checkForHeaderListSize := func(it interface{}) bool { + checkForHeaderListSize := func(it any) bool { if t.maxSendHeaderListSize == nil { return true } @@ -815,7 +815,7 @@ func (t *http2Client) NewStream(ctx context.Context, callHdr *CallHdr) (*Stream, return true } for { - success, err := t.controlBuf.executeAndPut(func(it interface{}) bool { + success, err := t.controlBuf.executeAndPut(func(it any) bool { return checkForHeaderListSize(it) && checkForStreamQuota(it) }, hdr) if err != nil { @@ -927,7 +927,7 @@ func (t *http2Client) closeStream(s *Stream, err error, rst bool, rstCode http2. rst: rst, rstCode: rstCode, } - addBackStreamQuota := func(interface{}) bool { + addBackStreamQuota := func(any) bool { t.streamQuota++ if t.streamQuota > 0 && t.waitingStreams > 0 { select { @@ -1080,7 +1080,7 @@ func (t *http2Client) updateWindow(s *Stream, n uint32) { // for the transport and the stream based on the current bdp // estimation. func (t *http2Client) updateFlowControl(n uint32) { - updateIWS := func(interface{}) bool { + updateIWS := func(any) bool { t.initialWindowSize = int32(n) t.mu.Lock() for _, s := range t.activeStreams { @@ -1233,7 +1233,7 @@ func (t *http2Client) handleSettings(f *http2.SettingsFrame, isFirst bool) { } updateFuncs = append(updateFuncs, updateStreamQuota) } - t.controlBuf.executeAndPut(func(interface{}) bool { + t.controlBuf.executeAndPut(func(any) bool { for _, f := range updateFuncs { f() } @@ -1505,14 +1505,15 @@ func (t *http2Client) operateHeaders(frame *http2.MetaHeadersFrame) { return } - isHeader := false - - // If headerChan hasn't been closed yet - if atomic.CompareAndSwapUint32(&s.headerChanClosed, 0, 1) { - s.headerValid = true - if !endStream { - // HEADERS frame block carries a Response-Headers. - isHeader = true + // For headers, set them in s.header and close headerChan. For trailers or + // trailers-only, closeStream will set the trailers and close headerChan as + // needed. + if !endStream { + // If headerChan hasn't been closed yet (expected, given we checked it + // above, but something else could have potentially closed the whole + // stream). + if atomic.CompareAndSwapUint32(&s.headerChanClosed, 0, 1) { + s.headerValid = true // These values can be set without any synchronization because // stream goroutine will read it only after seeing a closed // headerChan which we'll close after setting this. @@ -1520,15 +1521,12 @@ func (t *http2Client) operateHeaders(frame *http2.MetaHeadersFrame) { if len(mdata) > 0 { s.header = mdata } - } else { - // HEADERS frame block carries a Trailers-Only. - s.noHeaders = true + close(s.headerChan) } - close(s.headerChan) } for _, sh := range t.statsHandlers { - if isHeader { + if !endStream { inHeader := &stats.InHeader{ Client: true, WireLength: int(frame.Header().Length), @@ -1554,9 +1552,10 @@ func (t *http2Client) operateHeaders(frame *http2.MetaHeadersFrame) { statusGen = status.New(rawStatusCode, grpcMessage) } - // if client received END_STREAM from server while stream was still active, send RST_STREAM - rst := s.getState() == streamActive - t.closeStream(s, io.EOF, rst, http2.ErrCodeNo, statusGen, mdata, true) + // If client received END_STREAM from server while stream was still active, + // send RST_STREAM. + rstStream := s.getState() == streamActive + t.closeStream(s, io.EOF, rstStream, http2.ErrCodeNo, statusGen, mdata, true) } // readServerPreface reads and handles the initial settings frame from the diff --git a/vendor/google.golang.org/grpc/internal/transport/http2_server.go b/vendor/google.golang.org/grpc/internal/transport/http2_server.go index ec4eef2134..c06db679d8 100644 --- a/vendor/google.golang.org/grpc/internal/transport/http2_server.go +++ b/vendor/google.golang.org/grpc/internal/transport/http2_server.go @@ -165,7 +165,7 @@ func NewServerTransport(conn net.Conn, config *ServerConfig) (_ ServerTransport, if config.MaxHeaderListSize != nil { maxHeaderListSize = *config.MaxHeaderListSize } - framer := newFramer(conn, writeBufSize, readBufSize, maxHeaderListSize) + framer := newFramer(conn, writeBufSize, readBufSize, config.SharedWriteBuffer, maxHeaderListSize) // Send initial settings as connection preface to client. isettings := []http2.Setting{{ ID: http2.SettingMaxFrameSize, @@ -233,7 +233,7 @@ func NewServerTransport(conn net.Conn, config *ServerConfig) (_ ServerTransport, kp.Timeout = defaultServerKeepaliveTimeout } if kp.Time != infinity { - if err = syscall.SetTCPUserTimeout(conn, kp.Timeout); err != nil { + if err = syscall.SetTCPUserTimeout(rawConn, kp.Timeout); err != nil { return nil, connectionErrorf(false, err, "transport: failed to set TCP_USER_TIMEOUT: %v", err) } } @@ -850,7 +850,7 @@ func (t *http2Server) handleSettings(f *http2.SettingsFrame) { } return nil }) - t.controlBuf.executeAndPut(func(interface{}) bool { + t.controlBuf.executeAndPut(func(any) bool { for _, f := range updateFuncs { f() } @@ -934,7 +934,7 @@ func appendHeaderFieldsFromMD(headerFields []hpack.HeaderField, md metadata.MD) return headerFields } -func (t *http2Server) checkForHeaderListSize(it interface{}) bool { +func (t *http2Server) checkForHeaderListSize(it any) bool { if t.maxSendHeaderListSize == nil { return true } diff --git a/vendor/google.golang.org/grpc/internal/transport/http_util.go b/vendor/google.golang.org/grpc/internal/transport/http_util.go index 19cbb18f5a..1958140082 100644 --- a/vendor/google.golang.org/grpc/internal/transport/http_util.go +++ b/vendor/google.golang.org/grpc/internal/transport/http_util.go @@ -30,6 +30,7 @@ import ( "net/url" "strconv" "strings" + "sync" "time" "unicode/utf8" @@ -309,6 +310,7 @@ func decodeGrpcMessageUnchecked(msg string) string { } type bufWriter struct { + pool *sync.Pool buf []byte offset int batchSize int @@ -316,12 +318,17 @@ type bufWriter struct { err error } -func newBufWriter(conn net.Conn, batchSize int) *bufWriter { - return &bufWriter{ - buf: make([]byte, batchSize*2), +func newBufWriter(conn net.Conn, batchSize int, pool *sync.Pool) *bufWriter { + w := &bufWriter{ batchSize: batchSize, conn: conn, + pool: pool, } + // this indicates that we should use non shared buf + if pool == nil { + w.buf = make([]byte, batchSize) + } + return w } func (w *bufWriter) Write(b []byte) (n int, err error) { @@ -332,19 +339,34 @@ func (w *bufWriter) Write(b []byte) (n int, err error) { n, err = w.conn.Write(b) return n, toIOError(err) } + if w.buf == nil { + b := w.pool.Get().(*[]byte) + w.buf = *b + } for len(b) > 0 { nn := copy(w.buf[w.offset:], b) b = b[nn:] w.offset += nn n += nn if w.offset >= w.batchSize { - err = w.Flush() + err = w.flushKeepBuffer() } } return n, err } func (w *bufWriter) Flush() error { + err := w.flushKeepBuffer() + // Only release the buffer if we are in a "shared" mode + if w.buf != nil && w.pool != nil { + b := w.buf + w.pool.Put(&b) + w.buf = nil + } + return err +} + +func (w *bufWriter) flushKeepBuffer() error { if w.err != nil { return w.err } @@ -381,7 +403,10 @@ type framer struct { fr *http2.Framer } -func newFramer(conn net.Conn, writeBufferSize, readBufferSize int, maxHeaderListSize uint32) *framer { +var writeBufferPoolMap map[int]*sync.Pool = make(map[int]*sync.Pool) +var writeBufferMutex sync.Mutex + +func newFramer(conn net.Conn, writeBufferSize, readBufferSize int, sharedWriteBuffer bool, maxHeaderListSize uint32) *framer { if writeBufferSize < 0 { writeBufferSize = 0 } @@ -389,7 +414,11 @@ func newFramer(conn net.Conn, writeBufferSize, readBufferSize int, maxHeaderList if readBufferSize > 0 { r = bufio.NewReaderSize(r, readBufferSize) } - w := newBufWriter(conn, writeBufferSize) + var pool *sync.Pool + if sharedWriteBuffer { + pool = getWriteBufferPool(writeBufferSize) + } + w := newBufWriter(conn, writeBufferSize, pool) f := &framer{ writer: w, fr: http2.NewFramer(w, r), @@ -403,6 +432,24 @@ func newFramer(conn net.Conn, writeBufferSize, readBufferSize int, maxHeaderList return f } +func getWriteBufferPool(writeBufferSize int) *sync.Pool { + writeBufferMutex.Lock() + defer writeBufferMutex.Unlock() + size := writeBufferSize * 2 + pool, ok := writeBufferPoolMap[size] + if ok { + return pool + } + pool = &sync.Pool{ + New: func() any { + b := make([]byte, size) + return &b + }, + } + writeBufferPoolMap[size] = pool + return pool +} + // parseDialTarget returns the network and address to pass to dialer. func parseDialTarget(target string) (string, string) { net := "tcp" diff --git a/vendor/google.golang.org/grpc/internal/transport/transport.go b/vendor/google.golang.org/grpc/internal/transport/transport.go index aa1c896595..74a811fc05 100644 --- a/vendor/google.golang.org/grpc/internal/transport/transport.go +++ b/vendor/google.golang.org/grpc/internal/transport/transport.go @@ -43,10 +43,6 @@ import ( "google.golang.org/grpc/tap" ) -// ErrNoHeaders is used as a signal that a trailers only response was received, -// and is not a real error. -var ErrNoHeaders = errors.New("stream has no headers") - const logLevel = 2 type bufferPool struct { @@ -56,7 +52,7 @@ type bufferPool struct { func newBufferPool() *bufferPool { return &bufferPool{ pool: sync.Pool{ - New: func() interface{} { + New: func() any { return new(bytes.Buffer) }, }, @@ -390,14 +386,10 @@ func (s *Stream) Header() (metadata.MD, error) { } s.waitOnHeader() - if !s.headerValid { + if !s.headerValid || s.noHeaders { return nil, s.status.Err() } - if s.noHeaders { - return nil, ErrNoHeaders - } - return s.header.Copy(), nil } @@ -559,6 +551,7 @@ type ServerConfig struct { InitialConnWindowSize int32 WriteBufferSize int ReadBufferSize int + SharedWriteBuffer bool ChannelzParentID *channelz.Identifier MaxHeaderListSize *uint32 HeaderTableSize *uint32 @@ -592,6 +585,8 @@ type ConnectOptions struct { WriteBufferSize int // ReadBufferSize sets the size of read buffer, which in turn determines how much data can be read at most for one read syscall. ReadBufferSize int + // SharedWriteBuffer indicates whether connections should reuse write buffer + SharedWriteBuffer bool // ChannelzParentID sets the addrConn id which initiate the creation of this client transport. ChannelzParentID *channelz.Identifier // MaxHeaderListSize sets the max (uncompressed) size of header list that is prepared to be received. @@ -736,7 +731,7 @@ type ServerTransport interface { } // connectionErrorf creates an ConnectionError with the specified error description. -func connectionErrorf(temp bool, e error, format string, a ...interface{}) ConnectionError { +func connectionErrorf(temp bool, e error, format string, a ...any) ConnectionError { return ConnectionError{ Desc: fmt.Sprintf(format, a...), temp: temp, diff --git a/vendor/google.golang.org/grpc/picker_wrapper.go b/vendor/google.golang.org/grpc/picker_wrapper.go index 02f9759512..236837f415 100644 --- a/vendor/google.golang.org/grpc/picker_wrapper.go +++ b/vendor/google.golang.org/grpc/picker_wrapper.go @@ -28,21 +28,26 @@ import ( "google.golang.org/grpc/internal/channelz" istatus "google.golang.org/grpc/internal/status" "google.golang.org/grpc/internal/transport" + "google.golang.org/grpc/stats" "google.golang.org/grpc/status" ) // pickerWrapper is a wrapper of balancer.Picker. It blocks on certain pick // actions and unblock when there's a picker update. type pickerWrapper struct { - mu sync.Mutex - done bool - idle bool - blockingCh chan struct{} - picker balancer.Picker + mu sync.Mutex + done bool + idle bool + blockingCh chan struct{} + picker balancer.Picker + statsHandlers []stats.Handler // to record blocking picker calls } -func newPickerWrapper() *pickerWrapper { - return &pickerWrapper{blockingCh: make(chan struct{})} +func newPickerWrapper(statsHandlers []stats.Handler) *pickerWrapper { + return &pickerWrapper{ + blockingCh: make(chan struct{}), + statsHandlers: statsHandlers, + } } // updatePicker is called by UpdateBalancerState. It unblocks all blocked pick. @@ -95,6 +100,7 @@ func (pw *pickerWrapper) pick(ctx context.Context, failfast bool, info balancer. var ch chan struct{} var lastPickErr error + for { pw.mu.Lock() if pw.done { @@ -129,6 +135,20 @@ func (pw *pickerWrapper) pick(ctx context.Context, failfast bool, info balancer. continue } + // If the channel is set, it means that the pick call had to wait for a + // new picker at some point. Either it's the first iteration and this + // function received the first picker, or a picker errored with + // ErrNoSubConnAvailable or errored with failfast set to false, which + // will trigger a continue to the next iteration. In the first case this + // conditional will hit if this call had to block (the channel is set). + // In the second case, the only way it will get to this conditional is + // if there is a new picker. + if ch != nil { + for _, sh := range pw.statsHandlers { + sh.HandleRPC(ctx, &stats.PickerUpdated{}) + } + } + ch = pw.blockingCh p := pw.picker pw.mu.Unlock() diff --git a/vendor/google.golang.org/grpc/pickfirst.go b/vendor/google.golang.org/grpc/pickfirst.go index abe266b021..2e9cf66b4a 100644 --- a/vendor/google.golang.org/grpc/pickfirst.go +++ b/vendor/google.golang.org/grpc/pickfirst.go @@ -26,12 +26,18 @@ import ( "google.golang.org/grpc/balancer" "google.golang.org/grpc/connectivity" "google.golang.org/grpc/internal/envconfig" + internalgrpclog "google.golang.org/grpc/internal/grpclog" "google.golang.org/grpc/internal/grpcrand" + "google.golang.org/grpc/internal/pretty" + "google.golang.org/grpc/resolver" "google.golang.org/grpc/serviceconfig" ) -// PickFirstBalancerName is the name of the pick_first balancer. -const PickFirstBalancerName = "pick_first" +const ( + // PickFirstBalancerName is the name of the pick_first balancer. + PickFirstBalancerName = "pick_first" + logPrefix = "[pick-first-lb %p] " +) func newPickfirstBuilder() balancer.Builder { return &pickfirstBuilder{} @@ -40,7 +46,9 @@ func newPickfirstBuilder() balancer.Builder { type pickfirstBuilder struct{} func (*pickfirstBuilder) Build(cc balancer.ClientConn, opt balancer.BuildOptions) balancer.Balancer { - return &pickfirstBalancer{cc: cc} + b := &pickfirstBalancer{cc: cc} + b.logger = internalgrpclog.NewPrefixLogger(logger, fmt.Sprintf(logPrefix, b)) + return b } func (*pickfirstBuilder) Name() string { @@ -57,23 +65,36 @@ type pfConfig struct { } func (*pickfirstBuilder) ParseConfig(js json.RawMessage) (serviceconfig.LoadBalancingConfig, error) { - cfg := &pfConfig{} - if err := json.Unmarshal(js, cfg); err != nil { + if !envconfig.PickFirstLBConfig { + // Prior to supporting loadbalancing configuration, the pick_first LB + // policy did not implement the balancer.ConfigParser interface. This + // meant that if a non-empty configuration was passed to it, the service + // config unmarshaling code would throw a warning log, but would + // continue using the pick_first LB policy. The code below ensures the + // same behavior is retained if the env var is not set. + if string(js) != "{}" { + logger.Warningf("Ignoring non-empty balancer configuration %q for the pick_first LB policy", string(js)) + } + return nil, nil + } + + var cfg pfConfig + if err := json.Unmarshal(js, &cfg); err != nil { return nil, fmt.Errorf("pickfirst: unable to unmarshal LB policy config: %s, error: %v", string(js), err) } return cfg, nil } type pickfirstBalancer struct { + logger *internalgrpclog.PrefixLogger state connectivity.State cc balancer.ClientConn subConn balancer.SubConn - cfg *pfConfig } func (b *pickfirstBalancer) ResolverError(err error) { - if logger.V(2) { - logger.Infof("pickfirstBalancer: ResolverError called with error: %v", err) + if b.logger.V(2) { + b.logger.Infof("Received error from the name resolver: %v", err) } if b.subConn == nil { b.state = connectivity.TransientFailure @@ -96,35 +117,44 @@ func (b *pickfirstBalancer) UpdateClientConnState(state balancer.ClientConnState // The resolver reported an empty address list. Treat it like an error by // calling b.ResolverError. if b.subConn != nil { - // Remove the old subConn. All addresses were removed, so it is no longer - // valid. - b.cc.RemoveSubConn(b.subConn) + // Shut down the old subConn. All addresses were removed, so it is + // no longer valid. + b.subConn.Shutdown() b.subConn = nil } b.ResolverError(errors.New("produced zero addresses")) return balancer.ErrBadResolverState } - if state.BalancerConfig != nil { - cfg, ok := state.BalancerConfig.(*pfConfig) - if !ok { - return fmt.Errorf("pickfirstBalancer: received nil or illegal BalancerConfig (type %T): %v", state.BalancerConfig, state.BalancerConfig) - } - b.cfg = cfg + // We don't have to guard this block with the env var because ParseConfig + // already does so. + cfg, ok := state.BalancerConfig.(pfConfig) + if state.BalancerConfig != nil && !ok { + return fmt.Errorf("pickfirst: received illegal BalancerConfig (type %T): %v", state.BalancerConfig, state.BalancerConfig) } - - if envconfig.PickFirstLBConfig && b.cfg != nil && b.cfg.ShuffleAddressList { + if cfg.ShuffleAddressList { + addrs = append([]resolver.Address{}, addrs...) grpcrand.Shuffle(len(addrs), func(i, j int) { addrs[i], addrs[j] = addrs[j], addrs[i] }) } + + if b.logger.V(2) { + b.logger.Infof("Received new config %s, resolver state %s", pretty.ToJSON(cfg), pretty.ToJSON(state.ResolverState)) + } + if b.subConn != nil { b.cc.UpdateAddresses(b.subConn, addrs) return nil } - subConn, err := b.cc.NewSubConn(addrs, balancer.NewSubConnOptions{}) + var subConn balancer.SubConn + subConn, err := b.cc.NewSubConn(addrs, balancer.NewSubConnOptions{ + StateListener: func(state balancer.SubConnState) { + b.updateSubConnState(subConn, state) + }, + }) if err != nil { - if logger.V(2) { - logger.Errorf("pickfirstBalancer: failed to NewSubConn: %v", err) + if b.logger.V(2) { + b.logger.Infof("Failed to create new SubConn: %v", err) } b.state = connectivity.TransientFailure b.cc.UpdateState(balancer.State{ @@ -143,13 +173,19 @@ func (b *pickfirstBalancer) UpdateClientConnState(state balancer.ClientConnState return nil } +// UpdateSubConnState is unused as a StateListener is always registered when +// creating SubConns. func (b *pickfirstBalancer) UpdateSubConnState(subConn balancer.SubConn, state balancer.SubConnState) { - if logger.V(2) { - logger.Infof("pickfirstBalancer: UpdateSubConnState: %p, %v", subConn, state) + b.logger.Errorf("UpdateSubConnState(%v, %+v) called unexpectedly", subConn, state) +} + +func (b *pickfirstBalancer) updateSubConnState(subConn balancer.SubConn, state balancer.SubConnState) { + if b.logger.V(2) { + b.logger.Infof("Received SubConn state update: %p, %+v", subConn, state) } if b.subConn != subConn { - if logger.V(2) { - logger.Infof("pickfirstBalancer: ignored state change because subConn is not recognized") + if b.logger.V(2) { + b.logger.Infof("Ignored state change because subConn is not recognized") } return } diff --git a/vendor/google.golang.org/grpc/preloader.go b/vendor/google.golang.org/grpc/preloader.go index cd45547854..73bd633643 100644 --- a/vendor/google.golang.org/grpc/preloader.go +++ b/vendor/google.golang.org/grpc/preloader.go @@ -37,7 +37,7 @@ type PreparedMsg struct { } // Encode marshalls and compresses the message using the codec and compressor for the stream. -func (p *PreparedMsg) Encode(s Stream, msg interface{}) error { +func (p *PreparedMsg) Encode(s Stream, msg any) error { ctx := s.Context() rpcInfo, ok := rpcInfoFromContext(ctx) if !ok { diff --git a/vendor/google.golang.org/grpc/resolver/manual/manual.go b/vendor/google.golang.org/grpc/resolver/manual/manual.go index f27978e128..e6b0f14cd9 100644 --- a/vendor/google.golang.org/grpc/resolver/manual/manual.go +++ b/vendor/google.golang.org/grpc/resolver/manual/manual.go @@ -29,10 +29,11 @@ import ( // NewBuilderWithScheme creates a new test resolver builder with the given scheme. func NewBuilderWithScheme(scheme string) *Resolver { return &Resolver{ - BuildCallback: func(resolver.Target, resolver.ClientConn, resolver.BuildOptions) {}, - ResolveNowCallback: func(resolver.ResolveNowOptions) {}, - CloseCallback: func() {}, - scheme: scheme, + BuildCallback: func(resolver.Target, resolver.ClientConn, resolver.BuildOptions) {}, + UpdateStateCallback: func(error) {}, + ResolveNowCallback: func(resolver.ResolveNowOptions) {}, + CloseCallback: func() {}, + scheme: scheme, } } @@ -42,6 +43,11 @@ type Resolver struct { // BuildCallback is called when the Build method is called. Must not be // nil. Must not be changed after the resolver may be built. BuildCallback func(resolver.Target, resolver.ClientConn, resolver.BuildOptions) + // UpdateStateCallback is called when the UpdateState method is called on + // the resolver. The value passed as argument to this callback is the value + // returned by the resolver.ClientConn. Must not be nil. Must not be + // changed after the resolver may be built. + UpdateStateCallback func(err error) // ResolveNowCallback is called when the ResolveNow method is called on the // resolver. Must not be nil. Must not be changed after the resolver may // be built. @@ -93,8 +99,9 @@ func (r *Resolver) Close() { // UpdateState calls CC.UpdateState. func (r *Resolver) UpdateState(s resolver.State) { r.mu.Lock() - r.CC.UpdateState(s) + err := r.CC.UpdateState(s) r.mu.Unlock() + r.UpdateStateCallback(err) } // ReportError calls CC.ReportError. diff --git a/vendor/google.golang.org/grpc/resolver/map.go b/vendor/google.golang.org/grpc/resolver/map.go index efcb7f3efd..804be887de 100644 --- a/vendor/google.golang.org/grpc/resolver/map.go +++ b/vendor/google.golang.org/grpc/resolver/map.go @@ -20,7 +20,7 @@ package resolver type addressMapEntry struct { addr Address - value interface{} + value any } // AddressMap is a map of addresses to arbitrary values taking into account @@ -69,7 +69,7 @@ func (l addressMapEntryList) find(addr Address) int { } // Get returns the value for the address in the map, if present. -func (a *AddressMap) Get(addr Address) (value interface{}, ok bool) { +func (a *AddressMap) Get(addr Address) (value any, ok bool) { addrKey := toMapKey(&addr) entryList := a.m[addrKey] if entry := entryList.find(addr); entry != -1 { @@ -79,7 +79,7 @@ func (a *AddressMap) Get(addr Address) (value interface{}, ok bool) { } // Set updates or adds the value to the address in the map. -func (a *AddressMap) Set(addr Address, value interface{}) { +func (a *AddressMap) Set(addr Address, value any) { addrKey := toMapKey(&addr) entryList := a.m[addrKey] if entry := entryList.find(addr); entry != -1 { @@ -127,8 +127,8 @@ func (a *AddressMap) Keys() []Address { } // Values returns a slice of all current map values. -func (a *AddressMap) Values() []interface{} { - ret := make([]interface{}, 0, a.Len()) +func (a *AddressMap) Values() []any { + ret := make([]any, 0, a.Len()) for _, entryList := range a.m { for _, entry := range entryList { ret = append(ret, entry.value) diff --git a/vendor/google.golang.org/grpc/resolver/resolver.go b/vendor/google.golang.org/grpc/resolver/resolver.go index 353c10b69a..11384e228e 100644 --- a/vendor/google.golang.org/grpc/resolver/resolver.go +++ b/vendor/google.golang.org/grpc/resolver/resolver.go @@ -77,25 +77,6 @@ func GetDefaultScheme() string { return defaultScheme } -// AddressType indicates the address type returned by name resolution. -// -// Deprecated: use Attributes in Address instead. -type AddressType uint8 - -const ( - // Backend indicates the address is for a backend server. - // - // Deprecated: use Attributes in Address instead. - Backend AddressType = iota - // GRPCLB indicates the address is for a grpclb load balancer. - // - // Deprecated: to select the GRPCLB load balancing policy, use a service - // config with a corresponding loadBalancingConfig. To supply balancer - // addresses to the GRPCLB load balancing policy, set State.Attributes - // using balancer/grpclb/state.Set. - GRPCLB -) - // Address represents a server the client connects to. // // # Experimental @@ -111,9 +92,6 @@ type Address struct { // the address, instead of the hostname from the Dial target string. In most cases, // this should not be set. // - // If Type is GRPCLB, ServerName should be the name of the remote load - // balancer, not the name of the backend. - // // WARNING: ServerName must only be populated with trusted values. It // is insecure to populate it with data from untrusted inputs since untrusted // values could be used to bypass the authority checks performed by TLS. @@ -126,27 +104,29 @@ type Address struct { // BalancerAttributes contains arbitrary data about this address intended // for consumption by the LB policy. These attributes do not affect SubConn // creation, connection establishment, handshaking, etc. - BalancerAttributes *attributes.Attributes - - // Type is the type of this address. // - // Deprecated: use Attributes instead. - Type AddressType + // Deprecated: when an Address is inside an Endpoint, this field should not + // be used, and it will eventually be removed entirely. + BalancerAttributes *attributes.Attributes // Metadata is the information associated with Addr, which may be used // to make load balancing decision. // // Deprecated: use Attributes instead. - Metadata interface{} + Metadata any } // Equal returns whether a and o are identical. Metadata is compared directly, // not with any recursive introspection. +// +// This method compares all fields of the address. When used to tell apart +// addresses during subchannel creation or connection establishment, it might be +// more appropriate for the caller to implement custom equality logic. func (a Address) Equal(o Address) bool { return a.Addr == o.Addr && a.ServerName == o.ServerName && a.Attributes.Equal(o.Attributes) && a.BalancerAttributes.Equal(o.BalancerAttributes) && - a.Type == o.Type && a.Metadata == o.Metadata + a.Metadata == o.Metadata } // String returns JSON formatted string representation of the address. @@ -190,11 +170,37 @@ type BuildOptions struct { Dialer func(context.Context, string) (net.Conn, error) } +// An Endpoint is one network endpoint, or server, which may have multiple +// addresses with which it can be accessed. +type Endpoint struct { + // Addresses contains a list of addresses used to access this endpoint. + Addresses []Address + + // Attributes contains arbitrary data about this endpoint intended for + // consumption by the LB policy. + Attributes *attributes.Attributes +} + // State contains the current Resolver state relevant to the ClientConn. type State struct { // Addresses is the latest set of resolved addresses for the target. + // + // If a resolver sets Addresses but does not set Endpoints, one Endpoint + // will be created for each Address before the State is passed to the LB + // policy. The BalancerAttributes of each entry in Addresses will be set + // in Endpoints.Attributes, and be cleared in the Endpoint's Address's + // BalancerAttributes. + // + // Soon, Addresses will be deprecated and replaced fully by Endpoints. Addresses []Address + // Endpoints is the latest set of resolved endpoints for the target. + // + // If a resolver produces a State containing Endpoints but not Addresses, + // it must take care to ensure the LB policies it selects will support + // Endpoints. + Endpoints []Endpoint + // ServiceConfig contains the result from parsing the latest service // config. If it is nil, it indicates no service config is present or the // resolver does not provide service configs. @@ -254,20 +260,7 @@ type ClientConn interface { // target does not contain a scheme or if the parsed scheme is not registered // (i.e. no corresponding resolver available to resolve the endpoint), we will // apply the default scheme, and will attempt to reparse it. -// -// Examples: -// -// - "dns://some_authority/foo.bar" -// Target{Scheme: "dns", Authority: "some_authority", Endpoint: "foo.bar"} -// - "foo.bar" -// Target{Scheme: resolver.GetDefaultScheme(), Endpoint: "foo.bar"} -// - "unknown_scheme://authority/endpoint" -// Target{Scheme: resolver.GetDefaultScheme(), Endpoint: "unknown_scheme://authority/endpoint"} type Target struct { - // Deprecated: use URL.Scheme instead. - Scheme string - // Deprecated: use URL.Host instead. - Authority string // URL contains the parsed dial target with an optional default scheme added // to it if the original dial target contained no scheme or contained an // unregistered scheme. Any query params specified in the original dial @@ -321,10 +314,3 @@ type Resolver interface { // Close closes the resolver. Close() } - -// UnregisterForTesting removes the resolver builder with the given scheme from the -// resolver map. -// This function is for testing only. -func UnregisterForTesting(scheme string) { - delete(m, scheme) -} diff --git a/vendor/google.golang.org/grpc/resolver_conn_wrapper.go b/vendor/google.golang.org/grpc/resolver_conn_wrapper.go index b408b3688f..d683305608 100644 --- a/vendor/google.golang.org/grpc/resolver_conn_wrapper.go +++ b/vendor/google.golang.org/grpc/resolver_conn_wrapper.go @@ -133,7 +133,7 @@ func (ccr *ccResolverWrapper) close() { ccr.mu.Unlock() // Give enqueued callbacks a chance to finish. - <-ccr.serializer.Done + <-ccr.serializer.Done() // Spawn a goroutine to close the resolver (since it may block trying to // cleanup all allocated resources) and return early. @@ -152,6 +152,14 @@ func (ccr *ccResolverWrapper) serializerScheduleLocked(f func(context.Context)) // which includes addresses and service config. func (ccr *ccResolverWrapper) UpdateState(s resolver.State) error { errCh := make(chan error, 1) + if s.Endpoints == nil { + s.Endpoints = make([]resolver.Endpoint, 0, len(s.Addresses)) + for _, a := range s.Addresses { + ep := resolver.Endpoint{Addresses: []resolver.Address{a}, Attributes: a.BalancerAttributes} + ep.Addresses[0].BalancerAttributes = nil + s.Endpoints = append(s.Endpoints, ep) + } + } ok := ccr.serializer.Schedule(func(context.Context) { ccr.addChannelzTraceEvent(s) ccr.curState = s diff --git a/vendor/google.golang.org/grpc/rpc_util.go b/vendor/google.golang.org/grpc/rpc_util.go index 2030736a30..b7723aa09c 100644 --- a/vendor/google.golang.org/grpc/rpc_util.go +++ b/vendor/google.golang.org/grpc/rpc_util.go @@ -75,7 +75,7 @@ func NewGZIPCompressorWithLevel(level int) (Compressor, error) { } return &gzipCompressor{ pool: sync.Pool{ - New: func() interface{} { + New: func() any { w, err := gzip.NewWriterLevel(io.Discard, level) if err != nil { panic(err) @@ -577,6 +577,9 @@ type parser struct { // The header of a gRPC message. Find more detail at // https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md header [5]byte + + // recvBufferPool is the pool of shared receive buffers. + recvBufferPool SharedBufferPool } // recvMsg reads a complete gRPC message from the stream. @@ -610,9 +613,7 @@ func (p *parser) recvMsg(maxReceiveMessageSize int) (pf payloadFormat, msg []byt if int(length) > maxReceiveMessageSize { return 0, nil, status.Errorf(codes.ResourceExhausted, "grpc: received message larger than max (%d vs. %d)", length, maxReceiveMessageSize) } - // TODO(bradfitz,zhaoq): garbage. reuse buffer after proto decoding instead - // of making it for each message: - msg = make([]byte, int(length)) + msg = p.recvBufferPool.Get(int(length)) if _, err := p.r.Read(msg); err != nil { if err == io.EOF { err = io.ErrUnexpectedEOF @@ -625,7 +626,7 @@ func (p *parser) recvMsg(maxReceiveMessageSize int) (pf payloadFormat, msg []byt // encode serializes msg and returns a buffer containing the message, or an // error if it is too large to be transmitted by grpc. If msg is nil, it // generates an empty message. -func encode(c baseCodec, msg interface{}) ([]byte, error) { +func encode(c baseCodec, msg any) ([]byte, error) { if msg == nil { // NOTE: typed nils will not be caught by this check return nil, nil } @@ -692,7 +693,7 @@ func msgHeader(data, compData []byte) (hdr []byte, payload []byte) { return hdr, data } -func outPayload(client bool, msg interface{}, data, payload []byte, t time.Time) *stats.OutPayload { +func outPayload(client bool, msg any, data, payload []byte, t time.Time) *stats.OutPayload { return &stats.OutPayload{ Client: client, Payload: msg, @@ -726,12 +727,12 @@ type payloadInfo struct { } func recvAndDecompress(p *parser, s *transport.Stream, dc Decompressor, maxReceiveMessageSize int, payInfo *payloadInfo, compressor encoding.Compressor) ([]byte, error) { - pf, d, err := p.recvMsg(maxReceiveMessageSize) + pf, buf, err := p.recvMsg(maxReceiveMessageSize) if err != nil { return nil, err } if payInfo != nil { - payInfo.compressedLength = len(d) + payInfo.compressedLength = len(buf) } if st := checkRecvPayload(pf, s.RecvCompress(), compressor != nil || dc != nil); st != nil { @@ -743,10 +744,10 @@ func recvAndDecompress(p *parser, s *transport.Stream, dc Decompressor, maxRecei // To match legacy behavior, if the decompressor is set by WithDecompressor or RPCDecompressor, // use this decompressor as the default. if dc != nil { - d, err = dc.Do(bytes.NewReader(d)) - size = len(d) + buf, err = dc.Do(bytes.NewReader(buf)) + size = len(buf) } else { - d, size, err = decompress(compressor, d, maxReceiveMessageSize) + buf, size, err = decompress(compressor, buf, maxReceiveMessageSize) } if err != nil { return nil, status.Errorf(codes.Internal, "grpc: failed to decompress the received message: %v", err) @@ -757,7 +758,7 @@ func recvAndDecompress(p *parser, s *transport.Stream, dc Decompressor, maxRecei return nil, status.Errorf(codes.ResourceExhausted, "grpc: received message after decompression larger than max (%d vs. %d)", size, maxReceiveMessageSize) } } - return d, nil + return buf, nil } // Using compressor, decompress d, returning data and size. @@ -791,16 +792,18 @@ func decompress(compressor encoding.Compressor, d []byte, maxReceiveMessageSize // For the two compressor parameters, both should not be set, but if they are, // dc takes precedence over compressor. // TODO(dfawley): wrap the old compressor/decompressor using the new API? -func recv(p *parser, c baseCodec, s *transport.Stream, dc Decompressor, m interface{}, maxReceiveMessageSize int, payInfo *payloadInfo, compressor encoding.Compressor) error { - d, err := recvAndDecompress(p, s, dc, maxReceiveMessageSize, payInfo, compressor) +func recv(p *parser, c baseCodec, s *transport.Stream, dc Decompressor, m any, maxReceiveMessageSize int, payInfo *payloadInfo, compressor encoding.Compressor) error { + buf, err := recvAndDecompress(p, s, dc, maxReceiveMessageSize, payInfo, compressor) if err != nil { return err } - if err := c.Unmarshal(d, m); err != nil { + if err := c.Unmarshal(buf, m); err != nil { return status.Errorf(codes.Internal, "grpc: failed to unmarshal the received message: %v", err) } if payInfo != nil { - payInfo.uncompressedBytes = d + payInfo.uncompressedBytes = buf + } else { + p.recvBufferPool.Put(&buf) } return nil } @@ -860,19 +863,22 @@ func ErrorDesc(err error) string { // Errorf returns nil if c is OK. // // Deprecated: use status.Errorf instead. -func Errorf(c codes.Code, format string, a ...interface{}) error { +func Errorf(c codes.Code, format string, a ...any) error { return status.Errorf(c, format, a...) } +var errContextCanceled = status.Error(codes.Canceled, context.Canceled.Error()) +var errContextDeadline = status.Error(codes.DeadlineExceeded, context.DeadlineExceeded.Error()) + // toRPCErr converts an error into an error from the status package. func toRPCErr(err error) error { switch err { case nil, io.EOF: return err case context.DeadlineExceeded: - return status.Error(codes.DeadlineExceeded, err.Error()) + return errContextDeadline case context.Canceled: - return status.Error(codes.Canceled, err.Error()) + return errContextCanceled case io.ErrUnexpectedEOF: return status.Error(codes.Internal, err.Error()) } diff --git a/vendor/google.golang.org/grpc/server.go b/vendor/google.golang.org/grpc/server.go index 8869cc906f..eeae92fbe0 100644 --- a/vendor/google.golang.org/grpc/server.go +++ b/vendor/google.golang.org/grpc/server.go @@ -86,7 +86,7 @@ func init() { var statusOK = status.New(codes.OK, "") var logger = grpclog.Component("core") -type methodHandler func(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor UnaryServerInterceptor) (interface{}, error) +type methodHandler func(srv any, ctx context.Context, dec func(any) error, interceptor UnaryServerInterceptor) (any, error) // MethodDesc represents an RPC service's method specification. type MethodDesc struct { @@ -99,20 +99,20 @@ type ServiceDesc struct { ServiceName string // The pointer to the service interface. Used to check whether the user // provided implementation satisfies the interface requirements. - HandlerType interface{} + HandlerType any Methods []MethodDesc Streams []StreamDesc - Metadata interface{} + Metadata any } // serviceInfo wraps information about a service. It is very similar to // ServiceDesc and is constructed from it for internal purposes. type serviceInfo struct { // Contains the implementation for the methods in this service. - serviceImpl interface{} + serviceImpl any methods map[string]*MethodDesc streams map[string]*StreamDesc - mdata interface{} + mdata any } // Server is a gRPC server to serve RPC requests. @@ -164,10 +164,12 @@ type serverOptions struct { initialConnWindowSize int32 writeBufferSize int readBufferSize int + sharedWriteBuffer bool connectionTimeout time.Duration maxHeaderListSize *uint32 headerTableSize *uint32 numServerWorkers uint32 + recvBufferPool SharedBufferPool } var defaultServerOptions = serverOptions{ @@ -177,6 +179,7 @@ var defaultServerOptions = serverOptions{ connectionTimeout: 120 * time.Second, writeBufferSize: defaultWriteBufSize, readBufferSize: defaultReadBufSize, + recvBufferPool: nopBufferPool{}, } var globalServerOptions []ServerOption @@ -228,6 +231,20 @@ func newJoinServerOption(opts ...ServerOption) ServerOption { return &joinServerOption{opts: opts} } +// SharedWriteBuffer allows reusing per-connection transport write buffer. +// If this option is set to true every connection will release the buffer after +// flushing the data on the wire. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func SharedWriteBuffer(val bool) ServerOption { + return newFuncServerOption(func(o *serverOptions) { + o.sharedWriteBuffer = val + }) +} + // WriteBufferSize determines how much data can be batched before doing a write // on the wire. The corresponding memory allocation for this buffer will be // twice the size to keep syscalls low. The default value for this buffer is @@ -268,9 +285,9 @@ func InitialConnWindowSize(s int32) ServerOption { // KeepaliveParams returns a ServerOption that sets keepalive and max-age parameters for the server. func KeepaliveParams(kp keepalive.ServerParameters) ServerOption { - if kp.Time > 0 && kp.Time < time.Second { + if kp.Time > 0 && kp.Time < internal.KeepaliveMinServerPingTime { logger.Warning("Adjusting keepalive ping interval to minimum period of 1s") - kp.Time = time.Second + kp.Time = internal.KeepaliveMinServerPingTime } return newFuncServerOption(func(o *serverOptions) { @@ -550,6 +567,27 @@ func NumStreamWorkers(numServerWorkers uint32) ServerOption { }) } +// RecvBufferPool returns a ServerOption that configures the server +// to use the provided shared buffer pool for parsing incoming messages. Depending +// on the application's workload, this could result in reduced memory allocation. +// +// If you are unsure about how to implement a memory pool but want to utilize one, +// begin with grpc.NewSharedBufferPool. +// +// Note: The shared buffer pool feature will not be active if any of the following +// options are used: StatsHandler, EnableTracing, or binary logging. In such +// cases, the shared buffer pool will be ignored. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func RecvBufferPool(bufferPool SharedBufferPool) ServerOption { + return newFuncServerOption(func(o *serverOptions) { + o.recvBufferPool = bufferPool + }) +} + // serverWorkerResetThreshold defines how often the stack must be reset. Every // N requests, by spawning a new goroutine in its place, a worker can reset its // stack so that large stacks don't live in memory forever. 2^16 should allow @@ -625,7 +663,7 @@ func NewServer(opt ...ServerOption) *Server { // printf records an event in s's event log, unless s has been stopped. // REQUIRES s.mu is held. -func (s *Server) printf(format string, a ...interface{}) { +func (s *Server) printf(format string, a ...any) { if s.events != nil { s.events.Printf(format, a...) } @@ -633,7 +671,7 @@ func (s *Server) printf(format string, a ...interface{}) { // errorf records an error in s's event log, unless s has been stopped. // REQUIRES s.mu is held. -func (s *Server) errorf(format string, a ...interface{}) { +func (s *Server) errorf(format string, a ...any) { if s.events != nil { s.events.Errorf(format, a...) } @@ -648,14 +686,14 @@ type ServiceRegistrar interface { // once the server has started serving. // desc describes the service and its methods and handlers. impl is the // service implementation which is passed to the method handlers. - RegisterService(desc *ServiceDesc, impl interface{}) + RegisterService(desc *ServiceDesc, impl any) } // RegisterService registers a service and its implementation to the gRPC // server. It is called from the IDL generated code. This must be called before // invoking Serve. If ss is non-nil (for legacy code), its type is checked to // ensure it implements sd.HandlerType. -func (s *Server) RegisterService(sd *ServiceDesc, ss interface{}) { +func (s *Server) RegisterService(sd *ServiceDesc, ss any) { if ss != nil { ht := reflect.TypeOf(sd.HandlerType).Elem() st := reflect.TypeOf(ss) @@ -666,7 +704,7 @@ func (s *Server) RegisterService(sd *ServiceDesc, ss interface{}) { s.register(sd, ss) } -func (s *Server) register(sd *ServiceDesc, ss interface{}) { +func (s *Server) register(sd *ServiceDesc, ss any) { s.mu.Lock() defer s.mu.Unlock() s.printf("RegisterService(%q)", sd.ServiceName) @@ -707,7 +745,7 @@ type MethodInfo struct { type ServiceInfo struct { Methods []MethodInfo // Metadata is the metadata specified in ServiceDesc when registering service. - Metadata interface{} + Metadata any } // GetServiceInfo returns a map from service names to ServiceInfo. @@ -908,6 +946,7 @@ func (s *Server) newHTTP2Transport(c net.Conn) transport.ServerTransport { InitialConnWindowSize: s.opts.initialConnWindowSize, WriteBufferSize: s.opts.writeBufferSize, ReadBufferSize: s.opts.readBufferSize, + SharedWriteBuffer: s.opts.sharedWriteBuffer, ChannelzParentID: s.channelzID, MaxHeaderListSize: s.opts.maxHeaderListSize, HeaderTableSize: s.opts.headerTableSize, @@ -1094,7 +1133,7 @@ func (s *Server) incrCallsFailed() { atomic.AddInt64(&s.czData.callsFailed, 1) } -func (s *Server) sendResponse(t transport.ServerTransport, stream *transport.Stream, msg interface{}, cp Compressor, opts *transport.Options, comp encoding.Compressor) error { +func (s *Server) sendResponse(t transport.ServerTransport, stream *transport.Stream, msg any, cp Compressor, opts *transport.Options, comp encoding.Compressor) error { data, err := encode(s.getCodec(stream.ContentSubtype()), msg) if err != nil { channelz.Error(logger, s.channelzID, "grpc: server failed to encode response: ", err) @@ -1141,7 +1180,7 @@ func chainUnaryServerInterceptors(s *Server) { } func chainUnaryInterceptors(interceptors []UnaryServerInterceptor) UnaryServerInterceptor { - return func(ctx context.Context, req interface{}, info *UnaryServerInfo, handler UnaryHandler) (interface{}, error) { + return func(ctx context.Context, req any, info *UnaryServerInfo, handler UnaryHandler) (any, error) { return interceptors[0](ctx, req, info, getChainUnaryHandler(interceptors, 0, info, handler)) } } @@ -1150,7 +1189,7 @@ func getChainUnaryHandler(interceptors []UnaryServerInterceptor, curr int, info if curr == len(interceptors)-1 { return finalHandler } - return func(ctx context.Context, req interface{}) (interface{}, error) { + return func(ctx context.Context, req any) (any, error) { return interceptors[curr+1](ctx, req, info, getChainUnaryHandler(interceptors, curr+1, info, finalHandler)) } } @@ -1187,7 +1226,7 @@ func (s *Server) processUnaryRPC(t transport.ServerTransport, stream *transport. defer func() { if trInfo != nil { if err != nil && err != io.EOF { - trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) trInfo.tr.SetError() } trInfo.tr.Finish() @@ -1294,7 +1333,7 @@ func (s *Server) processUnaryRPC(t transport.ServerTransport, stream *transport. if len(shs) != 0 || len(binlogs) != 0 { payInfo = &payloadInfo{} } - d, err := recvAndDecompress(&parser{r: stream}, stream, dc, s.opts.maxReceiveMessageSize, payInfo, decomp) + d, err := recvAndDecompress(&parser{r: stream, recvBufferPool: s.opts.recvBufferPool}, stream, dc, s.opts.maxReceiveMessageSize, payInfo, decomp) if err != nil { if e := t.WriteStatus(stream, status.Convert(err)); e != nil { channelz.Warningf(logger, s.channelzID, "grpc: Server.processUnaryRPC failed to write status: %v", e) @@ -1304,7 +1343,7 @@ func (s *Server) processUnaryRPC(t transport.ServerTransport, stream *transport. if channelz.IsOn() { t.IncrMsgRecv() } - df := func(v interface{}) error { + df := func(v any) error { if err := s.getCodec(stream.ContentSubtype()).Unmarshal(d, v); err != nil { return status.Errorf(codes.Internal, "grpc: error unmarshalling request: %v", err) } @@ -1468,7 +1507,7 @@ func chainStreamServerInterceptors(s *Server) { } func chainStreamInterceptors(interceptors []StreamServerInterceptor) StreamServerInterceptor { - return func(srv interface{}, ss ServerStream, info *StreamServerInfo, handler StreamHandler) error { + return func(srv any, ss ServerStream, info *StreamServerInfo, handler StreamHandler) error { return interceptors[0](srv, ss, info, getChainStreamHandler(interceptors, 0, info, handler)) } } @@ -1477,7 +1516,7 @@ func getChainStreamHandler(interceptors []StreamServerInterceptor, curr int, inf if curr == len(interceptors)-1 { return finalHandler } - return func(srv interface{}, stream ServerStream) error { + return func(srv any, stream ServerStream) error { return interceptors[curr+1](srv, stream, info, getChainStreamHandler(interceptors, curr+1, info, finalHandler)) } } @@ -1504,7 +1543,7 @@ func (s *Server) processStreamingRPC(t transport.ServerTransport, stream *transp ctx: ctx, t: t, s: stream, - p: &parser{r: stream}, + p: &parser{r: stream, recvBufferPool: s.opts.recvBufferPool}, codec: s.getCodec(stream.ContentSubtype()), maxReceiveMessageSize: s.opts.maxReceiveMessageSize, maxSendMessageSize: s.opts.maxSendMessageSize, @@ -1518,7 +1557,7 @@ func (s *Server) processStreamingRPC(t transport.ServerTransport, stream *transp if trInfo != nil { ss.mu.Lock() if err != nil && err != io.EOF { - ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) ss.trInfo.tr.SetError() } ss.trInfo.tr.Finish() @@ -1621,7 +1660,7 @@ func (s *Server) processStreamingRPC(t transport.ServerTransport, stream *transp trInfo.tr.LazyLog(&trInfo.firstLine, false) } var appErr error - var server interface{} + var server any if info != nil { server = info.serviceImpl } @@ -1687,13 +1726,13 @@ func (s *Server) handleStream(t transport.ServerTransport, stream *transport.Str pos := strings.LastIndex(sm, "/") if pos == -1 { if trInfo != nil { - trInfo.tr.LazyLog(&fmtStringer{"Malformed method name %q", []interface{}{sm}}, true) + trInfo.tr.LazyLog(&fmtStringer{"Malformed method name %q", []any{sm}}, true) trInfo.tr.SetError() } errDesc := fmt.Sprintf("malformed method name: %q", stream.Method()) if err := t.WriteStatus(stream, status.New(codes.Unimplemented, errDesc)); err != nil { if trInfo != nil { - trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) trInfo.tr.SetError() } channelz.Warningf(logger, s.channelzID, "grpc: Server.handleStream failed to write status: %v", err) @@ -1734,7 +1773,7 @@ func (s *Server) handleStream(t transport.ServerTransport, stream *transport.Str } if err := t.WriteStatus(stream, status.New(codes.Unimplemented, errDesc)); err != nil { if trInfo != nil { - trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) trInfo.tr.SetError() } channelz.Warningf(logger, s.channelzID, "grpc: Server.handleStream failed to write status: %v", err) @@ -2054,12 +2093,12 @@ func validateSendCompressor(name, clientCompressors string) error { // atomicSemaphore implements a blocking, counting semaphore. acquire should be // called synchronously; release may be called asynchronously. type atomicSemaphore struct { - n int64 + n atomic.Int64 wait chan struct{} } func (q *atomicSemaphore) acquire() { - if atomic.AddInt64(&q.n, -1) < 0 { + if q.n.Add(-1) < 0 { // We ran out of quota. Block until a release happens. <-q.wait } @@ -2070,12 +2109,14 @@ func (q *atomicSemaphore) release() { // concurrent calls to acquire, but also note that with synchronous calls to // acquire, as our system does, n will never be less than -1. There are // fairness issues (queuing) to consider if this was to be generalized. - if atomic.AddInt64(&q.n, 1) <= 0 { + if q.n.Add(1) <= 0 { // An acquire was waiting on us. Unblock it. q.wait <- struct{}{} } } func newHandlerQuota(n uint32) *atomicSemaphore { - return &atomicSemaphore{n: int64(n), wait: make(chan struct{}, 1)} + a := &atomicSemaphore{wait: make(chan struct{}, 1)} + a.n.Store(int64(n)) + return a } diff --git a/vendor/google.golang.org/grpc/shared_buffer_pool.go b/vendor/google.golang.org/grpc/shared_buffer_pool.go new file mode 100644 index 0000000000..48a64cfe8e --- /dev/null +++ b/vendor/google.golang.org/grpc/shared_buffer_pool.go @@ -0,0 +1,154 @@ +/* + * + * Copyright 2023 gRPC authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +package grpc + +import "sync" + +// SharedBufferPool is a pool of buffers that can be shared, resulting in +// decreased memory allocation. Currently, in gRPC-go, it is only utilized +// for parsing incoming messages. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +type SharedBufferPool interface { + // Get returns a buffer with specified length from the pool. + // + // The returned byte slice may be not zero initialized. + Get(length int) []byte + + // Put returns a buffer to the pool. + Put(*[]byte) +} + +// NewSharedBufferPool creates a simple SharedBufferPool with buckets +// of different sizes to optimize memory usage. This prevents the pool from +// wasting large amounts of memory, even when handling messages of varying sizes. +// +// # Experimental +// +// Notice: This API is EXPERIMENTAL and may be changed or removed in a +// later release. +func NewSharedBufferPool() SharedBufferPool { + return &simpleSharedBufferPool{ + pools: [poolArraySize]simpleSharedBufferChildPool{ + newBytesPool(level0PoolMaxSize), + newBytesPool(level1PoolMaxSize), + newBytesPool(level2PoolMaxSize), + newBytesPool(level3PoolMaxSize), + newBytesPool(level4PoolMaxSize), + newBytesPool(0), + }, + } +} + +// simpleSharedBufferPool is a simple implementation of SharedBufferPool. +type simpleSharedBufferPool struct { + pools [poolArraySize]simpleSharedBufferChildPool +} + +func (p *simpleSharedBufferPool) Get(size int) []byte { + return p.pools[p.poolIdx(size)].Get(size) +} + +func (p *simpleSharedBufferPool) Put(bs *[]byte) { + p.pools[p.poolIdx(cap(*bs))].Put(bs) +} + +func (p *simpleSharedBufferPool) poolIdx(size int) int { + switch { + case size <= level0PoolMaxSize: + return level0PoolIdx + case size <= level1PoolMaxSize: + return level1PoolIdx + case size <= level2PoolMaxSize: + return level2PoolIdx + case size <= level3PoolMaxSize: + return level3PoolIdx + case size <= level4PoolMaxSize: + return level4PoolIdx + default: + return levelMaxPoolIdx + } +} + +const ( + level0PoolMaxSize = 16 // 16 B + level1PoolMaxSize = level0PoolMaxSize * 16 // 256 B + level2PoolMaxSize = level1PoolMaxSize * 16 // 4 KB + level3PoolMaxSize = level2PoolMaxSize * 16 // 64 KB + level4PoolMaxSize = level3PoolMaxSize * 16 // 1 MB +) + +const ( + level0PoolIdx = iota + level1PoolIdx + level2PoolIdx + level3PoolIdx + level4PoolIdx + levelMaxPoolIdx + poolArraySize +) + +type simpleSharedBufferChildPool interface { + Get(size int) []byte + Put(any) +} + +type bufferPool struct { + sync.Pool + + defaultSize int +} + +func (p *bufferPool) Get(size int) []byte { + bs := p.Pool.Get().(*[]byte) + + if cap(*bs) < size { + p.Pool.Put(bs) + + return make([]byte, size) + } + + return (*bs)[:size] +} + +func newBytesPool(size int) simpleSharedBufferChildPool { + return &bufferPool{ + Pool: sync.Pool{ + New: func() any { + bs := make([]byte, size) + return &bs + }, + }, + defaultSize: size, + } +} + +// nopBufferPool is a buffer pool just makes new buffer without pooling. +type nopBufferPool struct { +} + +func (nopBufferPool) Get(length int) []byte { + return make([]byte, length) +} + +func (nopBufferPool) Put(*[]byte) { +} diff --git a/vendor/google.golang.org/grpc/stats/stats.go b/vendor/google.golang.org/grpc/stats/stats.go index 7a552a9b78..4ab70e2d46 100644 --- a/vendor/google.golang.org/grpc/stats/stats.go +++ b/vendor/google.golang.org/grpc/stats/stats.go @@ -59,12 +59,22 @@ func (s *Begin) IsClient() bool { return s.Client } func (s *Begin) isRPCStats() {} +// PickerUpdated indicates that the LB policy provided a new picker while the +// RPC was waiting for one. +type PickerUpdated struct{} + +// IsClient indicates if the stats information is from client side. Only Client +// Side interfaces with a Picker, thus always returns true. +func (*PickerUpdated) IsClient() bool { return true } + +func (*PickerUpdated) isRPCStats() {} + // InPayload contains the information for an incoming payload. type InPayload struct { // Client is true if this InPayload is from client side. Client bool // Payload is the payload with original type. - Payload interface{} + Payload any // Data is the serialized message payload. Data []byte @@ -134,7 +144,7 @@ type OutPayload struct { // Client is true if this OutPayload is from client side. Client bool // Payload is the payload with original type. - Payload interface{} + Payload any // Data is the serialized message payload. Data []byte // Length is the size of the uncompressed payload data. Does not include any diff --git a/vendor/google.golang.org/grpc/status/status.go b/vendor/google.golang.org/grpc/status/status.go index bcf2e4d81b..a93360efb8 100644 --- a/vendor/google.golang.org/grpc/status/status.go +++ b/vendor/google.golang.org/grpc/status/status.go @@ -50,7 +50,7 @@ func New(c codes.Code, msg string) *Status { } // Newf returns New(c, fmt.Sprintf(format, a...)). -func Newf(c codes.Code, format string, a ...interface{}) *Status { +func Newf(c codes.Code, format string, a ...any) *Status { return New(c, fmt.Sprintf(format, a...)) } @@ -60,7 +60,7 @@ func Error(c codes.Code, msg string) error { } // Errorf returns Error(c, fmt.Sprintf(format, a...)). -func Errorf(c codes.Code, format string, a ...interface{}) error { +func Errorf(c codes.Code, format string, a ...any) error { return Error(c, fmt.Sprintf(format, a...)) } @@ -99,25 +99,27 @@ func FromError(err error) (s *Status, ok bool) { } type grpcstatus interface{ GRPCStatus() *Status } if gs, ok := err.(grpcstatus); ok { - if gs.GRPCStatus() == nil { + grpcStatus := gs.GRPCStatus() + if grpcStatus == nil { // Error has status nil, which maps to codes.OK. There // is no sensible behavior for this, so we turn it into // an error with codes.Unknown and discard the existing // status. return New(codes.Unknown, err.Error()), false } - return gs.GRPCStatus(), true + return grpcStatus, true } var gs grpcstatus if errors.As(err, &gs) { - if gs.GRPCStatus() == nil { + grpcStatus := gs.GRPCStatus() + if grpcStatus == nil { // Error wraps an error that has status nil, which maps // to codes.OK. There is no sensible behavior for this, // so we turn it into an error with codes.Unknown and // discard the existing status. return New(codes.Unknown, err.Error()), false } - p := gs.GRPCStatus().Proto() + p := grpcStatus.Proto() p.Message = err.Error() return status.FromProto(p), true } diff --git a/vendor/google.golang.org/grpc/stream.go b/vendor/google.golang.org/grpc/stream.go index 10092685b2..b14b2fbea2 100644 --- a/vendor/google.golang.org/grpc/stream.go +++ b/vendor/google.golang.org/grpc/stream.go @@ -31,6 +31,7 @@ import ( "google.golang.org/grpc/balancer" "google.golang.org/grpc/codes" "google.golang.org/grpc/encoding" + "google.golang.org/grpc/internal" "google.golang.org/grpc/internal/balancerload" "google.golang.org/grpc/internal/binarylog" "google.golang.org/grpc/internal/channelz" @@ -54,7 +55,7 @@ import ( // status package, or be one of the context errors. Otherwise, gRPC will use // codes.Unknown as the status code and err.Error() as the status message of the // RPC. -type StreamHandler func(srv interface{}, stream ServerStream) error +type StreamHandler func(srv any, stream ServerStream) error // StreamDesc represents a streaming RPC service's method specification. Used // on the server when registering services and on the client when initiating @@ -79,9 +80,9 @@ type Stream interface { // Deprecated: See ClientStream and ServerStream documentation instead. Context() context.Context // Deprecated: See ClientStream and ServerStream documentation instead. - SendMsg(m interface{}) error + SendMsg(m any) error // Deprecated: See ClientStream and ServerStream documentation instead. - RecvMsg(m interface{}) error + RecvMsg(m any) error } // ClientStream defines the client-side behavior of a streaming RPC. @@ -90,7 +91,9 @@ type Stream interface { // status package. type ClientStream interface { // Header returns the header metadata received from the server if there - // is any. It blocks if the metadata is not ready to read. + // is any. It blocks if the metadata is not ready to read. If the metadata + // is nil and the error is also nil, then the stream was terminated without + // headers, and the status can be discovered by calling RecvMsg. Header() (metadata.MD, error) // Trailer returns the trailer metadata from the server, if there is any. // It must only be called after stream.CloseAndRecv has returned, or @@ -126,7 +129,7 @@ type ClientStream interface { // // It is not safe to modify the message after calling SendMsg. Tracing // libraries and stats handlers may use the message lazily. - SendMsg(m interface{}) error + SendMsg(m any) error // RecvMsg blocks until it receives a message into m or the stream is // done. It returns io.EOF when the stream completes successfully. On // any other error, the stream is aborted and the error contains the RPC @@ -135,7 +138,7 @@ type ClientStream interface { // It is safe to have a goroutine calling SendMsg and another goroutine // calling RecvMsg on the same stream at the same time, but it is not // safe to call RecvMsg on the same stream in different goroutines. - RecvMsg(m interface{}) error + RecvMsg(m any) error } // NewStream creates a new Stream for the client side. This is typically @@ -155,11 +158,6 @@ type ClientStream interface { // If none of the above happen, a goroutine and a context will be leaked, and grpc // will not call the optionally-configured stats handler with a stats.End message. func (cc *ClientConn) NewStream(ctx context.Context, desc *StreamDesc, method string, opts ...CallOption) (ClientStream, error) { - if err := cc.idlenessMgr.onCallBegin(); err != nil { - return nil, err - } - defer cc.idlenessMgr.onCallEnd() - // allow interceptor to see all applicable call options, which means those // configured as defaults from dial option as well as per-call options opts = combine(cc.dopts.callOptions, opts) @@ -176,6 +174,16 @@ func NewClientStream(ctx context.Context, desc *StreamDesc, cc *ClientConn, meth } func newClientStream(ctx context.Context, desc *StreamDesc, cc *ClientConn, method string, opts ...CallOption) (_ ClientStream, err error) { + // Start tracking the RPC for idleness purposes. This is where a stream is + // created for both streaming and unary RPCs, and hence is a good place to + // track active RPC count. + if err := cc.idlenessMgr.OnCallBegin(); err != nil { + return nil, err + } + // Add a calloption, to decrement the active call count, that gets executed + // when the RPC completes. + opts = append([]CallOption{OnFinish(func(error) { cc.idlenessMgr.OnCallEnd() })}, opts...) + if md, added, ok := metadata.FromOutgoingContextRaw(ctx); ok { // validate md if err := imetadata.Validate(md); err != nil { @@ -433,7 +441,7 @@ func (cs *clientStream) newAttemptLocked(isTransparent bool) (*csAttempt, error) ctx = trace.NewContext(ctx, trInfo.tr) } - if cs.cc.parsedTarget.URL.Scheme == "xds" { + if cs.cc.parsedTarget.URL.Scheme == internal.GRPCResolverSchemeExtraMetadata { // Add extra metadata (metadata that will be added by transport) to context // so the balancer can see them. ctx = grpcutil.WithExtraMetadata(ctx, metadata.Pairs( @@ -507,7 +515,7 @@ func (a *csAttempt) newStream() error { return toRPCErr(nse.Err) } a.s = s - a.p = &parser{r: s} + a.p = &parser{r: s, recvBufferPool: a.cs.cc.dopts.recvBufferPool} return nil } @@ -788,23 +796,24 @@ func (cs *clientStream) withRetry(op func(a *csAttempt) error, onSuccess func()) func (cs *clientStream) Header() (metadata.MD, error) { var m metadata.MD - noHeader := false err := cs.withRetry(func(a *csAttempt) error { var err error m, err = a.s.Header() - if err == transport.ErrNoHeaders { - noHeader = true - return nil - } return toRPCErr(err) }, cs.commitAttemptLocked) + if m == nil && err == nil { + // The stream ended with success. Finish the clientStream. + err = io.EOF + } + if err != nil { cs.finish(err) - return nil, err + // Do not return the error. The user should get it by calling Recv(). + return nil, nil } - if len(cs.binlogs) != 0 && !cs.serverHeaderBinlogged && !noHeader { + if len(cs.binlogs) != 0 && !cs.serverHeaderBinlogged && m != nil { // Only log if binary log is on and header has not been logged, and // there is actually headers to log. logEntry := &binarylog.ServerHeader{ @@ -820,6 +829,7 @@ func (cs *clientStream) Header() (metadata.MD, error) { binlog.Log(cs.ctx, logEntry) } } + return m, nil } @@ -860,7 +870,7 @@ func (cs *clientStream) bufferForRetryLocked(sz int, op func(a *csAttempt) error cs.buffer = append(cs.buffer, op) } -func (cs *clientStream) SendMsg(m interface{}) (err error) { +func (cs *clientStream) SendMsg(m any) (err error) { defer func() { if err != nil && err != io.EOF { // Call finish on the client stream for errors generated by this SendMsg @@ -904,7 +914,7 @@ func (cs *clientStream) SendMsg(m interface{}) (err error) { return err } -func (cs *clientStream) RecvMsg(m interface{}) error { +func (cs *clientStream) RecvMsg(m any) error { if len(cs.binlogs) != 0 && !cs.serverHeaderBinlogged { // Call Header() to binary log header if it's not already logged. cs.Header() @@ -928,24 +938,6 @@ func (cs *clientStream) RecvMsg(m interface{}) error { if err != nil || !cs.desc.ServerStreams { // err != nil or non-server-streaming indicates end of stream. cs.finish(err) - - if len(cs.binlogs) != 0 { - // finish will not log Trailer. Log Trailer here. - logEntry := &binarylog.ServerTrailer{ - OnClientSide: true, - Trailer: cs.Trailer(), - Err: err, - } - if logEntry.Err == io.EOF { - logEntry.Err = nil - } - if peer, ok := peer.FromContext(cs.Context()); ok { - logEntry.PeerAddr = peer.Addr - } - for _, binlog := range cs.binlogs { - binlog.Log(cs.ctx, logEntry) - } - } } return err } @@ -1001,18 +993,30 @@ func (cs *clientStream) finish(err error) { } } } + cs.mu.Unlock() - // For binary logging. only log cancel in finish (could be caused by RPC ctx - // canceled or ClientConn closed). Trailer will be logged in RecvMsg. - // - // Only one of cancel or trailer needs to be logged. In the cases where - // users don't call RecvMsg, users must have already canceled the RPC. - if len(cs.binlogs) != 0 && status.Code(err) == codes.Canceled { - c := &binarylog.Cancel{ - OnClientSide: true, - } - for _, binlog := range cs.binlogs { - binlog.Log(cs.ctx, c) + // Only one of cancel or trailer needs to be logged. + if len(cs.binlogs) != 0 { + switch err { + case errContextCanceled, errContextDeadline, ErrClientConnClosing: + c := &binarylog.Cancel{ + OnClientSide: true, + } + for _, binlog := range cs.binlogs { + binlog.Log(cs.ctx, c) + } + default: + logEntry := &binarylog.ServerTrailer{ + OnClientSide: true, + Trailer: cs.Trailer(), + Err: err, + } + if peer, ok := peer.FromContext(cs.Context()); ok { + logEntry.PeerAddr = peer.Addr + } + for _, binlog := range cs.binlogs { + binlog.Log(cs.ctx, logEntry) + } } } if err == nil { @@ -1028,7 +1032,7 @@ func (cs *clientStream) finish(err error) { cs.cancel() } -func (a *csAttempt) sendMsg(m interface{}, hdr, payld, data []byte) error { +func (a *csAttempt) sendMsg(m any, hdr, payld, data []byte) error { cs := a.cs if a.trInfo != nil { a.mu.Lock() @@ -1055,7 +1059,7 @@ func (a *csAttempt) sendMsg(m interface{}, hdr, payld, data []byte) error { return nil } -func (a *csAttempt) recvMsg(m interface{}, payInfo *payloadInfo) (err error) { +func (a *csAttempt) recvMsg(m any, payInfo *payloadInfo) (err error) { cs := a.cs if len(a.statsHandlers) != 0 && payInfo == nil { payInfo = &payloadInfo{} @@ -1270,7 +1274,7 @@ func newNonRetryClientStream(ctx context.Context, desc *StreamDesc, method strin return nil, err } as.s = s - as.p = &parser{r: s} + as.p = &parser{r: s, recvBufferPool: ac.dopts.recvBufferPool} ac.incrCallsStarted() if desc != unaryStreamDesc { // Listen on stream context to cleanup when the stream context is @@ -1348,7 +1352,7 @@ func (as *addrConnStream) Context() context.Context { return as.s.Context() } -func (as *addrConnStream) SendMsg(m interface{}) (err error) { +func (as *addrConnStream) SendMsg(m any) (err error) { defer func() { if err != nil && err != io.EOF { // Call finish on the client stream for errors generated by this SendMsg @@ -1393,7 +1397,7 @@ func (as *addrConnStream) SendMsg(m interface{}) (err error) { return nil } -func (as *addrConnStream) RecvMsg(m interface{}) (err error) { +func (as *addrConnStream) RecvMsg(m any) (err error) { defer func() { if err != nil || !as.desc.ServerStreams { // err != nil or non-server-streaming indicates end of stream. @@ -1512,7 +1516,7 @@ type ServerStream interface { // // It is not safe to modify the message after calling SendMsg. Tracing // libraries and stats handlers may use the message lazily. - SendMsg(m interface{}) error + SendMsg(m any) error // RecvMsg blocks until it receives a message into m or the stream is // done. It returns io.EOF when the client has performed a CloseSend. On // any non-EOF error, the stream is aborted and the error contains the @@ -1521,7 +1525,7 @@ type ServerStream interface { // It is safe to have a goroutine calling SendMsg and another goroutine // calling RecvMsg on the same stream at the same time, but it is not // safe to call RecvMsg on the same stream in different goroutines. - RecvMsg(m interface{}) error + RecvMsg(m any) error } // serverStream implements a server side Stream. @@ -1602,7 +1606,7 @@ func (ss *serverStream) SetTrailer(md metadata.MD) { ss.s.SetTrailer(md) } -func (ss *serverStream) SendMsg(m interface{}) (err error) { +func (ss *serverStream) SendMsg(m any) (err error) { defer func() { if ss.trInfo != nil { ss.mu.Lock() @@ -1610,7 +1614,7 @@ func (ss *serverStream) SendMsg(m interface{}) (err error) { if err == nil { ss.trInfo.tr.LazyLog(&payload{sent: true, msg: m}, true) } else { - ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) ss.trInfo.tr.SetError() } } @@ -1677,7 +1681,7 @@ func (ss *serverStream) SendMsg(m interface{}) (err error) { return nil } -func (ss *serverStream) RecvMsg(m interface{}) (err error) { +func (ss *serverStream) RecvMsg(m any) (err error) { defer func() { if ss.trInfo != nil { ss.mu.Lock() @@ -1685,7 +1689,7 @@ func (ss *serverStream) RecvMsg(m interface{}) (err error) { if err == nil { ss.trInfo.tr.LazyLog(&payload{sent: false, msg: m}, true) } else if err != io.EOF { - ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []interface{}{err}}, true) + ss.trInfo.tr.LazyLog(&fmtStringer{"%v", []any{err}}, true) ss.trInfo.tr.SetError() } } @@ -1757,7 +1761,7 @@ func MethodFromServerStream(stream ServerStream) (string, bool) { // prepareMsg returns the hdr, payload and data // using the compressors passed or using the // passed preparedmsg -func prepareMsg(m interface{}, codec baseCodec, cp Compressor, comp encoding.Compressor) (hdr, payload, data []byte, err error) { +func prepareMsg(m any, codec baseCodec, cp Compressor, comp encoding.Compressor) (hdr, payload, data []byte, err error) { if preparedMsg, ok := m.(*PreparedMsg); ok { return preparedMsg.hdr, preparedMsg.payload, preparedMsg.encodedData, nil } diff --git a/vendor/google.golang.org/grpc/trace.go b/vendor/google.golang.org/grpc/trace.go index 07a2d26b3e..9ded79321b 100644 --- a/vendor/google.golang.org/grpc/trace.go +++ b/vendor/google.golang.org/grpc/trace.go @@ -97,8 +97,8 @@ func truncate(x string, l int) string { // payload represents an RPC request or response payload. type payload struct { - sent bool // whether this is an outgoing payload - msg interface{} // e.g. a proto.Message + sent bool // whether this is an outgoing payload + msg any // e.g. a proto.Message // TODO(dsymonds): add stringifying info to codec, and limit how much we hold here? } @@ -111,7 +111,7 @@ func (p payload) String() string { type fmtStringer struct { format string - a []interface{} + a []any } func (f *fmtStringer) String() string { diff --git a/vendor/google.golang.org/grpc/version.go b/vendor/google.golang.org/grpc/version.go index 3cc7540621..724ad21021 100644 --- a/vendor/google.golang.org/grpc/version.go +++ b/vendor/google.golang.org/grpc/version.go @@ -19,4 +19,4 @@ package grpc // Version is the current grpc version. -const Version = "1.56.3" +const Version = "1.58.3" diff --git a/vendor/google.golang.org/grpc/vet.sh b/vendor/google.golang.org/grpc/vet.sh index a8e4732b3d..bbc9e2e3c8 100644 --- a/vendor/google.golang.org/grpc/vet.sh +++ b/vendor/google.golang.org/grpc/vet.sh @@ -84,6 +84,9 @@ not git grep -l 'x/net/context' -- "*.go" # thread safety. git grep -l '"math/rand"' -- "*.go" 2>&1 | not grep -v '^examples\|^stress\|grpcrand\|^benchmark\|wrr_test' +# - Do not use "interface{}"; use "any" instead. +git grep -l 'interface{}' -- "*.go" 2>&1 | not grep -v '\.pb\.go\|protoc-gen-go-grpc' + # - Do not call grpclog directly. Use grpclog.Component instead. git grep -l -e 'grpclog.I' --or -e 'grpclog.W' --or -e 'grpclog.E' --or -e 'grpclog.F' --or -e 'grpclog.V' -- "*.go" | not grep -v '^grpclog/component.go\|^internal/grpctest/tlogger_test.go' @@ -106,7 +109,7 @@ for MOD_FILE in $(find . -name 'go.mod'); do goimports -l . 2>&1 | not grep -vE "\.pb\.go" golint ./... 2>&1 | not grep -vE "/grpc_testing_not_regenerate/.*\.pb\.go:" - go mod tidy -compat=1.17 + go mod tidy -compat=1.19 git status --porcelain 2>&1 | fail_on_output || \ (git status; git --no-pager diff; exit 1) popd @@ -168,8 +171,6 @@ proto.RegisteredExtension is deprecated proto.RegisteredExtensions is deprecated proto.RegisterMapType is deprecated proto.Unmarshaler is deprecated -resolver.Backend -resolver.GRPCLB Target is deprecated: Use the Target field in the BuildOptions instead. xxx_messageInfo_ ' "${SC_OUT}" diff --git a/vendor/modules.txt b/vendor/modules.txt index 4bd92f08b6..fa22c47c3e 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -233,7 +233,7 @@ github.com/longhorn/backupstore/util github.com/longhorn/go-iscsi-helper/iscsi github.com/longhorn/go-iscsi-helper/types github.com/longhorn/go-iscsi-helper/util -# github.com/longhorn/go-spdk-helper v0.0.0-20231113055029-9acddd184246 +# github.com/longhorn/go-spdk-helper v0.0.0-20231212033123-3b72caa5a1ea ## explicit; go 1.21 github.com/longhorn/go-spdk-helper/pkg/types # github.com/longhorn/longhorn-engine v1.4.0-rc1.0.20230914160943-b42224518443 @@ -243,7 +243,7 @@ github.com/longhorn/longhorn-engine/pkg/replica/client github.com/longhorn/longhorn-engine/pkg/types github.com/longhorn/longhorn-engine/pkg/util github.com/longhorn/longhorn-engine/proto/ptypes -# github.com/longhorn/longhorn-instance-manager v1.4.0-rc1.0.20231117031020-055db7ef0240 +# github.com/longhorn/longhorn-instance-manager v1.5.3 => github.com/shuo-wu/longhorn-instance-manager v0.0.0-20231219150837-45a7e32b8266 ## explicit; go 1.21 github.com/longhorn/longhorn-instance-manager/pkg/api github.com/longhorn/longhorn-instance-manager/pkg/client @@ -261,8 +261,8 @@ github.com/longhorn/longhorn-share-manager/pkg/server/nfs github.com/longhorn/longhorn-share-manager/pkg/types github.com/longhorn/longhorn-share-manager/pkg/util github.com/longhorn/longhorn-share-manager/pkg/volume -# github.com/longhorn/longhorn-spdk-engine v0.0.0-20231005170812-e9b634e07e47 -## explicit; go 1.17 +# github.com/longhorn/longhorn-spdk-engine v0.0.0-20231218140159-260714390564 => github.com/shuo-wu/longhorn-spdk-engine v0.0.0-20231219142758-f95aec815db9 +## explicit; go 1.21 github.com/longhorn/longhorn-spdk-engine/pkg/types github.com/longhorn/longhorn-spdk-engine/proto/spdkrpc # github.com/mailru/easyjson v0.7.7 @@ -564,8 +564,8 @@ golang.org/x/net/websocket ## explicit; go 1.17 golang.org/x/oauth2 golang.org/x/oauth2/internal -# golang.org/x/sync v0.2.0 -## explicit +# golang.org/x/sync v0.3.0 +## explicit; go 1.17 golang.org/x/sync/errgroup golang.org/x/sync/semaphore golang.org/x/sync/singleflight @@ -630,22 +630,22 @@ google.golang.org/appengine/internal/log google.golang.org/appengine/internal/remote_api google.golang.org/appengine/internal/urlfetch google.golang.org/appengine/urlfetch -# google.golang.org/genproto v0.0.0-20230526161137-0005af68ea54 +# google.golang.org/genproto v0.0.0-20230711160842-782d3b101e98 ## explicit; go 1.19 google.golang.org/genproto/internal google.golang.org/genproto/protobuf/field_mask -# google.golang.org/genproto/googleapis/api v0.0.0-20230525234035-dd9d682886f9 +# google.golang.org/genproto/googleapis/api v0.0.0-20230711160842-782d3b101e98 ## explicit; go 1.19 google.golang.org/genproto/googleapis/api google.golang.org/genproto/googleapis/api/annotations google.golang.org/genproto/googleapis/api/expr/v1alpha1 google.golang.org/genproto/googleapis/api/httpbody -# google.golang.org/genproto/googleapis/rpc v0.0.0-20230525234030-28d5490b6b19 +# google.golang.org/genproto/googleapis/rpc v0.0.0-20230711160842-782d3b101e98 ## explicit; go 1.19 google.golang.org/genproto/googleapis/rpc/errdetails google.golang.org/genproto/googleapis/rpc/status -# google.golang.org/grpc v1.56.3 -## explicit; go 1.17 +# google.golang.org/grpc v1.58.3 +## explicit; go 1.19 google.golang.org/grpc google.golang.org/grpc/attributes google.golang.org/grpc/backoff @@ -677,6 +677,7 @@ google.golang.org/grpc/internal/grpclog google.golang.org/grpc/internal/grpcrand google.golang.org/grpc/internal/grpcsync google.golang.org/grpc/internal/grpcutil +google.golang.org/grpc/internal/idle google.golang.org/grpc/internal/metadata google.golang.org/grpc/internal/pretty google.golang.org/grpc/internal/resolver @@ -1521,6 +1522,8 @@ sigs.k8s.io/structured-merge-diff/v4/value # sigs.k8s.io/yaml v1.3.0 ## explicit; go 1.12 sigs.k8s.io/yaml +# github.com/longhorn/longhorn-instance-manager => github.com/shuo-wu/longhorn-instance-manager v0.0.0-20231219150837-45a7e32b8266 +# github.com/longhorn/longhorn-spdk-engine => github.com/shuo-wu/longhorn-spdk-engine v0.0.0-20231219142758-f95aec815db9 # k8s.io/api => k8s.io/api v0.28.2 # k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.28.2 # k8s.io/apimachinery => k8s.io/apimachinery v0.28.2