From 4b0f084b5db4637817ef7980d3329eef3e4dba02 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Thu, 20 Jun 2019 21:58:35 -0700 Subject: [PATCH] delete chunks only when file writing is successful --- weed/filesys/filehandle.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/weed/filesys/filehandle.go b/weed/filesys/filehandle.go index 60c50c95c..577403cef 100644 --- a/weed/filesys/filehandle.go +++ b/weed/filesys/filehandle.go @@ -160,12 +160,13 @@ func (fh *FileHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error { chunks, garbages := filer2.CompactFileChunks(fh.f.entry.Chunks) fh.f.entry.Chunks = chunks // fh.f.entryViewCache = nil - fh.f.wfs.deleteFileChunks(ctx, garbages) if _, err := client.CreateEntry(ctx, request); err != nil { return fmt.Errorf("update fh: %v", err) } + fh.f.wfs.deleteFileChunks(ctx, garbages) + return nil }) }