レイアウト変えてみました。
SQL::Abstractは新しいのを使いましょう
2年近く前にPerlで作られたシステムの改修の依頼をいただいての作業中に、Class::DBI::AbstractSearchで利用されているSQL::Abstractに、副作用のある箇所を見つけました。(とその時はおもったのです)
気がついたのは、DB操作の流れを確認したくてClass::DBIの発行するSQLとバインドされる値をトレースしていた時。
$where = {
'date' => [
'-and',
{
'>=' => '2007-03-30'
},
{
'<=' => '2007-03-31'
}
],
};
.....
my ($stmt, @bind) = $sql->where($where, $order);
みたいな処理の後、Data::Dumperで$whereの中身を見てみると
$VAR1 = {
'date' => [
{
'>=' => '2007-03-30'
},
{
'<=' => '2007-03-31'
}
]
};
こんな感じ。'-and' が消えちゃってる。
ありゃりゃ、と思ってSQL::Abstractのコードを追いかけてみたら、hashのdeep copyを行っている _anoncopyというメソッドが怪しい感じ。ちょこちょことパッチを書いてあててリトライすると
$VAR1 = {
'date' => [
'-and',
{
'>=' => '2007-03-30'
},
{
'<=' => '2007-03-31'
}
]
};
なおったっぽい。
たまにはパッチを作者の方に送ってみようかな、などと思ったのですが、ふとcpanを見てみたら、SQL::Abstractの最新版は1.22。改修中のシステムが使っているのは1.19。。。
あ゛~、とか思いながら最新版のコードを見たら、ちゃんと直ってました。
そりゃ、2年近く前のものだからねー。新しいのが出てないか、先に確認しなかった自分がうかつだよねー。まぁ、勉強にもなったし、などと思いつつ、ちょっと凹みました。
D01NX、いいですよー
ちょっと間があいてしまいましたが、イーモバイルのD01 NXの使用感のまとめ。
ここ数日間で、都内の渋谷、品川、日比谷、中目黒、田町で使う機会がありました。全て屋内。Thinkpad X60に挿して使ってます。
どの場所でも、コンスタントに下りが600~700kbpsくらいで、上りが220~280kbpsくらい出ています。(外付けのアンテナ無しで)
1M以上でつながっている方 もいらっしゃるようです。こちら にも。
通信が始まるときにちょっともたつく感じはありますが、一度データが流れ出すとかなり快適です。光回線と比べてはいけませんが、外出先での調べものやメール送受信はほとんどストレスがありませんでした。YouTubeも大丈夫。素晴らしい。。。すごい時代になったものです。
接続方式はPPP Adapterと表示されますが、ダイヤルアップの接続先の一覧には表示されませんでした。ipconfigコマンドで確認すると、グローバルIPが割り当てられてます。IPアドレスを固定にできるサービスがあると嬉しいのだけれど。。。
X60にインストールしてあるNorton Internet Securityは、この接続でもきちんと有効になっているようで、割り当てられているIPアドレスに外部からpingを飛ばしてみると、応答はありません。Norton Internet SecurityをOFFにすると応答がありました。
また、外部からこのIPアドレスにポートスキャンをかけてみると、Norton Internet Securityが「コンピュータを攻撃しようとする最近の試みを遮断しました」ってポップアップを出しまくりました。Norton君も結構働いてるみたいです(笑)。
あ、そうそう、このカード、使ってるとほんのり暖かくなります。X60のPCカードスロットはパームレスト左側にあるのですが、このあたりがほんのりと。ちなみに、X60のパームレストの右側の下には無線LANのチップが入っていて、こちらも暖かくなります。冬場はいいんですけどね。