diff options
| author | Chris Lu <chris.lu@gmail.com> | 2020-09-24 03:06:44 -0700 |
|---|---|---|
| committer | Chris Lu <chris.lu@gmail.com> | 2020-09-24 03:06:48 -0700 |
| commit | 5e239afdfc64ef39c5d4f41ec16410e726614eee (patch) | |
| tree | 8f1088f327777603dbdcb1d137ddc26efd18dfa6 /weed/filesys/file.go | |
| parent | c7d7b1a0f6e396e481c184c419e89675435f0e18 (diff) | |
| download | seaweedfs-5e239afdfc64ef39c5d4f41ec16410e726614eee.tar.xz seaweedfs-5e239afdfc64ef39c5d4f41ec16410e726614eee.zip | |
hardlink works now
Diffstat (limited to 'weed/filesys/file.go')
| -rw-r--r-- | weed/filesys/file.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/weed/filesys/file.go b/weed/filesys/file.go index d130d5898..f501e1ec8 100644 --- a/weed/filesys/file.go +++ b/weed/filesys/file.go @@ -67,6 +67,9 @@ func (file *File) Attr(ctx context.Context, attr *fuse.Attr) error { attr.Uid = file.entry.Attributes.Uid attr.Blocks = attr.Size/blockSize + 1 attr.BlockSize = uint32(file.wfs.option.ChunkSizeLimit) + if file.entry.HardLinkCounter > 0 { + attr.Nlink = uint32(file.entry.HardLinkCounter) + } return nil @@ -250,7 +253,7 @@ func (file *File) Forget() { } func (file *File) maybeLoadEntry(ctx context.Context) error { - if file.entry == nil && file.isOpen <= 0 { + if (file.entry == nil || file.entry.HardLinkId != 0) && file.isOpen <= 0 { entry, err := file.wfs.maybeLoadEntry(file.dir.FullPath(), file.Name) if err != nil { glog.V(3).Infof("maybeLoadEntry file %s/%s: %v", file.dir.FullPath(), file.Name, err) |
