上传大文件时出现“there is no enough disk space for used as cache(or temporary)”报错
问题分析:ossfs上传大文件时,是通过分片来上传的。分片大小默认为10MB,分片最大数量为1000个。
ossfs在上传文件时会写一些临时缓存文件到/tmp目录下,在写这些文件之前需要先判断/tmp目录所在的磁盘可用空间是否小于用户上传的文件总量,若判断磁盘可用空间小于用户上传文件总量,就会出现本地磁盘可用空间不足的报错。以下场景会导致磁盘可用空间不足的报错:
场景一:磁盘可用空间本身小于用户上传文件总量。例如磁盘可用空间是200GB,上传的文件是300GB。
场景二:分片大小和上传线程数量的参数设置错误。例如磁盘可用空间是300GB,需上传的文件是100GB。因操作错误,multipart_size被设置成了100GB,上传线程数量是5。此时ossfs判断上传的文件就是100GB*5=500GB,超过磁盘安全空间了。
解决方案:
场景一:增大磁盘可用空间。
场景二:分片大小正常单位是MB,最大数量是1000,不要将分片大小设置过大。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。