IT技术博客大学习 共学习 共进步

MogileFS 复制不正常,发现文件少于指定的份数解决方法

扶凯 2013-11-01 13:51:46 浏览 1,181 次

近来大家在安装最新的 MogileFS 时,会发现测试的时候,怎么样复制文件的过程都不正常.使用 telnet 到 7001 中使用 !watch 来查看时会不断的报下面的错(详细使用见 MogileFS 高级排错).

!watch
Added you to watcher list.
.
:: Child 10106 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10091 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10121 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10134 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10120 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10135 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10136 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.
:: Child 10149 (replicate) died: 256 (UNEXPECTED)
:: Child 10150 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 8, wants 10, making 2.
:: Child 10152 (replicate) died: 256 (UNEXPECTED)
:: Job replicate has only 9, wants 10, making 1.

上次我使用 MogileFS 的 DEBUG 模式跟过这个问题,是由于 Sys::Syscall 这个模块升级成 0.25 的新版本引起的.
我们可以使用下面的命令来检查当前的版本

$ perl -MSys::Syscall-e 'print $Sys::Syscall::VERSION'
0.25

如果发现是显示上面的 0.25 就一定会出问题.建议退回到 0.23 就不会在出问题了.所以建议大家在安装完 MogileFS 后,先退回这个模块到 0.23.

cpanm http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/Sys-Syscall-0.23.tar.gz 

二个月以前发现这个问题,近来很多人来问我,发现问题还很严重,特此记录.希望能帮到大家.
ps: 最新的 MogileFS 的客户端连接数据库一定要求要有密码,不然启动会有问题…

建议继续学习

  1. MogileFS 的介绍(MogileFS 系列1) (阅读 4,983)
  2. 在 MogileFS 中使用 Nginx (阅读 3,883)
  3. MogileFS 的客户端和API(MogileFS 系列4) (阅读 3,444)
  4. MogileFS 的安装(MogileFS 系列2) (阅读 3,304)
  5. MogileFS Rebalance(文件的重新均衡) (阅读 3,162)
  6. MogileFS 的设置和管理(MogileFS 系列3) (阅读 2,903)
  7. MogileFS 研究 (阅读 2,621)
  8. MogileFS 文件系统检查 (阅读 2,461)
  9. MogileFS 排错小技巧 (阅读 2,223)
  10. 为 MogileFS 配置使用多个网络段/多数据中心 (阅读 2,222)