add mime, use simple insert and update filer store API

1. add mime type to file in filer
2. purge old chunks if overwrite during insert
This commit is contained in:
Chris Lu
2018-05-30 20:24:57 -07:00
parent 26e7cd8c75
commit 0301504184
20 changed files with 149 additions and 132 deletions

View File

@@ -11,6 +11,7 @@ import (
"github.com/chrislusf/seaweedfs/weed/util"
"strings"
"sync"
"net/http"
)
type FileHandle struct {
@@ -18,10 +19,6 @@ type FileHandle struct {
dirtyPages *ContinuousDirtyPages
dirtyMetadata bool
cachePath string
handle uint64
f *File
RequestId fuse.RequestID // unique ID for request
NodeId fuse.NodeID // file or directory the request is about
@@ -135,6 +132,11 @@ func (fh *FileHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *f
resp.Size = len(req.Data)
if req.Offset == 0 {
fh.f.attributes.Mime = http.DetectContentType(req.Data)
fh.dirtyMetadata = true
}
if chunk != nil {
fh.f.Chunks = append(fh.f.Chunks, chunk)
glog.V(1).Infof("uploaded %s/%s to %s [%d,%d)", fh.f.dir.Path, fh.f.Name, chunk.FileId, chunk.Offset, chunk.Offset+int64(chunk.Size))