|
|
|
@@ -14,6 +14,7 @@ import ( |
|
|
|
s3types "github.com/aws/aws-sdk-go-v2/service/s3/types" |
|
|
|
"gitlink.org.cn/cloudream/common/pkgs/logger" |
|
|
|
"gitlink.org.cn/cloudream/common/utils/io2" |
|
|
|
"gitlink.org.cn/cloudream/common/utils/math2" |
|
|
|
clitypes "gitlink.org.cn/cloudream/jcs-pub/client/types" |
|
|
|
"gitlink.org.cn/cloudream/jcs-pub/common/pkgs/storage/types" |
|
|
|
) |
|
|
|
@@ -173,24 +174,25 @@ func (s *BaseStore) CleanTemps() { |
|
|
|
marker = resp.NextMarker |
|
|
|
} |
|
|
|
|
|
|
|
if len(deletes) == 0 { |
|
|
|
return |
|
|
|
} |
|
|
|
for len(deletes) > 0 { |
|
|
|
cnt := math2.Min(500, len(deletes)) |
|
|
|
resp, err := s.cli.DeleteObjects(context.Background(), &s3.DeleteObjectsInput{ |
|
|
|
Bucket: aws.String(s.Bucket), |
|
|
|
Delete: &s3types.Delete{ |
|
|
|
Objects: deletes[:cnt], |
|
|
|
}, |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|
log.Warnf("delete temp files: %v", err) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
resp, err := s.cli.DeleteObjects(context.Background(), &s3.DeleteObjectsInput{ |
|
|
|
Bucket: aws.String(s.Bucket), |
|
|
|
Delete: &s3types.Delete{ |
|
|
|
Objects: deletes, |
|
|
|
}, |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|
log.Warnf("delete temp files: %v", err) |
|
|
|
return |
|
|
|
} |
|
|
|
for _, del := range resp.Deleted { |
|
|
|
obj := deleteObjs[*del.Key] |
|
|
|
log.Infof("remove unused temp file %v, size: %v, last mod time: %v", *obj.Key, *obj.Size, *obj.LastModified) |
|
|
|
} |
|
|
|
|
|
|
|
for _, del := range resp.Deleted { |
|
|
|
obj := deleteObjs[*del.Key] |
|
|
|
log.Infof("remove unused temp file %v, size: %v, last mod time: %v", *obj.Key, *obj.Size, *obj.LastModified) |
|
|
|
deletes = deletes[cnt:] |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|