aboutsummaryrefslogtreecommitdiff
path: root/weed/iamapi/iamapi_server.go
diff options
context:
space:
mode:
authorKonstantin Lebedev <lebedev_k@tochka.com>2021-08-11 17:53:48 +0500
committerKonstantin Lebedev <lebedev_k@tochka.com>2021-08-11 17:53:48 +0500
commitec09966fd3955b466cfa8f3a3945133226f6a3fd (patch)
tree932474387dee0d6746cee5f6b81633ffda0ae717 /weed/iamapi/iamapi_server.go
parent5df38d610dc8ba2081088320e546f8a824d232cd (diff)
downloadseaweedfs-ec09966fd3955b466cfa8f3a3945133226f6a3fd.tar.xz
seaweedfs-ec09966fd3955b466cfa8f3a3945133226f6a3fd.zip
Retry save and update IAM identity
https://github.com/chrislusf/seaweedfs/issues/2242
Diffstat (limited to 'weed/iamapi/iamapi_server.go')
-rw-r--r--weed/iamapi/iamapi_server.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/weed/iamapi/iamapi_server.go b/weed/iamapi/iamapi_server.go
index 037594165..ec718bd41 100644
--- a/weed/iamapi/iamapi_server.go
+++ b/weed/iamapi/iamapi_server.go
@@ -13,6 +13,7 @@ import (
"github.com/chrislusf/seaweedfs/weed/s3api"
. "github.com/chrislusf/seaweedfs/weed/s3api/s3_constants"
"github.com/chrislusf/seaweedfs/weed/s3api/s3err"
+ "github.com/chrislusf/seaweedfs/weed/util"
"github.com/chrislusf/seaweedfs/weed/wdclient"
"github.com/gorilla/mux"
"google.golang.org/grpc"
@@ -103,7 +104,10 @@ func (iam IamS3ApiConfigure) PutS3ApiConfiguration(s3cfg *iam_pb.S3ApiConfigurat
iam.option.FilerGrpcAddress,
iam.option.GrpcDialOption,
func(client filer_pb.SeaweedFilerClient) error {
- if err := filer.SaveInsideFiler(client, filer.IamConfigDirecotry, filer.IamIdentityFile, buf.Bytes()); err != nil {
+ err = util.Retry("saveIamIdentity", func() error {
+ return filer.SaveInsideFiler(client, filer.IamConfigDirecotry, filer.IamIdentityFile, buf.Bytes())
+ })
+ if err != nil {
return err
}
return nil