2005-01-01から1年間の記事一覧

mallocでSEGV

malloc、しかも数十バイトのやつを呼んだだけで落ちるってどういうことよ〜。 んが〜。coLinuxだからか? [追記] 普通にヒープぶっ壊してました。 やーひさびさのCはきっついのー。 ccmallocでリークチェックはしてたけど、 範囲外アクセスのチェックなんか…

Web2.0コトノハで

Web2.0コトノハで http://web20.kotonoha.cc/ 「Web2.0でガンが治る!」というコトを投稿したら、 速攻削除されてしまった(笑僕の中のWeb2.0感をよく出せたと思ったのになあ。 とりあえず、普通のコトノハに再度出してみよう。(自分を荒らしと思っていない…

ふふふ

DBが壊れる原因がわかった。 Perlでの利用だけかもしらんが、 1つのプロセスで複数のDBを開いて更新をしているとおかしくなる。 (not ひとつのDBを複数のプロセスで開く) 同時に1個しか開かないようにしたら壊れなくなった。 まあ、ありがちといえばありが…

snippet作成なんか

snippet作成のときに必要となる、文字列検索アルゴリズム。 BM法くらいしか覚えていなかったんですが(しかも名前だけ)、 ちょちょいと検索すると面白いページ発見。 http://www-igm.univ-mlv.fr/~lecroq/string/index.html1997って書いてあるのが気になる…

Hyper Estraier 1.06で

Hyper Estraier 1.06+perl binding 0.0.15で どうもDatabase Problemが起きたりすることがある。 qdbmは1.8.33だが、1.8.34でバグが取れたらしいMinGW環境でもないし。1.04+perl binding 0.0.14に戻したらとりあえず壊れなくなった、ように見える。 とりあえ…

Win32でほにゃ

LWLなものでWin32プログラムしたことなかったんですが、 VisualuRubyを入れてほにゃほにゃしてみた。 やべー楽しー。そして楽チン。C言語も嫌いじゃないんですけど、 Cで書きたくなるのはカリカリにチューンしたアルゴリズムなんかで、 普通に何か書くのはや…

入門しました!

今まで手をつけていなかったRubyをはじめました! あとはPythonかしら…というわけで、とりあえずRuby レシピブック268の技を購入。 とりあえずこれを一通り読んでみよう。

rsync

rsyncのファイル転送全体をatomicにしたい。 で、atomic-rsyncというPerlスクリプトがあるのですが、 デスティネーションがローカルじゃないとダメなのよ。 むにゅ。 まあ、いろいろと方法はあるけど…

Hyper Estraier 1.0.5が落ちる

Hyper Estraier 1.0.5が出てました。パチパチ。 で、使ってみようとしたら落ちる。文書に@dateという属性をつけている。 $cond->set_phrase($parsed_query); $cond->add_attr("\@date NUMGE $from"); $cond->add_attr("\@date NUMLE $to"); $cond->set_order…

おおおおHyper Estraierクンめ

Perlバインディング、 est_db_search(実際はest_mtdb_search)の第4引数がNULL固定!!! つまりest_cond_set_maxしていると全体ヒット件数が取れないのだ。 maxを抜いて取るべし。ひい。あと、ESTCONDUSUALの場合にも、 ひっかかったレコードをちゃんとス…

昨日のお祭りを振り返って

というわけで、 昨日は一人全文検索祭り(Perlで簡単に使えてN-gramイケるやつ)をしていたわけですが、 大規模な文書をインデックスするにはSennaかHyper Estraierしか実用的じゃない印象。 Lucene系は、 Javaで本家Luceneを使う場合を除くと余計な心配事が多…

PLucene つ ポイッ

インデックス中に持っている属性でのソートができないっぽい。 いや、普通にPerlのコードでできるんですが、 インデックスを使ったソートが出来ないということで。

PLucene

Perl版Lucene。 http://search.cpan.org/~tmtm/Plucene-1.24/lib/Plucene.pm C++版LuceneのCLuceneのPerlバインディングを使うという手もあり。で、PLucene、ドキュメントを追加しようとすると激烈にエラーを吐きます。 Bitwise-String-Operatorsを普通のXOR…

CLucene つ ポイッ

インデックス中に持っている属性でのソートはできますが、 Perl wrapperにそのためのインターフェースがない…

Rast.pm

Rast 0.3.1ではDATE型とDATETIME型の両方があります。 Rast.pmでは過去のバージョンのRastを前提としており、 DATE型にDATETIME型の値(ex.2005-11-05T12:31:12)をいれようとします。 よって、Rast.pmとRast.xsを適当に修正すべし。…ひさびさに書くと感覚が分…

Hyper Estraier

Hyper Estraier。 amd64でも問題なく。 perlバインディングも問題なく。 index作成もそれなりに早く。 つか、indexがかなり小さい気がする。zlib効きまくり?さて、そろそろスヤリしないと。

CLucene

CLucene。 debian-amd64だとビルドに失敗する。 i386だと大丈夫だけど、 附属のperl wrapperがビルドに失敗する。 CPANにあるCLuceneモジュールは、 rpmの中にあるclucene_dllp.hがないと ビルドに失敗する。tar.gzの中にはない。とりあえず、rpmの中身を/us…

おつかれちゃん

なんとかリリース。 当日の朝に、外部からなぜか見られなくなっていたのを除けば。 さっそくフィードバックも返ってきている。 あとはデータ移行の残りを。

クローラー落ちていた

またTidy先生のおかげで落ちていた。 とりあえず、forkやめてフォアグランド動作に戻して、 daemontools配下に全てのクローラ関係のデーモンを移動。あとデータ移行しておかなきゃ。

いやなバグ

http://bugs.mysql.com/bug.php?id=14037 (IN BOOLEAN MODEじゃなくても再現します)IN BOOLEAN MODEを使わずに、 MATCH() AGAINST()を組み合わせて使うような 設計にしていたらハマった。すなおにIN BOOLEAN MODEを使うべきかしらね。

クローラー落ちない

クローラーと各種デーモンがかなり安定してきた。 3日回しても大丈夫。 POEのDBIがちょっと不安定だったので普通に同期にしたら安定している。 ポエの内部動作を見極めんといけんな。

Perlでの数値の最大値

Perlの数値の最大値がよくわからん。 整数はintegerもしくは文字列形式でいくらでも、 浮動小数点数はどうなんだろう。use bignumをしたらスカラー値じゃない!っていっぱい怒られるしなあ。 かといって、bignumで使っているモジュール群をいちいち指定する…

CDB_Fileなんですが

CDB_Fileを使ってPgでカーソルでfreezeでbzip2のcompressで… というのをやっていたら、3.5GくらいでOut Of Memoryした。 オンメモリでやってるのかいな!!!で、CPAN先生に泣きついたところ、 CDB_File::Generatorっつーものがあるらしくてですね、ダンナ。 Th…

Xangoの新バージョン

早速新バージョン(rev.94)に入れ替えてみた。旧バージョンとの入れ替えのポイントは… Xango::BrokerをXango::Broker::Pullに retrieve_jobsで返すやつを、uriが入ったhashrefのarrayじゃなくて、 Xango::Job->new( uri => xxx, ...)で返ってきたののarrayに…

PerlでRACEエンコーディング

いるもの Unicode::String Convert::RACE Convert::Base32 エンコード $encoded_output = to_race(utf8($output)->utf16); デコード $decoded_input = utf16(from_race($input))->utf8; UTF-8フラグは適宜処理すること。

FusionChartsを日本語と共に使うときに気をつけるべきこと

FusionCharts http://www.infosoftglobal.com/FusionCharts/ は日本語通ります。ただし!!! 食わせるXMLはUTF-8で、BOM付き(UTF8BOMでも使う) パラメータとしてdataURLを与えるとき、 マニュアルどおりの&と?の変換だけでは、 一部のマルチバイト文字で化…

Hyper Estraier

Hyper Estraier、評価しなくちゃ・・・

DBIx::Cursor

DBIx::Cursorっていう汎用カーソル君が存在するみたい。 やほーい!!! さっそく試してみっか。 … 全部レコードとってきとるやないかい! カーソル風アクセスを実現するだけ、ってことやな。 結局Pgを入れた。

DBD::Pgめ!!!

カーソル使えないってどういうことやねん!!!!

MecabはChasenにとって変われるか

まあ、-jオプションが一番の問題なわけで。 http://www.namazu.org/pipermail/namazu-devel-ja/2005-September/000608.htmlchasenのマニュアルによると、 -j オプションについて 茶筌では通常,改行をもって一つの入力文字列の終了とする.そのため,文の途…