From 798280e98003fac50faf057057b2568268a9d566 Mon Sep 17 00:00:00 2001 From: "ruitao.liu" Date: Thu, 3 Sep 2020 17:05:26 +0800 Subject: [PATCH] change filer2 to filer. --- go.mod | 4 +-- weed/filer/elastic/v7/elastic_store.go | 35 ++++++++++++++++++-------- weed/server/filer_server.go | 2 +- 3 files changed, 27 insertions(+), 14 deletions(-) diff --git a/go.mod b/go.mod index d2dad60cd..69092fd88 100644 --- a/go.mod +++ b/go.mod @@ -36,6 +36,7 @@ require ( github.com/grpc-ecosystem/grpc-gateway v1.11.0 // indirect github.com/hashicorp/golang-lru v0.5.3 // indirect github.com/jcmturner/gofork v1.0.0 // indirect + github.com/json-iterator/go v1.1.10 github.com/karlseguin/ccache v2.0.3+incompatible github.com/karlseguin/expect v1.0.1 // indirect github.com/klauspost/compress v1.10.9 @@ -48,6 +49,7 @@ require ( github.com/mattn/go-ieproxy v0.0.0-20190805055040-f9202b1cfdeb // indirect github.com/mattn/go-runewidth v0.0.4 // indirect github.com/nats-io/nats-server/v2 v2.0.4 // indirect + github.com/olivere/elastic/v7 v7.0.19 github.com/onsi/ginkgo v1.10.1 // indirect github.com/onsi/gomega v1.7.0 // indirect github.com/peterh/liner v1.1.0 @@ -87,8 +89,6 @@ require ( gopkg.in/jcmturner/goidentity.v3 v3.0.0 // indirect gopkg.in/jcmturner/gokrb5.v7 v7.3.0 // indirect gopkg.in/karlseguin/expect.v1 v1.0.1 // indirect - github.com/json-iterator/go v1.1.10 - github.com/olivere/elastic/v7 v7.0.19 ) replace go.etcd.io/etcd => go.etcd.io/etcd v0.5.0-alpha.5.0.20200425165423-262c93980547 diff --git a/weed/filer/elastic/v7/elastic_store.go b/weed/filer/elastic/v7/elastic_store.go index 190ec4897..e75f55239 100644 --- a/weed/filer/elastic/v7/elastic_store.go +++ b/weed/filer/elastic/v7/elastic_store.go @@ -7,7 +7,7 @@ import ( "math" "strings" - "github.com/chrislusf/seaweedfs/weed/filer2" + "github.com/chrislusf/seaweedfs/weed/filer" "github.com/chrislusf/seaweedfs/weed/glog" "github.com/chrislusf/seaweedfs/weed/pb/filer_pb" weed_util "github.com/chrislusf/seaweedfs/weed/util" @@ -22,11 +22,11 @@ var ( type ESEntry struct { ParentId string `json:"ParentId"` - Entry *filer2.Entry + Entry *filer.Entry } func init() { - filer2.Stores = append(filer2.Stores, &ElasticStore{}) + filer.Stores = append(filer.Stores, &ElasticStore{}) } type ElasticStore struct { @@ -66,7 +66,20 @@ func (store *ElasticStore) CommitTransaction(ctx context.Context) error { func (store *ElasticStore) RollbackTransaction(ctx context.Context) error { return nil } -func (store *ElasticStore) InsertEntry(ctx context.Context, entry *filer2.Entry) (err error) { +func (store *ElasticStore) KvDelete(ctx context.Context, key []byte) (err error) { + return filer.ErrKvNotImplemented +} +func (store *ElasticStore) KvGet(ctx context.Context, key []byte) (value []byte, err error) { + return []byte(""), filer.ErrKvNotImplemented +} +func (store *ElasticStore) KvPut(ctx context.Context, key []byte, value []byte) (err error) { + return filer.ErrKvNotImplemented +} +func (store *ElasticStore) ListDirectoryPrefixedEntries(ctx context.Context, fullpath weed_util.FullPath, startFileName string, inclusive bool, limit int, prefix string) (entries []*filer.Entry, err error) { + return nil, filer.ErrUnsupportedListDirectoryPrefixed +} + +func (store *ElasticStore) InsertEntry(ctx context.Context, entry *filer.Entry) (err error) { index := getIndex(entry.FullPath) dir, _ := entry.FullPath.DirAndName() id := fmt.Sprintf("%x", md5.Sum([]byte(entry.FullPath))) @@ -91,10 +104,10 @@ func (store *ElasticStore) InsertEntry(ctx context.Context, entry *filer2.Entry) } return nil } -func (store *ElasticStore) UpdateEntry(ctx context.Context, entry *filer2.Entry) (err error) { +func (store *ElasticStore) UpdateEntry(ctx context.Context, entry *filer.Entry) (err error) { return store.InsertEntry(ctx, entry) } -func (store *ElasticStore) FindEntry(ctx context.Context, fullpath weed_util.FullPath) (entry *filer2.Entry, err error) { +func (store *ElasticStore) FindEntry(ctx context.Context, fullpath weed_util.FullPath) (entry *filer.Entry, err error) { index := getIndex(fullpath) id := fmt.Sprintf("%x", md5.Sum([]byte(fullpath))) searchResult, err := store.client.Get(). @@ -108,7 +121,7 @@ func (store *ElasticStore) FindEntry(ctx context.Context, fullpath weed_util.Ful if searchResult != nil && searchResult.Found { esEntry := &ESEntry{ ParentId: "", - Entry: &filer2.Entry{}, + Entry: &filer.Entry{}, } err := jsoniter.Unmarshal(searchResult.Source, esEntry) return esEntry.Entry, err @@ -157,14 +170,14 @@ func (store *ElasticStore) DeleteFolderChildren(ctx context.Context, fullpath we func (store *ElasticStore) ListDirectoryEntries( ctx context.Context, fullpath weed_util.FullPath, startFileName string, inclusive bool, limit int, -) (entries []*filer2.Entry, err error) { +) (entries []*filer.Entry, err error) { if string(fullpath) == "/" { return store.listRootDirectoryEntries(ctx, startFileName, inclusive, limit) } return store.listDirectoryEntries(ctx, fullpath, startFileName, inclusive, limit) } -func (store *ElasticStore) listRootDirectoryEntries(ctx context.Context, startFileName string, inclusive bool, limit int) (entries []*filer2.Entry, err error) { +func (store *ElasticStore) listRootDirectoryEntries(ctx context.Context, startFileName string, inclusive bool, limit int) (entries []*filer.Entry, err error) { indexResult, err := store.client.CatIndices().Do(context.Background()) if err != nil { glog.Errorf("list indices %v.", err) @@ -191,7 +204,7 @@ func (store *ElasticStore) listRootDirectoryEntries(ctx context.Context, startFi func (store *ElasticStore) listDirectoryEntries( ctx context.Context, fullpath weed_util.FullPath, startFileName string, inclusive bool, limit int, -) (entries []*filer2.Entry, err error) { +) (entries []*filer.Entry, err error) { first := true index := getIndex(fullpath) nextStart := "" @@ -224,7 +237,7 @@ func (store *ElasticStore) listDirectoryEntries( for _, hit := range result.Hits.Hits { esEntry := &ESEntry{ ParentId: "", - Entry: &filer2.Entry{}, + Entry: &filer.Entry{}, } if err := jsoniter.Unmarshal(hit.Source, esEntry); err == nil { limit-- diff --git a/weed/server/filer_server.go b/weed/server/filer_server.go index 167a822b2..9661d8759 100644 --- a/weed/server/filer_server.go +++ b/weed/server/filer_server.go @@ -20,6 +20,7 @@ import ( "github.com/chrislusf/seaweedfs/weed/filer" _ "github.com/chrislusf/seaweedfs/weed/filer/cassandra" + _ "github.com/chrislusf/seaweedfs/weed/filer/elastic/v7" _ "github.com/chrislusf/seaweedfs/weed/filer/etcd" _ "github.com/chrislusf/seaweedfs/weed/filer/leveldb" _ "github.com/chrislusf/seaweedfs/weed/filer/leveldb2" @@ -28,7 +29,6 @@ import ( _ "github.com/chrislusf/seaweedfs/weed/filer/postgres" _ "github.com/chrislusf/seaweedfs/weed/filer/redis" _ "github.com/chrislusf/seaweedfs/weed/filer/redis2" - _ "github.com/chrislusf/seaweedfs/weed/filer2/elastic/v7" "github.com/chrislusf/seaweedfs/weed/glog" "github.com/chrislusf/seaweedfs/weed/notification" _ "github.com/chrislusf/seaweedfs/weed/notification/aws_sqs"