![在将整个文件写入已挂载的存储桶之前写入零字节文件](https://linux22.com/image/759110/%E5%9C%A8%E5%B0%86%E6%95%B4%E4%B8%AA%E6%96%87%E4%BB%B6%E5%86%99%E5%85%A5%E5%B7%B2%E6%8C%82%E8%BD%BD%E7%9A%84%E5%AD%98%E5%82%A8%E6%A1%B6%E4%B9%8B%E5%89%8D%E5%86%99%E5%85%A5%E9%9B%B6%E5%AD%97%E8%8A%82%E6%96%87%E4%BB%B6.png)
我有一个使用 gcsfuse 版本 0.28 的已挂载存储桶。我有一个文件,比如说 200MB 或更大,我正在将其复制到已挂载的目录/存储桶中。GCSFUSE 首先写入一个零字节文件,将其从目标目录中删除,然后将完整文件写入该目录。
当接收应用程序正在监听此已安装的存储桶上的消息时,它们会收到零字节消息而不是完整写入的文件。
我的问题是:如果升级到 gcsfuse 0.31,这是否会处理此功能并解决此问题,或者我是否需要自己手动修复此问题并控制应用程序如何监听和处理目标安装存储桶上的传入数据?
答案1
您应该先尝试更新到最新版本,看看问题是否仍然存在。
如果在升级版本后这个问题仍然存在,那么你应该尝试更改代码以及控制应用程序的方式和监听方式。你可以尝试添加一些逻辑,以便在检测到文件大小为 0 Mb 时跳过该文件,然后查找大小大于或等于 1 Mb 的文件,但我不确定从长远来看这是否好。
另外,我建议你发布在问题GCSFuse 页面,以便团队了解此类问题。