diff options
| author | Chris Lu <chris.lu@gmail.com> | 2018-08-13 01:20:49 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2018-08-13 01:20:49 -0700 |
| commit | f036ef8a3c50af3c933dcd96026ca70dc5fd0da3 (patch) | |
| tree | c4bc38f75396b44476d8cdaad28b6180af3c6291 /weed/server | |
| parent | 75d63db60d1677f2e3350c3ee2b9dbecf931ec1a (diff) | |
| download | seaweedfs-f036ef8a3c50af3c933dcd96026ca70dc5fd0da3.tar.xz seaweedfs-f036ef8a3c50af3c933dcd96026ca70dc5fd0da3.zip | |
add filer notification
Diffstat (limited to 'weed/server')
| -rw-r--r-- | weed/server/filer_grpc_server.go | 6 | ||||
| -rw-r--r-- | weed/server/filer_server.go | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/weed/server/filer_grpc_server.go b/weed/server/filer_grpc_server.go index 0f84cf527..98e8699b0 100644 --- a/weed/server/filer_grpc_server.go +++ b/weed/server/filer_grpc_server.go @@ -173,6 +173,10 @@ func (fs *FilerServer) UpdateEntry(ctx context.Context, req *filer_pb.UpdateEntr } + if filer2.EqualEntry(entry, newEntry) { + return &filer_pb.UpdateEntryResponse{}, err + } + if err = fs.filer.UpdateEntry(newEntry); err == nil { for _, garbage := range unusedChunks { glog.V(0).Infof("deleting %s old chunk: %v, [%d, %d)", fullpath, garbage.FileId, garbage.Offset, garbage.Offset+int64(garbage.Size)) @@ -184,6 +188,8 @@ func (fs *FilerServer) UpdateEntry(ctx context.Context, req *filer_pb.UpdateEntr } } + fs.filer.NotifyUpdateEvent(entry, newEntry) + return &filer_pb.UpdateEntryResponse{}, err } diff --git a/weed/server/filer_server.go b/weed/server/filer_server.go index 61ca972cc..c9dabe5cb 100644 --- a/weed/server/filer_server.go +++ b/weed/server/filer_server.go @@ -8,9 +8,12 @@ import ( _ "github.com/chrislusf/seaweedfs/weed/filer2/mysql" _ "github.com/chrislusf/seaweedfs/weed/filer2/postgres" _ "github.com/chrislusf/seaweedfs/weed/filer2/redis" + _ "github.com/chrislusf/seaweedfs/weed/msgqueue/kafka" + _ "github.com/chrislusf/seaweedfs/weed/msgqueue/log" "github.com/chrislusf/seaweedfs/weed/glog" "github.com/chrislusf/seaweedfs/weed/security" "net/http" + "github.com/chrislusf/seaweedfs/weed/msgqueue" ) type FilerOption struct { @@ -23,6 +26,7 @@ type FilerOption struct { SecretKey string DirListingLimit int DataCenter string + EnableNotification bool } type FilerServer struct { @@ -46,6 +50,10 @@ func NewFilerServer(defaultMux, readonlyMux *http.ServeMux, option *FilerOption) fs.filer.LoadConfiguration() + if fs.option.EnableNotification { + msgqueue.LoadConfiguration() + } + defaultMux.HandleFunc("/favicon.ico", faviconHandler) defaultMux.HandleFunc("/", fs.filerHandler) if defaultMux != readonlyMux { |
