4270 | オーバーフロー | はくぶん | 2012-03-19 01:21:36 |
この掲示板の左欄に"ドメイン別アクセス状況"というのがある。 今までの全アクセスをドメイン別に集計したページである。 日頃、このページを開く人はほとんどいないと思うので、 気付いていた人は多分いないだろうが、 開く度にスクリプトが動作途中でエラーになっていた。 スクリプトの構文自体に間違いはない。 現に対象レコード数を減らせば結果はちゃんと返って来る。 となると、原因はオーバーフロー。 確かに200万レコードを超えるヘビーな集計なので、 オーバーフローしたとしても不思議ではない。 少し前から改善しようと何パターンも処理方法を試してはみたのだが、 どう対処しても一向にオーバーフローは回避できなかった。 で、ついさっき、ようやく対処に成功。 ふと思い付いたパターンを試してみたら、あっさり結果を返して来た。 が、なぜそれでオーバーフローが回避されたかのかはわからない。 しかし、一応オーバーフローは解消されたということで、 今日は納得して寝るとしよう。 ただ、今後レコード数が増えていくと、 今の構文でもいつかオーバーフローする時が来るのかもしれない。 もし、そうなったら、その時は対処のしようがないかも。 今でも40秒以上かかる重い集計なんだから。 ちなみに、この対処を試みている際に発見したのだが、 リモートホスト名無し(空白)のアクセスが257件あった。 リモートホスト無しって、一体どうやったらそんなことが出来るの? |
|||
メッセージ文字数:591/620 | |||