This is an automated email from the ASF dual-hosted git repository.
tianxiaoliang pushed a commit to branch v1.x
in repository https://gitbox.apache.org/repos/asf/servicecomb-service-center.git
The following commit(s) were added to refs/heads/v1.x by this push:
new b141a55 SCB-2176 Fix: POST tags should be covered (#829)
b141a55 is described below
commit b141a55c6edb39342d240a18a3667247de594103
Author: little-cui <[email protected]>
AuthorDate: Mon Jan 18 10:26:07 2021 +0800
SCB-2176 Fix: POST tags should be covered (#829)
---
server/plugin/quota/buildin/common.go | 8 ++------
server/service/tag.go | 35 +----------------------------------
server/service/tag_test.go | 10 +---------
3 files changed, 4 insertions(+), 49 deletions(-)
diff --git a/server/plugin/quota/buildin/common.go
b/server/plugin/quota/buildin/common.go
index 38dfe79..ee351f3 100644
--- a/server/plugin/quota/buildin/common.go
+++ b/server/plugin/quota/buildin/common.go
@@ -29,7 +29,6 @@ import (
"github.com/apache/servicecomb-service-center/server/plugin/quota"
"github.com/apache/servicecomb-service-center/server/plugin/registry"
scerr "github.com/apache/servicecomb-service-center/server/scerror"
- serviceUtil
"github.com/apache/servicecomb-service-center/server/service/util"
)
type GetCurUsedNum func(context.Context, *quota.ApplyQuotaResource) (int64,
error)
@@ -96,11 +95,8 @@ func resourceLimitHandler(ctx context.Context, res
*quota.ApplyQuotaResource) (i
key = core.GenerateServiceSchemaKey(domainProject, serviceID,
"")
indexer = backend.Store().Schema()
case quota.TagQuotaType:
- tags, err := serviceUtil.GetTagsUtils(ctx, domainProject,
serviceID)
- if err != nil {
- return 0, err
- }
- return int64(len(tags)), nil
+ // always re-create the service old tags
+ return 0, nil
default:
return 0, fmt.Errorf("not define quota type '%s'",
res.QuotaType)
}
diff --git a/server/service/tag.go b/server/service/tag.go
index 42189fe..7eed8b4 100644
--- a/server/service/tag.go
+++ b/server/service/tag.go
@@ -26,8 +26,6 @@ import (
apt "github.com/apache/servicecomb-service-center/server/core"
"github.com/apache/servicecomb-service-center/server/core/backend"
"github.com/apache/servicecomb-service-center/server/core/proto"
- "github.com/apache/servicecomb-service-center/server/plugin"
- "github.com/apache/servicecomb-service-center/server/plugin/quota"
"github.com/apache/servicecomb-service-center/server/plugin/registry"
scerr "github.com/apache/servicecomb-service-center/server/scerror"
serviceUtil
"github.com/apache/servicecomb-service-center/server/service/util"
@@ -53,38 +51,7 @@ func (s *MicroServiceService) AddTags(ctx context.Context,
in *pb.AddServiceTags
}, nil
}
- addTags := in.Tags
- res := quota.NewApplyQuotaResource(quota.TagQuotaType, domainProject,
in.ServiceId, int64(len(addTags)))
- rst := plugin.Plugins().Quota().Apply4Quotas(ctx, res)
- errQuota := rst.Err
- if errQuota != nil {
- log.Errorf(errQuota, "add service[%s]'s tags %v failed,
operator: %s", in.ServiceId, addTags, remoteIP)
- response := &pb.AddServiceTagsResponse{
- Response: proto.CreateResponseWithSCErr(errQuota),
- }
- if errQuota.InternalError() {
- return response, errQuota
- }
- return response, nil
- }
-
- dataTags, err := serviceUtil.GetTagsUtils(ctx, domainProject,
in.ServiceId)
- if err != nil {
- log.Errorf(err, "add service[%s]'s tags %v failed, get existed
tag failed, operator: %s",
- in.ServiceId, addTags, remoteIP)
- return &pb.AddServiceTagsResponse{
- Response: proto.CreateResponse(scerr.ErrInternal,
err.Error()),
- }, err
- }
- for key, value := range dataTags {
- if _, ok := addTags[key]; ok {
- continue
- }
- addTags[key] = value
- }
- dataTags = addTags
-
- checkErr := serviceUtil.AddTagIntoETCD(ctx, domainProject,
in.ServiceId, dataTags)
+ checkErr := serviceUtil.AddTagIntoETCD(ctx, domainProject,
in.ServiceId, in.Tags)
if checkErr != nil {
log.Errorf(checkErr, "add service[%s]'s tags %v failed,
operator: %s", in.ServiceId, in.Tags, remoteIP)
resp := &pb.AddServiceTagsResponse{
diff --git a/server/service/tag_test.go b/server/service/tag_test.go
index c467edf..72a6e4f 100644
--- a/server/service/tag_test.go
+++ b/server/service/tag_test.go
@@ -138,7 +138,7 @@ var _ = Describe("'Tag' service", func() {
Expect(err).To(BeNil())
Expect(respAddTags.Response.GetCode()).To(Equal(scerr.ErrInvalidParams))
- size = quota.DefaultRuleQuota / 2
+ size = quota.DefaultRuleQuota
tags = make(map[string]string, size)
for i := 0; i < size; i++ {
s := "tag" + strconv.Itoa(i)
@@ -150,14 +150,6 @@ var _ = Describe("'Tag' service", func() {
})
Expect(err).To(BeNil())
Expect(respAddTags.Response.GetCode()).To(Equal(proto.Response_SUCCESS))
-
- tags["out"] = "range"
- respAddTags, _ =
serviceResource.AddTags(getContext(), &pb.AddServiceTagsRequest{
- ServiceId: serviceId2,
- Tags: tags,
- })
- Expect(err).To(BeNil())
-
Expect(respAddTags.Response.GetCode()).To(Equal(scerr.ErrNotEnoughQuota))
})
})
})