PerlGAのためにクライアントを何万回も走らせてるんだけど、数百回に1回、なぜかクライアントが死なない(暴走する)。原因もよくわからないし、再現を待ってるほど暇じゃないので、スマート(嫌味)に解決することにした。n秒以上動いている特定のプロセスを殺すスクリプトをcronで回す。これで、10秒(6行目)以上動いてるprogram_nameというプロセスがあれば殺せる。これを1分ごとに回せば、たまに暴走してるプロセスがあっても無駄なく進められるだろう。GA回してるプログラム側からは、結果のファイルopenの例外を拾ってスコアを0にしてしまえば良い。結果にどの程度影響があるのかは知らん。あと、数階層下まで一気にディレクトリを作りたいときは、mkdirじゃなくてmkpathを使うといいらしい。これで$dirが無いときは作れる。twitterどうせ忘れるだろうからメモ。Net::OAuthだかNet::Twitterだかのバグで表題のエラーが出ていた件は、十分に新しいバージョン(3.14**以降?)では直っているはずだ。かかわらずこれが出るというのは、単にutf-8として適切ではないデータが渡されているだけのことらしい。BasicのときはいけたのにOAuthになったら通らなくなるのは不可解だが、TwitterのAPIなんて不可解なことだらけなので考えても仕方がない。Basic認証使えないしね。