aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/mount/directory.go42
-rw-r--r--weed/mount/directory_read.go84
-rw-r--r--weed/mount/weedfs.go12
3 files changed, 0 insertions, 138 deletions
diff --git a/weed/mount/directory.go b/weed/mount/directory.go
deleted file mode 100644
index 60fbafc37..000000000
--- a/weed/mount/directory.go
+++ /dev/null
@@ -1,42 +0,0 @@
-package mount
-
-import (
- "bytes"
- "github.com/chrislusf/seaweedfs/weed/pb/filer_pb"
- "github.com/hanwen/go-fuse/v2/fs"
- "strings"
-)
-
-type Directory struct {
- fs.Inode
-
- name string
- wfs *WFS
- entry *filer_pb.Entry
- parent *Directory
- id uint64
-}
-
-func (dir *Directory) FullPath() string {
- var parts []string
- for p := dir; p != nil; p = p.parent {
- if strings.HasPrefix(p.name, "/") {
- if len(p.name) > 1 {
- parts = append(parts, p.name[1:])
- }
- } else {
- parts = append(parts, p.name)
- }
- }
-
- if len(parts) == 0 {
- return "/"
- }
-
- var buf bytes.Buffer
- for i := len(parts) - 1; i >= 0; i-- {
- buf.WriteString("/")
- buf.WriteString(parts[i])
- }
- return buf.String()
-}
diff --git a/weed/mount/directory_read.go b/weed/mount/directory_read.go
deleted file mode 100644
index 6034856f0..000000000
--- a/weed/mount/directory_read.go
+++ /dev/null
@@ -1,84 +0,0 @@
-package mount
-
-import (
- "context"
- "github.com/chrislusf/seaweedfs/weed/filer"
- "github.com/chrislusf/seaweedfs/weed/glog"
- "github.com/chrislusf/seaweedfs/weed/mount/meta_cache"
- "github.com/chrislusf/seaweedfs/weed/util"
- "github.com/hanwen/go-fuse/v2/fs"
- "github.com/hanwen/go-fuse/v2/fuse"
- "math"
- "os"
- "syscall"
-)
-
-var _ = fs.NodeReaddirer(&Directory{})
-var _ = fs.NodeGetattrer(&Directory{})
-
-func (dir *Directory) Getattr(ctx context.Context, fh fs.FileHandle, out *fuse.AttrOut) syscall.Errno {
- out.Mode = 0755
- return 0
-}
-
-func (dir *Directory) Readdir(ctx context.Context) (fs.DirStream, syscall.Errno) {
-
- dirPath := util.FullPath(dir.FullPath())
- glog.V(4).Infof("Readdir %s", dirPath)
-
- sourceChan := make(chan fuse.DirEntry, 64)
-
- stream := newDirectoryListStream(sourceChan)
-
- processEachEntryFn := func(entry *filer.Entry, isLast bool) {
- sourceChan <- fuse.DirEntry{
- Mode: uint32(entry.Mode),
- Name: entry.Name(),
- Ino: dirPath.Child(entry.Name()).AsInode(os.ModeDir),
- }
- }
-
- if err := meta_cache.EnsureVisited(dir.wfs.metaCache, dir.wfs, dirPath); err != nil {
- glog.Errorf("dir ReadDirAll %s: %v", dirPath, err)
- return nil, fs.ToErrno(os.ErrInvalid)
- }
- go func() {
- dir.wfs.metaCache.ListDirectoryEntries(context.Background(), dirPath, "", false, int64(math.MaxInt32), func(entry *filer.Entry) bool {
- processEachEntryFn(entry, false)
- return true
- })
- close(sourceChan)
- }()
-
- return stream, fs.OK
-}
-
-var _ = fs.DirStream(&DirectoryListStream{})
-
-type DirectoryListStream struct {
- next fuse.DirEntry
- sourceChan chan fuse.DirEntry
- isStarted bool
- hasNext bool
-}
-
-func newDirectoryListStream(ch chan fuse.DirEntry) *DirectoryListStream {
- return &DirectoryListStream{
- sourceChan: ch,
- }
-}
-
-func (i *DirectoryListStream) HasNext() bool {
- if !i.isStarted {
- i.next, i.hasNext = <-i.sourceChan
- i.isStarted = true
- }
- return i.hasNext
-}
-func (i *DirectoryListStream) Next() (fuse.DirEntry, syscall.Errno) {
- t := i.next
- i.next, i.hasNext = <-i.sourceChan
- return t, fs.OK
-}
-func (i *DirectoryListStream) Close() {
-}
diff --git a/weed/mount/weedfs.go b/weed/mount/weedfs.go
index 47cb5ad98..51bf641ef 100644
--- a/weed/mount/weedfs.go
+++ b/weed/mount/weedfs.go
@@ -59,7 +59,6 @@ type WFS struct {
option *Option
metaCache *meta_cache.MetaCache
stats statsCache
- root Directory
chunkCache *chunk_cache.TieredChunkCache
signature int32
concurrentWriters *util.LimitedConcurrentExecutor
@@ -78,13 +77,6 @@ func NewSeaweedFileSystem(option *Option) *WFS {
dhmap: NewDirectoryHandleToInode(),
}
- wfs.root = Directory{
- name: "/",
- wfs: wfs,
- entry: nil,
- parent: nil,
- }
-
wfs.option.filerIndex = rand.Intn(len(option.FilerAddresses))
wfs.option.setupUniqueCacheDirectory()
if option.CacheSizeMB > 0 {
@@ -113,10 +105,6 @@ func (wfs *WFS) StartBackgroundTasks() {
go meta_cache.SubscribeMetaEvents(wfs.metaCache, wfs.signature, wfs, wfs.option.FilerMountRootPath, startTime.UnixNano())
}
-func (wfs *WFS) Root() *Directory {
- return &wfs.root
-}
-
func (wfs *WFS) String() string {
return "seaweedfs"
}