Calendar
« 2004年08月 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        


Categories
Archives

2004年08月 18日

Windows Server 上での jscache 動作不具合の修正方法

カテゴリー: blogをはじめてみよう

先日、Similarity Search の高速化で利用した jscache ですが、Win + IIS で実行しようとすると、パラメータが多い場合に動作しなくなると言う不具合を発見しました。暫定ながら jscache の 68 行目(0.01/0.02両Ver.とも同じです)を以下のように変更すると修正できます。

my $cache_file = cache_for(substr($url,0,100));

jscache は cache file の名前を 与えられたパラメータから生成しますが、Windows Server の場合、ファイル名は256文字(だと思う)を超えると全部切り捨てられてしまいます(しまうようです)。今回、AdSense 用パラメータが増えてファイル名が256文字をどうやら越えてしまった模様。で、jscache は cache file を検索出来なくなってしまったわけです。この修正で cache file 名は予め100文字で切りそろえますので一応解決します。

想定される問題は、100文字を越える entry file 名を作ったりしたケースで cache file 名が各 entry 用で同じになってしてしまうケースですが、んなことはよっぽどないでしょう。本質的には cache file 名テーブルを作ると言う設計が正しいわけですが、個人的に Perl 苦手だしあんまりオリジナルに手を入れたくないしで俺は御免。誰かやってw って言うか Windows Server っていろいろ難儀。

Posted by Gucchiy at 2004年08月18日 07:08
トラックバック
コメント