2006-07-01から1ヶ月間の記事一覧
DBIC のスキーマをたくさん(20数個かな)定義したモジュールを use しただけの単純なスクリプトに DProf によるプロファイラをかけてみました。Algorithm::C3 0.01 時代のプロファイリングがこれ。 Total Elapsed Time = 9.335981 Seconds User+System Time…
0.02 Sun. Jul. 30, 2006 - code refactored for speed by Brandon L. Black ま,まじっすか?Algorithm::C3 とはいうまでもなく Class::C3 の根幹を支えるモジュール。ということは DBIC の初期化も…wktk!
そっか,今日はゲド戦記隅田川花火大会でした。個人的に評価は低いです。っていろいろ書こうと思ったら帰社時間になってしいました。
基本的には Cache-Control 等でキャッシュ不可に「しない」場合,ブラウザの「戻る」ボタンで戻ってもフォームの入力内容は残っています。でもテスト環境でテストしていて Firefox 1.5 で戻ったら内容が消えてて,あれれ?となりました。IE で確認したらちゃ…
Samba 3.0.23 で ads と unix group がうまくいかない - daily dayflower で困った,共有ディレクトリにアクセスできなくなってしまった,と書きましたが,3.0.23a がリリースされて直ったみたいです。Fedora のレポジトリでも更新されました。良くも悪くも …
ab でパフォーマンステストを行っていたんですが,ログに GET / HTTP/1.0" 200 643 "-" "Apache/2.2 (internal dummy connection)みたいなのがたまに出現してました。prefork mpm を使っているんですが, MaxRequestsPerChild でプロセスが再生成されるあた…
少なくとも ver. 7 の世代では IN を使った副問い合わせは遅いので EXISTS を使うべし http://www.stackasterisk.jp/tech/dataBase/postgresTuning02_02.jsp http://itbtech.itboost.co.jp/inst/inst_33.php EXISTS 等集約関数について http://www.postgresq…
DBIC のプラグイン機構は Class::C3 が使われています。これは何をするものかというと,多重継承したクラスでのメソッドの呼び出し順序を Perl 標準のではなくわりとメジャーな順序にするという…って自分でも何をいっているかわかりませんが,ともかくそれを…
以前も書いたように DBIC でのリレーションは,PREFETCH すると INNER JOIN や OUTER JOIN な SQL が発行されます。一方,ページャとして有用な page, rows アトリビュートは LIMIT, OFFSET を利用しています。ですから, my $artists = $schema->resultset(…
うちからアクセスできないだけですかね。 と思ったらアクセスできるようになりました。 と思ったらなんかおかしいですね。そんなに困らないかなと思ったら意外に依存した生活をしていたのでした。
と思ったらまだ置いていなかった罠。
rssh を spec から rpmbuild したんですけど,気が付いたら設定ファイルが /etc/rssh.conf ではなくて /usr/etc/rssh.conf になってました。???と思ったんですが,rpmbuild --showrc で _sysconfdir を見ると /usr/etc に。yum install rpm-build して満…
[local] <-> [gateway] <-> [remote]みたいな状況で,local <-> remote で rsync をやりたいんですが,これが面倒くさいのです。http://samba.anu.edu.au/rsync/firewall.html にいくつかのやり方が書いてあるんですが, ssh-agent を forward することによ…
Fedora core 5 を HP のサーバにインストールしたら「can not find filesystem」と panic られました。RAID と reiserfs の相性がよくないのか ext3 にしたらうまくインストールできました。がーん。
昨日の話をふまえたうえで #!/usr/bin/perl use strict; use Error qw(:try); sub test { try { warn 'step 1'; return; warn 'step 2'; }; warn 'step 3'; } test();の結果は, step 1 at test.pl line 8. step 3 at test.pl line 12.やっぱり,そうなるん…
すいません,基礎ができていませんでした。 sub foobar { my $arg = shift; eval { return 'not defined' unless defined $arg; }; return 'defined'; } print foobar(); # 'defined' is printed.eval() 内の return は eval 節自体の評価値として返す,とい…
% pg_dump -Fc -t my_table -Z 9 -U dbuser mydb > my_table.dumpみたいにテーブル単位で圧縮ダンプしたデータを,念のために,と思って % pg_restore -c -Fc -t my_table -U dbuser -d mydb my_table.dumpとしたら,インデックスが復帰されないわ GRANT の…
ふと気づくと Fedora の samba が 3.0.23 になっていました。それで再起動したんですが,共有ディレクトリにうまくアクセスできなくなってしまいました。私の環境はちょっと特殊なんですが, 認証は ads で Windows Server におまかせ ADS に登録されていて …
追記 2006/12/06 下記で IS NOT NULL を実現するのにスカラーリファレンスを使用していますが,IS NULL / IS NOT NULL を出すためには必ずしもスカラーリファレンスを利用する必要はありません。ということで訂正を入れようと思ったんですがちょっと長いので…
ハッシュのディープコピーにこれまで Clone を使っていたんですが,メモリリークが起きる可能性があるそうで Clone::More および Clone::Fast なるモジュールが CPAN にあがってます。まだ読み中なので何ともいえないですが,とりあえず落ち着いて POD 書け…
デプロイするとき何を使うか。もちろん Capiなんとかとかいう高機能なデプロイツールを使うことができればいいのですが,使い方を習熟しなくちゃいけないですし,いろいろ環境を設定しなくちゃいけません。レポジトリ作ってなかったりもするので,お手軽に r…
突如開発環境の VMware の vm が止まってしまいました。なぜ?と思い VMware console でつなぎにいくと,suspend してます。resume しようとしたら「シリアル番号が正しくないよ」といわれました。えっえっえっ???焦って VMware のホームページを見に行っ…
use utf8; use Email::Valid; print Email::Valid->address('日本語@ドメイン.です') ? 'OK' : 'NG', "\n";の結果は「OK」となります。Email::Valid::Loose でもそうなります。 国際化ドメインとして考えるのならいいのですかね?でもその場合でも local-par…
今まで $schema->storage->debug(1) として標準出力に出力される SQL 文を監視していたのですが,なぜか早く終わるリクエストでとらえきれなくなってしまいました。やむなくロガーを導入することにしました。Log::Log4perl は仕様が重そうなので(log4j のと…
今日は体調がすぐれなかったのでお休みしてしまいました。おうちから CPAN の Recent をみてたら,「TL」とかいうのがどかどかと up されてました。?なんだこれは?と思ったら,TL - Perlフレームワーク らしいです。ユミルリンクですかぁ。
いつものように CPANPLUS でアップデートチェックしたら Catalyst が 5.70 になったよ,といわれました。いくつかの developper release を越えて,七夕リリースとなったようです。アップデートしたら Catalyst-Runtime とかいう dist になっててなんだこれ…
CGI 時代では,たとえばメールを送るなど時間がかかる処理を行う時は fork() を使っていました。子プロセスでメール送信,親プロセスでレスポンスを返す,とやると,ユーザはメールが実際に送られるかどうかに関わらず ASAP でレスポンスを受け取ることがで…
前回よりだいぶ間があいてしまいました。 3. filter ファクトリクラスを作って LOAD_FILTERS で指定する まずファクトリクラスの書き方ですが,Template::Filters というよいサンプルがあるので読みましょう。というのは冗談で,めんどくさい部分を Template…
read only な connection がほしい。もちろん本筋としては読み取り専用ロールなユーザを定義するべきなんでしょうが。Plugin として書くべきか,DBIx::Class::Storage::DBI を継承した Storage を書くべきか。 PKEY 定義されてないとリレーションをうまく参…
今のプロジェクトでも同じような機構を使いました(1, 3, 4 あたり)。ので http://e8y.net/blog/2006/07/06/p124.html を読んで多いに共感→期待。 さすがに SYNOPSIS を見るとごちゃごちゃ感は否めないですね。仕方ないですけど。