Browse Source

delete garbage only when successful

pull/991/head
Chris Lu 6 years ago
parent
commit
613a2e8060
  1. 3
      weed/server/filer_grpc_server.go

3
weed/server/filer_grpc_server.go

@ -114,8 +114,6 @@ func (fs *FilerServer) CreateEntry(ctx context.Context, req *filer_pb.CreateEntr
fullpath := filer2.FullPath(filepath.ToSlash(filepath.Join(req.Directory, req.Entry.Name))) fullpath := filer2.FullPath(filepath.ToSlash(filepath.Join(req.Directory, req.Entry.Name)))
chunks, garbages := filer2.CompactFileChunks(req.Entry.Chunks) chunks, garbages := filer2.CompactFileChunks(req.Entry.Chunks)
fs.filer.DeleteChunks(fullpath, garbages)
if req.Entry.Attributes == nil { if req.Entry.Attributes == nil {
return nil, fmt.Errorf("can not create entry with empty attributes") return nil, fmt.Errorf("can not create entry with empty attributes")
} }
@ -127,6 +125,7 @@ func (fs *FilerServer) CreateEntry(ctx context.Context, req *filer_pb.CreateEntr
}) })
if err == nil { if err == nil {
fs.filer.DeleteChunks(fullpath, garbages)
} }
return &filer_pb.CreateEntryResponse{}, err return &filer_pb.CreateEntryResponse{}, err

Loading…
Cancel
Save