晴れときなるままに

脱出ゲーム、ナンプレ、Androidアプリ、その他管理人の思いつくまま

Perl:flock()でLOCK_xxを記述するにはuse Fcntl ‘:flock’;が必要

   

perl問題と結論はタイトルの通りです。そんなの当たり前って方が殆どだとは思いますが、、、

 

昨日、ほぼ1ヶ月ぶりにナンプレサイトの問題更新が失敗していました。PerlCGIを午前2時に定期実行しているのですが、たまに失敗してファイルが作成されません。エラーログとか見てもCGIがエラーになったログはなく・・・1年に1回位なら失敗しても仕方ないかと思ってましたが月イチ程度となると、、と、ちょっと真面目に調べてみました。

 

で、タイトルの通りです。お恥ずかしい。LOCK_EXでロックしていたのですがuseしていなかったので値は何なのか分かりません。簡易的にif分を入れてみたところ期待する「2」で無いことは分かりましたw

 

Perl自体はあさ~い知識で使用していますので、何か分からなければググってコピペ→動けばOKみたいなやり方をしてきましたが、まぁそんなやり方じゃいけませんよーって天からの忠告ですね。実行時エラーにもならずテストではファイルもキチンと出来てしまうのでまったく疑いもしませんでした。。

 

2本のプログラムから書き込みがあるファイルなのでロックできていないとファイルが壊れたりするんでしょうね。その辺りは確認してませんが、暇があればどういう挙動になるのかテストしてみたいです。

 

更新失敗の原因だという特定はできていませんが、修正してとりあえず様子見としたいと思います。他にも色々怪しいところがありそうです。。エラーの処理とかもあんまり書いて無いし・・・

 

ということで、flock()を使っているソースにuseを追加して、今日の更新は上手く行ったようです。

 - その他 ,

コメントを残してやって下さいな

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  関連記事

さくらインターネットライトphp設定
季節外れのさくら画像からスタートしましたよ♪   phpをちょっと勉強して、レンタルしてるさくらインターネット(ライト)にアップして遊んだりしています。   昨日、別件(前記事のなんちゃってダークな奴 ...
フェイスブックも分からんwwww
なんでもかんでも、とりあえず触ってみますかねキャンペーン中なので、フェイスブックを触ってみています。   また遅えなぁ~ってのは、まぁいつものことでw   脱出ゲームとナンプレのFacebookページ ...
Google アナリティクスでアクティブユーザを監視する
タイトルの通りで・・・ナンプレサイトにアナリティクスの解析コードを入れてみました。   なんぼもアクセス無いのに何を解析するん?wwwwって感じですが、まぁにその通りw   何となく解析コード入れてみ ...
googleにインデックスされているページを見てみた
SEOのチェックサイトでナンプレサイトをチェックすると、googleにインデックスされているページ数が1200とか出る。で何回もチェックしていると200台になったりする。うむ。。   ナンプレサイトは1日10 ...
島根アクアス(水族館)に行ってきましたよ
島根県にあるアクアス(水族館)に行ってきました。 週末なのに人少な目で落ち着いて見れて良かったです。   沢山写真撮ったんですけど、帰って確認したらブレてたりピントあってなかったり、、、悲しい感じでしたw ボロ ...