Browse Source

mount: avoid the need to specify different cache directory for different mount

fix https://github.com/seaweedfs/seaweedfs-csi-driver/issues/11
pull/1759/head
Chris Lu 4 years ago
parent
commit
62ebb917e0
  1. 1
      weed/command/mount_std.go
  2. 3
      weed/filesys/wfs.go

1
weed/command/mount_std.go

@ -169,6 +169,7 @@ func RunMount(option *MountOptions, umask os.FileMode) bool {
} }
seaweedFileSystem := filesys.NewSeaweedFileSystem(&filesys.Option{ seaweedFileSystem := filesys.NewSeaweedFileSystem(&filesys.Option{
MountDirectory: dir,
FilerAddress: filer, FilerAddress: filer,
FilerGrpcAddress: filerGrpcAddress, FilerGrpcAddress: filerGrpcAddress,
GrpcDialOption: grpcDialOption, GrpcDialOption: grpcDialOption,

3
weed/filesys/wfs.go

@ -26,6 +26,7 @@ import (
) )
type Option struct { type Option struct {
MountDirectory string
FilerAddress string FilerAddress string
FilerGrpcAddress string FilerGrpcAddress string
GrpcDialOption grpc.DialOption GrpcDialOption grpc.DialOption
@ -92,7 +93,7 @@ func NewSeaweedFileSystem(option *Option) *WFS {
}, },
signature: util.RandomInt32(), signature: util.RandomInt32(),
} }
cacheUniqueId := util.Md5String([]byte(option.FilerGrpcAddress + option.FilerMountRootPath + util.Version()))[0:4]
cacheUniqueId := util.Md5String([]byte(option.MountDirectory + option.FilerGrpcAddress + option.FilerMountRootPath + util.Version()))[0:8]
cacheDir := path.Join(option.CacheDir, cacheUniqueId) cacheDir := path.Join(option.CacheDir, cacheUniqueId)
if option.CacheSizeMB > 0 { if option.CacheSizeMB > 0 {
os.MkdirAll(cacheDir, os.FileMode(0777)&^option.Umask) os.MkdirAll(cacheDir, os.FileMode(0777)&^option.Umask)

Loading…
Cancel
Save