This commit is contained in:
Chris Lu 2020-11-15 16:59:28 -08:00
parent 95c0de285d
commit 0ea5c087ce
7 changed files with 11 additions and 12 deletions

View file

@ -10,9 +10,8 @@ import (
"github.com/viant/ptrie" "github.com/viant/ptrie"
) )
const ( const (
DirectoryEtc = "/etc" DirectoryEtc = "/etc"
FilerConfName = "filer.conf" FilerConfName = "filer.conf"
) )
@ -27,7 +26,7 @@ func NewFilerConf() (fc *FilerConf) {
return fc return fc
} }
func (fc *FilerConf) loadFromFiler(filer *Filer) (err error){ func (fc *FilerConf) loadFromFiler(filer *Filer) (err error) {
filerConfPath := util.NewFullPath(DirectoryEtc, FilerConfName) filerConfPath := util.NewFullPath(DirectoryEtc, FilerConfName)
entry, err := filer.FindEntry(context.Background(), filerConfPath) entry, err := filer.FindEntry(context.Background(), filerConfPath)
if err != nil { if err != nil {
@ -79,7 +78,7 @@ var (
EmptyFilerConfPathConf = &filer_pb.FilerConf_PathConf{} EmptyFilerConfPathConf = &filer_pb.FilerConf_PathConf{}
) )
func (fc *FilerConf) MatchStorageRule(path string) (pathConf *filer_pb.FilerConf_PathConf){ func (fc *FilerConf) MatchStorageRule(path string) (pathConf *filer_pb.FilerConf_PathConf) {
fc.rules.MatchPrefix([]byte(path), func(key []byte, value interface{}) bool { fc.rules.MatchPrefix([]byte(path), func(key []byte, value interface{}) bool {
pathConf = value.(*filer_pb.FilerConf_PathConf) pathConf = value.(*filer_pb.FilerConf_PathConf)
return true return true

View file

@ -294,7 +294,7 @@ func (file *File) addChunks(chunks []*filer_pb.FileChunk) {
// find the earliest incoming chunk // find the earliest incoming chunk
newChunks := chunks newChunks := chunks
earliestChunk := newChunks[0] earliestChunk := newChunks[0]
for i:=1;i<len(newChunks);i++{ for i := 1; i < len(newChunks); i++ {
if lessThan(earliestChunk, newChunks[i]) { if lessThan(earliestChunk, newChunks[i]) {
earliestChunk = newChunks[i] earliestChunk = newChunks[i]
} }

View file

@ -137,4 +137,3 @@ func (so *StorageOption) ToAssignRequests(count int) (ar *VolumeAssignRequest, a
} }
return return
} }

View file

@ -141,6 +141,7 @@ func IsRename(event *SubscribeMetadataResponse) bool {
} }
var _ = ptrie.KeyProvider(&FilerConf_PathConf{}) var _ = ptrie.KeyProvider(&FilerConf_PathConf{})
func (fp *FilerConf_PathConf) Key() interface{} { func (fp *FilerConf_PathConf) Key() interface{} {
return fp.LocationPrefix return fp.LocationPrefix
} }

View file

@ -32,5 +32,5 @@ const (
// Non-Standard S3 HTTP request constants // Non-Standard S3 HTTP request constants
const ( const (
AmzIdentityId = "x-amz-identity-id" AmzIdentityId = "x-amz-identity-id"
AmzIsAdmin = "x-amz-is-admin" // only set to http request header as a context AmzIsAdmin = "x-amz-is-admin" // only set to http request header as a context
) )

View file

@ -27,7 +27,7 @@ func (fs *FilerServer) filerHandler(w http.ResponseWriter, r *http.Request) {
case "DELETE": case "DELETE":
stats.FilerRequestCounter.WithLabelValues("delete").Inc() stats.FilerRequestCounter.WithLabelValues("delete").Inc()
if _, ok := r.URL.Query()["tagging"]; ok { if _, ok := r.URL.Query()["tagging"]; ok {
fs.DeleteTaggingHandler(w,r) fs.DeleteTaggingHandler(w, r)
} else { } else {
fs.DeleteHandler(w, r) fs.DeleteHandler(w, r)
} }
@ -35,7 +35,7 @@ func (fs *FilerServer) filerHandler(w http.ResponseWriter, r *http.Request) {
case "PUT": case "PUT":
stats.FilerRequestCounter.WithLabelValues("put").Inc() stats.FilerRequestCounter.WithLabelValues("put").Inc()
if _, ok := r.URL.Query()["tagging"]; ok { if _, ok := r.URL.Query()["tagging"]; ok {
fs.PutTaggingHandler(w,r) fs.PutTaggingHandler(w, r)
} else { } else {
fs.PostHandler(w, r) fs.PostHandler(w, r)
} }

View file

@ -103,7 +103,7 @@ func (fs *FilerServer) DeleteHandler(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusNoContent) w.WriteHeader(http.StatusNoContent)
} }
func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication string, ttlSeconds int32, dataCenter, rack string) (*operation.StorageOption) { func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication string, ttlSeconds int32, dataCenter, rack string) *operation.StorageOption {
collection := util.Nvl(qCollection, fs.option.Collection) collection := util.Nvl(qCollection, fs.option.Collection)
replication := util.Nvl(qReplication, fs.option.DefaultReplication) replication := util.Nvl(qReplication, fs.option.DefaultReplication)
@ -131,7 +131,7 @@ func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication
if err != nil { if err != nil {
glog.Errorf("fail to parse %s ttl setting %s: %v", rule.LocationPrefix, rule.Ttl, err) glog.Errorf("fail to parse %s ttl setting %s: %v", rule.LocationPrefix, rule.Ttl, err)
} }
ttlSeconds = int32(ttl.Minutes())*60 ttlSeconds = int32(ttl.Minutes()) * 60
} }
return &operation.StorageOption{ return &operation.StorageOption{
@ -144,7 +144,7 @@ func (fs *FilerServer) detectStorageOption(requestURI, qCollection, qReplication
} }
} }
func (fs *FilerServer) detectStorageOption0(requestURI, qCollection, qReplication string, qTtl string, dataCenter, rack string) (*operation.StorageOption) { func (fs *FilerServer) detectStorageOption0(requestURI, qCollection, qReplication string, qTtl string, dataCenter, rack string) *operation.StorageOption {
ttl, err := needle.ReadTTL(qTtl) ttl, err := needle.ReadTTL(qTtl)
if err != nil { if err != nil {