Inspect changes in Gitaly 8c09007d6a340364eda51476ab99a3d27c720713
Upstream merge commit a74861d22611 changes Gitaly server version from 2177ee1ccbc6f2ae8b7c03b192a2a328443a3512 to 8c09007d6a340364eda51476ab99a3d27c720713, with changes in protocol or one of the source subtrees currently under watch.
To further inspect, go to an up to date Gitaly source clone and run:
git diff 2177ee1ccbc6f2ae8b7c03b192a2a328443a3512..8c09007d6a340364eda51476ab99a3d27c720713 -- proto/*.proto internal/backup
Here is a preview, truncated at 500 lines:
diff --git a/proto/log.proto b/proto/log.proto
index 278713735..b5ae5a575 100644
--- a/proto/log.proto
+++ b/proto/log.proto
@@ -4,10 +4,10 @@ package gitaly;
option go_package = "gitlab.com/gitlab-org/gitaly/v16/proto/go/gitalypb";
-// LogEntry is a single entry in a repository's write-ahead log.
+// LogEntry is a single entry in a partition's write-ahead log.
//
// Schema for :
-// - `repository/<repository_id>/log/entry/<log_index>`.
+// - `partition/<partition_id>/log/entry/<log_index>`.
message LogEntry {
// ReferenceUpdate models a single reference update.
message ReferenceUpdate {
@@ -58,12 +58,12 @@ message LogEntry {
RepositoryDeletion repository_deletion = 6;
}
-// LogIndex serializes a log index. It's used for storing a repository's
-// applied log index in the database.
+// LSN serializes a log sequence number. It's used for storing a partition's
+// applied LSN in the database.
//
// Schema for:
-// - `repository/<repository_id>/log/index/applied`
-message LogIndex {
- // log_index is an index pointing to a position in the log.
- uint64 log_index = 1;
+// - `partition/<partition_id>/applied_lsn`
+message LSN {
+ // value is an LSN pointing to a position in the log.
+ uint64 value = 1;
}
diff --git a/proto/praefect.proto b/proto/praefect.proto
index 1ec4fa11a..03aa2b22c 100644
--- a/proto/praefect.proto
+++ b/proto/praefect.proto
@@ -16,13 +16,6 @@ service PraefectInfoService {
// RepositoryReplicas ...
rpc RepositoryReplicas(RepositoryReplicasRequest) returns (RepositoryReplicasResponse);
- // DatalossCheck provides information on repositories in Praefect that are in a degraded state and
- // thus susceptible to dataloss. A repository is considered degraded when its replicas are
- // outdated and/or unavailable.
- rpc DatalossCheck(DatalossCheckRequest) returns (DatalossCheckResponse) {
- option deprecated = true;
- };
-
// Dataloss provides information on repositories in Praefect that are in a degraded state and
// thus susceptible to dataloss. A repository is considered degraded when its replicas are
// outdated and/or unavailable.
@@ -206,50 +199,6 @@ message DatalossResponse {
repeated Repository repositories = 2;
}
-// DatalossCheckRequest ...
-message DatalossCheckRequest {
- option deprecated = true;
- // virtual_storage ...
- string virtual_storage = 1;
- // include_partially_replicated indicates whether to include repositories which are available but
- // are unavailable on some assigned storages.
- bool include_partially_replicated = 2;
-}
-
-// DatalossCheckResponse ...
-message DatalossCheckResponse {
- option deprecated = true;
- // Repository ...
- message Repository {
- // Storage ...
- message Storage {
- // name of the storage
- string name = 1;
- // behind_by indicates how many generations this storage is behind.
- int64 behind_by = 2;
- // assigned indicates whether the storage is assigned to host the repository.
- bool assigned = 3;
- // healthy indicates whether the storage is considered healthy by the consensus of Praefect nodes.
- bool healthy = 4;
- // valid_primary indicates whether the storage is ready to act as the primary if necessary.
- bool valid_primary = 5;
- }
-
- // relative_path of the repository with outdated replicas
- string relative_path = 1;
- // storages on which the repository is outdated
- repeated Storage storages = 2;
- // unavailable indicates whether the repository is in unavailable.
- bool unavailable = 3;
-
- // primary is the current primary storage of the repository.
- string primary = 4;
- }
-
- // repositories with data loss
- repeated Repository repositories = 2;
-}
-
// RepositoryReplicasRequest ...
message RepositoryReplicasRequest{
// repository ...
A merge request may have already been submitted, check that on the merge commit, as usually changes in Gitaly are not breaking, compliance becoming mandatory in the following development cycles.