Chef で "yum-dump Locking Error!" がでる
Chefでがーっとインストールしていると,yumでyum-dump Locking Error!
というのがでる.
Chef::Exceptions::Package: Yum failed - #<Process::Status: pid 5261 exit 200> - returns: ["yum-dump Locking Error! Couldn't obtain an exclusive yum lock in 10 seconds. Giving up.\n"]
要はChefがyumを実行している時にタイムアウトしてしまうらしい. タイムアウトに設定されている時間は,エラーログに書いてあるように10秒. ちょっと,これは短いのでなんとか変更する方法はないかと,いろいろ探してたが情報があんまりなかった.
こういうissue(CHEF-3193)があって, 最終的にはattributeとかで設定出来るようにするべきだよねって話がされてた. が,今(2013/11/06)の状態はConfirmed.
最終的には,
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.4.0/lib/chef/provider/package/yum-dump.py
に記述されている,
# Seconds to wait for exclusive access to yum LOCK_TIMEOUT = 10
の値を30くらいに変更した.