diff options
author | Sami Hiltunen <shiltunen@gitlab.com> | 2020-05-14 18:27:21 +0300 |
---|---|---|
committer | Sami Hiltunen <shiltunen@gitlab.com> | 2020-05-15 12:14:48 +0300 |
commit | abae5da29e536c655ed8f1e4116a69811c33014d (patch) | |
tree | 3c08e1532d1b59ea6214ba2c059b75e6d12ecaad | |
parent | f54ee715e237709e722a009ae4a3622425f9b8ae (diff) |
write out enable-writes response correctly
Currently EnableWrites RPC is writing out a nil response, which in
turn returns an error to the client. This fixes the problem by
writing out an empty answer when there is no error.
-rw-r--r-- | internal/praefect/service/info/server.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/internal/praefect/service/info/server.go b/internal/praefect/service/info/server.go index 7b861bf57..f3920fefa 100644 --- a/internal/praefect/service/info/server.go +++ b/internal/praefect/service/info/server.go @@ -2,8 +2,10 @@ package info import ( "context" + "errors" "time" + "gitlab.com/gitlab-org/gitaly/internal/helper" "gitlab.com/gitlab-org/gitaly/internal/praefect/config" "gitlab.com/gitlab-org/gitaly/internal/praefect/datastore" "gitlab.com/gitlab-org/gitaly/internal/praefect/nodes" @@ -40,5 +42,13 @@ func NewServer(nodeMgr nodes.Manager, conf config.Config, queue Queue) gitalypb. } func (s *Server) EnableWrites(ctx context.Context, req *gitalypb.EnableWritesRequest) (*gitalypb.EnableWritesResponse, error) { - return nil, s.nodeMgr.EnableWrites(ctx, req.GetVirtualStorage()) + if err := s.nodeMgr.EnableWrites(ctx, req.GetVirtualStorage()); err != nil { + if errors.Is(err, nodes.ErrVirtualStorageNotExist) { + return nil, helper.ErrInvalidArgument(err) + } + + return nil, helper.ErrInternal(err) + } + + return &gitalypb.EnableWritesResponse{}, nil } |