sjqzhang / go-fastdfs

go-fastdfs 是一个简单的分布式文件系统(私有云存储),具有无中心、高性能,高可靠,免维护等优点,支持断点续传,分块上传,小文件合并,自动同步,自动修复。Go-fastdfs is a simple distributed file system (private cloud storage), with no center, high performance, high reliability, maintenance free and other advantages, support breakpoint continuation, block upload, small file merge, automatic synchronization, automatic repair.(similar fastdfs).
https://gitee.com/sjqzhang/go-fastdfs
The Unlicense
3.94k stars 747 forks source link

文件去重逻辑BUG #424

Closed Jaylenwa closed 1 year ago

Jaylenwa commented 1 year ago

背景:在默认配置下,短时间内(一分钟内)多次上传同一个文件到 go-fastdfs

问题:go-fastdfs会对多次上传的同一个文件去重,只保留一个文件。

操作:如果此时进行删除该文件操作,会把唯一的这个文件删除

会导致的实际业务问题:不同用户上传同一个文件, go-fastdfs实际上只会保存一个文件,当某个用户删除了改文件,那么其他上传了该相同文件的用户也找不到该文件了

是否应该加一个逻辑计数?当一个文件被上传多次,该单文件的元数据可以记录逻辑计数的个数,上传和下载实质上是对逻辑技术进行加减,当为0的时候才真正的物理删除?

sjqzhang commented 1 year ago

文件系统不会做这种与业务相关的逻辑,需业务自己解决。