Browse Source

add default root directory

pull/781/head
Chris Lu 6 years ago
parent
commit
db22666a30
  1. 20
      weed/filer2/filer.go
  2. 22
      weed/filer2/leveldb/leveldb_store_test.go

20
weed/filer2/filer.go

@ -14,6 +14,11 @@ import (
"github.com/karlseguin/ccache" "github.com/karlseguin/ccache"
) )
var (
OS_UID = uint32(os.Getuid())
OS_GID = uint32(os.Getgid())
)
type Filer struct { type Filer struct {
store FilerStore store FilerStore
directoryCache *ccache.Cache directoryCache *ccache.Cache
@ -157,6 +162,21 @@ func (f *Filer) UpdateEntry(oldEntry, entry *Entry) (err error) {
} }
func (f *Filer) FindEntry(p FullPath) (entry *Entry, err error) { func (f *Filer) FindEntry(p FullPath) (entry *Entry, err error) {
now := time.Now()
if string(p) == "/" {
return &Entry{
FullPath: p,
Attr: Attr{
Mtime: now,
Crtime: now,
Mode: os.ModeDir | 0777,
Uid: OS_UID,
Gid: OS_GID,
},
}, nil
}
return f.store.FindEntry(p) return f.store.FindEntry(p)
} }

22
weed/filer2/leveldb/leveldb_store_test.go

@ -59,3 +59,25 @@ func TestCreateAndFind(t *testing.T) {
} }
} }
func TestEmptyRoot(t *testing.T) {
filer := filer2.NewFiler(nil)
dir, _ := ioutil.TempDir("", "seaweedfs_filer_test2")
defer os.RemoveAll(dir)
store := &LevelDBStore{}
store.initialize(dir)
filer.SetStore(store)
filer.DisableDirectoryCache()
// checking one upper directory
entries, err := filer.ListDirectoryEntries(filer2.FullPath("/"), "", false, 100)
if err != nil {
t.Errorf("list entries: %v", err)
return
}
if len(entries) != 0 {
t.Errorf("list entries count: %v", len(entries))
return
}
}
Loading…
Cancel
Save