Storage: Propagate RV to server on update+delete (#111866)
This commit is contained in:
@@ -731,8 +731,12 @@ func (s *server) update(ctx context.Context, user claims.AuthInfo, req *resource
|
||||
return rsp, nil
|
||||
}
|
||||
|
||||
// TODO: once we know the client is always sending the RV, require ResourceVersion > 0
|
||||
// See: https://github.com/grafana/grafana/pull/111866
|
||||
if req.ResourceVersion > 0 && latest.ResourceVersion != req.ResourceVersion {
|
||||
return nil, ErrOptimisticLockingFailed
|
||||
return &resourcepb.UpdateResponse{
|
||||
Error: &ErrOptimisticLockingFailed,
|
||||
}, nil
|
||||
}
|
||||
|
||||
event, e := s.newEvent(ctx, user, req.Key, req.Value, latest.Value)
|
||||
@@ -796,7 +800,7 @@ func (s *server) delete(ctx context.Context, user claims.AuthInfo, req *resource
|
||||
return rsp, nil
|
||||
}
|
||||
if req.ResourceVersion > 0 && latest.ResourceVersion != req.ResourceVersion {
|
||||
rsp.Error = AsErrorResult(ErrOptimisticLockingFailed)
|
||||
rsp.Error = &ErrOptimisticLockingFailed
|
||||
return rsp, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user