2006年05月24日

Heimdallrのホントのバグ対策その5

5/23の記事の続きです。

今までバグ対策であるInternet Explorerの設定変更について色々と検討してきました。 対策をこれと決めてしまう前に、一応、他に何かないか検討しておきましょう。

バグ発生条件は、WinInetのバグ情報のページによると、次のようになっています。
This only happens when the server uses chunked encoding and abruptly closes a connection.
Transfer-Encodingがchunkedで、かつ突然コネクションが切断されたときに発生するわけです。

突然コネクションが切断というトリガの詳細がよく分かりませんが、HeimdallrはタイムアウトするとInternetCloseHandleを呼び出してコネクションを切断するので、これがトリガとなっている可能性があります。
ということはこんな対策が考えられます。

Transfer-Encodingがchunkedの場合、タイムアウトするまでの時間を長くする、あるいはタイムアウトしない。

完璧な対策ではありません。別の要因によりコネクションが切断された場合は不具合が発生する恐れがありますし、サーバとの通信速度が低速の場合はダウンロード時間が延びます。 ですが、不具合発生確率を下げることはできそうです。Internet Explorerの設定を変更する必要もありません。なんとなく良さそうですね。うーん。

投稿者 MASATO : 2006年05月24日 00:46 | トラックバック
コメント
コメントする









名前、アドレスを登録しますか?