[#181] index_page: Ignore deleted objects in versioned buckets #182

Merged
alexvanin merged 1 commit from nzinkevich/frostfs-http-gw:feature/index_page_deleted_objects into master 2024-12-17 13:06:58 +00:00

View file

@ -28,6 +28,7 @@ const (
attrFileName = "FileName"
attrFilePath = "FilePath"
attrSize = "Size"
attrDeleteMarker = "IsDeleteMarker"
)
type (
@ -46,6 +47,7 @@ type (
Size string
IsDir bool
GetURL string
IsDeleteMarker bool
}
)
@ -56,6 +58,7 @@ func newListObjectsResponseS3(attrs map[string]string) ResponseObject {
FileName: attrs[attrFileName],
Size: attrs[attrSize],
IsDir: attrs[attrOID] == "",
IsDeleteMarker: attrs[attrDeleteMarker] == "true",
}
}
@ -179,6 +182,9 @@ func (h *Handler) getDirObjectsS3(ctx context.Context, bucketInfo *data.BucketIn
attrs[m.GetKey()] = string(m.GetValue())
}
obj := newListObjectsResponseS3(attrs)
if obj.IsDeleteMarker {
continue
}
obj.FilePath = prefix + obj.FileName
obj.GetURL = "/get/" + bucketInfo.Name + urlencode(obj.FilePath)
result.objects = append(result.objects, obj)