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
diff options
context:
space:
mode:
authorJohn Cai <jcai@gitlab.com>2022-05-05 22:50:52 +0300
committerJohn Cai <jcai@gitlab.com>2022-05-05 22:50:52 +0300
commit6d4f0649bf77338bb5a0c4bfff8f65a7bebdcba4 (patch)
tree393ebfcd9df039cf9733d1b8fae24438e9b102db
parent3f35f74cbd48f0a1557cd567087f685feede6672 (diff)
parentc99cf07fb1d956faaa7ea90b618ff8bbc512badb (diff)
Merge branch 'revert-smh-no-up-to-date-replicas-error' into 'master'
Revert "Return correct error when repository has no up to date replicas" See merge request gitlab-org/gitaly!4531
-rw-r--r--internal/praefect/datastore/repository_store.go8
-rw-r--r--internal/praefect/datastore/repository_store_test.go14
2 files changed, 2 insertions, 20 deletions
diff --git a/internal/praefect/datastore/repository_store.go b/internal/praefect/datastore/repository_store.go
index b2c0378f2..780073155 100644
--- a/internal/praefect/datastore/repository_store.go
+++ b/internal/praefect/datastore/repository_store.go
@@ -576,7 +576,7 @@ func (rs *PostgresRepositoryStore) GetConsistentStoragesByRepositoryID(ctx conte
return rs.getConsistentStorages(ctx, `
SELECT replica_path, ARRAY_AGG(storage)
FROM repositories
-LEFT JOIN storage_repositories USING (repository_id, relative_path, generation)
+JOIN storage_repositories USING (repository_id, relative_path, generation)
WHERE repository_id = $1
GROUP BY replica_path
`, repositoryID)
@@ -587,7 +587,7 @@ func (rs *PostgresRepositoryStore) GetConsistentStorages(ctx context.Context, vi
replicaPath, storages, err := rs.getConsistentStorages(ctx, `
SELECT replica_path, ARRAY_AGG(storage)
FROM repositories
-LEFT JOIN storage_repositories USING (repository_id, relative_path, generation)
+JOIN storage_repositories USING (repository_id, relative_path, generation)
WHERE repositories.virtual_storage = $1
AND repositories.relative_path = $2
GROUP BY replica_path
@@ -613,10 +613,6 @@ func (rs *PostgresRepositoryStore) getConsistentStorages(ctx context.Context, qu
}
result := storages.Slice()
- if len(result) == 0 {
- return "", nil, fmt.Errorf("repository has no up to date replicas")
- }
-
consistentStorages := make(map[string]struct{}, len(result))
for _, storage := range result {
consistentStorages[storage] = struct{}{}
diff --git a/internal/praefect/datastore/repository_store_test.go b/internal/praefect/datastore/repository_store_test.go
index a4c50d54b..9c980376c 100644
--- a/internal/praefect/datastore/repository_store_test.go
+++ b/internal/praefect/datastore/repository_store_test.go
@@ -972,20 +972,6 @@ func TestRepositoryStore_Postgres(t *testing.T) {
require.Equal(t, "new-path", replicaPath)
require.Equal(t, map[string]struct{}{"storage-1": {}, "storage-2": {}}, storages)
})
-
- t.Run("returns error when no up to date replicas", func(t *testing.T) {
- rs := newRepositoryStore(t, nil)
-
- require.NoError(t, rs.CreateRepository(ctx, 1, vs, repo, "replica-path", "primary", []string{"secondary"}, nil, false, false))
- require.NoError(t, rs.IncrementGeneration(ctx, 1, "primary", nil))
- require.NoError(t, rs.DeleteReplica(ctx, 1, "primary"))
-
- _, _, err := rs.GetConsistentStorages(ctx, vs, repo)
- require.EqualError(t, err, "repository has no up to date replicas")
-
- _, _, err = rs.GetConsistentStoragesByRepositoryID(ctx, 1)
- require.EqualError(t, err, "repository has no up to date replicas")
- })
})
t.Run("DeleteInvalidRepository", func(t *testing.T) {