Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/proto
diff options
context:
space:
mode:
authorPatrick Steinhardt <psteinhardt@gitlab.com>2022-04-29 13:10:53 +0300
committerPatrick Steinhardt <psteinhardt@gitlab.com>2022-05-03 08:48:33 +0300
commit6dc1d2b46da953e893c3da5505a876cef0a51f34 (patch)
treeb49106ab34de09d8f21f262aa8ee5bd2bf3cbf00 /proto
parent5fc7fa58c6da132fc79f7b0b0f6e893efb986a57 (diff)
commit: Do not ignore revisions of the initial request
The `CheckObjectsExist()` RPC is a streaming RPC: the caller may send one or more requests to check sets of revisions. This is done such that this RPC call also works in the context where millions of revisions need to be checked in a single call, which could otherwise exceed the gRPC memory limitations. The current behaviour is a tad weird though: revisions sent as part of the initial request are completely ignored. This doesn't feel right as the caller would now be forced to _always_ send at least two messages. It's also not documented to be the case, and last but not least all our other streaming RPCs don't do it this way either. So let's fix this behaviour and also honor revisions sent of the initial request. Changelog: fixed
Diffstat (limited to 'proto')
-rw-r--r--proto/commit.proto4
-rw-r--r--proto/go/gitalypb/commit.pb.go4
2 files changed, 6 insertions, 2 deletions
diff --git a/proto/commit.proto b/proto/commit.proto
index 2311ac78d..5c5de630b 100644
--- a/proto/commit.proto
+++ b/proto/commit.proto
@@ -576,7 +576,9 @@ message GetCommitMessagesResponse {
bytes message = 2;
}
-// CheckObjectsExistRequest is a request for the CheckObjectsExist RPC.
+// CheckObjectsExistRequest is a request for the CheckObjectsExist RPC. Only
+// the initial request must contain a repository, the repository of all
+// subsequent requests will be ignored.
message CheckObjectsExistRequest {
// Repository is the repository in which existence of objects and refs
// are checked.
diff --git a/proto/go/gitalypb/commit.pb.go b/proto/go/gitalypb/commit.pb.go
index 09d6de63f..d5b5689a4 100644
--- a/proto/go/gitalypb/commit.pb.go
+++ b/proto/go/gitalypb/commit.pb.go
@@ -3401,7 +3401,9 @@ func (x *GetCommitMessagesResponse) GetMessage() []byte {
return nil
}
-// CheckObjectsExistRequest is a request for the CheckObjectsExist RPC.
+// CheckObjectsExistRequest is a request for the CheckObjectsExist RPC. Only
+// the initial request must contain a repository, the repository of all
+// subsequent requests will be ignored.
type CheckObjectsExistRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache