aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/mount/weedfs_dir_mkrm.go17
-rw-r--r--weed/mount/weedfs_link.go9
-rw-r--r--weed/mount/weedfs_symlink.go11
3 files changed, 23 insertions, 14 deletions
diff --git a/weed/mount/weedfs_dir_mkrm.go b/weed/mount/weedfs_dir_mkrm.go
index 9f03d81c2..e69c9796e 100644
--- a/weed/mount/weedfs_dir_mkrm.go
+++ b/weed/mount/weedfs_dir_mkrm.go
@@ -3,14 +3,16 @@ package mount
import (
"context"
"fmt"
- "github.com/hanwen/go-fuse/v2/fuse"
- "github.com/seaweedfs/seaweedfs/weed/filer"
- "github.com/seaweedfs/seaweedfs/weed/glog"
- "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb"
"os"
"strings"
"syscall"
"time"
+
+ "github.com/hanwen/go-fuse/v2/fuse"
+
+ "github.com/seaweedfs/seaweedfs/weed/filer"
+ "github.com/seaweedfs/seaweedfs/weed/glog"
+ "github.com/seaweedfs/seaweedfs/weed/pb/filer_pb"
)
/** Create a directory
@@ -54,9 +56,10 @@ func (wfs *WFS) Mkdir(cancel <-chan struct{}, in *fuse.MkdirIn, name string, out
defer wfs.mapPbIdFromFilerToLocal(newEntry)
request := &filer_pb.CreateEntryRequest{
- Directory: string(dirFullPath),
- Entry: newEntry,
- Signatures: []int32{wfs.signature},
+ Directory: string(dirFullPath),
+ Entry: newEntry,
+ Signatures: []int32{wfs.signature},
+ SkipCheckParentDirectory: true,
}
glog.V(1).Infof("mkdir: %v", request)
diff --git a/weed/mount/weedfs_link.go b/weed/mount/weedfs_link.go
index cfff69dd9..15b7e081e 100644
--- a/weed/mount/weedfs_link.go
+++ b/weed/mount/weedfs_link.go
@@ -2,12 +2,14 @@ package mount
import (
"context"
+ "syscall"
+ "time"
+
"github.com/hanwen/go-fuse/v2/fuse"
+
"github.com/seaweedfs/seaweedfs/weed/filer"
"github.com/seaweedfs/seaweedfs/weed/glog"
"github.com/seaweedfs/seaweedfs/weed/pb/filer_pb"
- "syscall"
- "time"
)
/*
@@ -72,7 +74,8 @@ func (wfs *WFS) Link(cancel <-chan struct{}, in *fuse.LinkIn, name string, out *
HardLinkId: oldEntry.HardLinkId,
HardLinkCounter: oldEntry.HardLinkCounter,
},
- Signatures: []int32{wfs.signature},
+ Signatures: []int32{wfs.signature},
+ SkipCheckParentDirectory: true,
}
// apply changes to the filer, and also apply to local metaCache
diff --git a/weed/mount/weedfs_symlink.go b/weed/mount/weedfs_symlink.go
index e484c88db..8842ec3e6 100644
--- a/weed/mount/weedfs_symlink.go
+++ b/weed/mount/weedfs_symlink.go
@@ -3,13 +3,15 @@ package mount
import (
"context"
"fmt"
+ "os"
+ "syscall"
+ "time"
+
"github.com/hanwen/go-fuse/v2/fuse"
+
"github.com/seaweedfs/seaweedfs/weed/filer"
"github.com/seaweedfs/seaweedfs/weed/glog"
"github.com/seaweedfs/seaweedfs/weed/pb/filer_pb"
- "os"
- "syscall"
- "time"
)
/** Create a symbolic link */
@@ -42,7 +44,8 @@ func (wfs *WFS) Symlink(cancel <-chan struct{}, header *fuse.InHeader, target st
SymlinkTarget: target,
},
},
- Signatures: []int32{wfs.signature},
+ Signatures: []int32{wfs.signature},
+ SkipCheckParentDirectory: true,
}
err := wfs.WithFilerClient(false, func(client filer_pb.SeaweedFilerClient) error {