mod_perl2のキャッシュに悩む

perl の time で処理していたところ、mod_perl2 のレジストリ環境だと、$now=time などとやってグローバルに使うとちょっと不都合。意図せずキャッシュされてうまくない。まったく同じ時間、というのが頻発するのだ。どうやって避けるのか、もしくは、キャッシュを吐き出させるのか、ぐーぐる様にたずねても今いちぴんとこない。なもんで、timeの出力をintで受けていたテーブルをすべてtimestampに直してみた。…って、これだけでえらい騒ぎ。
current_timestamp というのが今の時間を出す定数と書いてあって、コマンドラインで試すとなるほど、そのとおり。ところが dbi で使うとinsert と updateで使えない。current は、もうサポートしてないよ、とエラーで止まる。同等の now() を使えば大丈夫だったんだけど、where句の中では current_timestamp + ... というのは使えるから混乱した。しばらくハマった。
日付計算までpostgresqlにやらせるのもどうだろ、と思うんだよなぁ。もちろん、使い慣れてるから、perl の time でやってしまいたいってのが本当なんだけど、こないだから言ってるように、perl と postgresql の棲み分けのことも。読み書き検索といった足腰部分をpostgresqlで、表示加工や細かいところは perl で、と意識はしてたつもり。ある日数が経過してるから色を変えてみる、なんてのはそれこそ perl の細かい仕事だろう。読み書きで忙しいpostgresqlにそんなどーでもいいところまでやらせていいのかと。
今日、小諸そばのおやじに、はじめて、「毎度」と言われてちょっと照れる。たぬきに油揚げをトッピングしたり、わかめをトッピングしたり、毎度定食モノじゃないので目をつけられていたかもしれんなぁ。
| << | 2026/3 | >> | ||||
|---|---|---|---|---|---|---|
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 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 | ||||
【最近の10件】


