aboutsummaryrefslogtreecommitdiff
path: root/weed/server
diff options
context:
space:
mode:
authorChris Lu <chris.lu@gmail.com>2020-12-10 00:15:22 -0800
committerChris Lu <chris.lu@gmail.com>2020-12-10 00:15:22 -0800
commit765b3ef1beae5418491e338d397a589186ca4458 (patch)
tree3e2a9b6a3a587a8801e08a3a10786cae8b6653e8 /weed/server
parent97c942b5eefcd01428fc663ff2a2ec1be68812db (diff)
downloadseaweedfs-765b3ef1beae5418491e338d397a589186ca4458.tar.xz
seaweedfs-765b3ef1beae5418491e338d397a589186ca4458.zip
save /etc/iam/identity.json inside filer store
Diffstat (limited to 'weed/server')
-rw-r--r--weed/server/filer_grpc_server.go2
-rw-r--r--weed/server/filer_server_handlers_read.go10
2 files changed, 7 insertions, 5 deletions
diff --git a/weed/server/filer_grpc_server.go b/weed/server/filer_grpc_server.go
index 46e5c5957..5f1b2d819 100644
--- a/weed/server/filer_grpc_server.go
+++ b/weed/server/filer_grpc_server.go
@@ -170,6 +170,7 @@ func (fs *FilerServer) CreateEntry(ctx context.Context, req *filer_pb.CreateEntr
Extended: req.Entry.Extended,
HardLinkId: filer.HardLinkId(req.Entry.HardLinkId),
HardLinkCounter: req.Entry.HardLinkCounter,
+ Content: req.Entry.Content,
}, req.OExcl, req.IsFromOtherCluster, req.Signatures)
if createErr == nil {
@@ -204,6 +205,7 @@ func (fs *FilerServer) UpdateEntry(ctx context.Context, req *filer_pb.UpdateEntr
Chunks: chunks,
HardLinkId: filer.HardLinkId(req.Entry.HardLinkId),
HardLinkCounter: req.Entry.HardLinkCounter,
+ Content: req.Entry.Content,
}
glog.V(3).Infof("updating %s: %+v, chunks %d: %v => %+v, chunks %d: %v, extended: %v => %v",
diff --git a/weed/server/filer_server_handlers_read.go b/weed/server/filer_server_handlers_read.go
index f77b7f08d..d55bf7cbb 100644
--- a/weed/server/filer_server_handlers_read.go
+++ b/weed/server/filer_server_handlers_read.go
@@ -60,7 +60,7 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request,
return
}
- if len(entry.Chunks) == 0 {
+ if len(entry.Chunks) == 0 && len(entry.Content) == 0 {
glog.V(1).Infof("no file chunks for %s, attr=%+v", path, entry.Attr)
stats.FilerRequestCounter.WithLabelValues("read.nocontent").Inc()
w.WriteHeader(http.StatusNoContent)
@@ -123,13 +123,13 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request,
filename := entry.Name()
adjustHeaderContentDisposition(w, r, filename)
+ totalSize := int64(entry.Size())
+
if r.Method == "HEAD" {
- w.Header().Set("Content-Length", strconv.FormatInt(int64(entry.Size()), 10))
+ w.Header().Set("Content-Length", strconv.FormatInt(totalSize, 10))
return
}
- totalSize := int64(entry.Size())
-
if rangeReq := r.Header.Get("Range"); rangeReq == "" {
ext := filepath.Ext(filename)
width, height, mode, shouldResize := shouldResizeImages(ext, r)
@@ -148,7 +148,7 @@ func (fs *FilerServer) GetOrHeadHandler(w http.ResponseWriter, r *http.Request,
processRangeRequest(r, w, totalSize, mimeType, func(writer io.Writer, offset int64, size int64) error {
if offset+size <= int64(len(entry.Content)) {
- _, err := writer.Write(entry.Content[offset:offset+size])
+ _, err := writer.Write(entry.Content[offset : offset+size])
return err
}
return filer.StreamContent(fs.filer.MasterClient, writer, entry.Chunks, offset, size)