つれづれ日記 2006年9月

予定

毎日


2006年9月30日 (土曜日)

12:11:42 # Life apt-listbugsの HTTP redirect support. stable に入っているapt-listbugsは  HTTP redirect をサポートしていません。 そのため、sarge の apt-listbugs は永遠に osdn.debian.or.jp/~taru を参照することになってしまいそうです。 これは原因としては、ruby の net/http では HTTP リダイレクトをライブラリ側ではなく、 利用するアプリケーション側でサポートしないといけないという仕様になっているからです。 0.0.54 ではサポートするように変更しました。

20:47:42 # Life apt-listbugs でやっと Fixed に対応。 今日の作業で、当初の目標であったVersioned BTS に対応させる作業ができました。 最終的にはもうちょっとつめる必要がありそうですが、 うまく動いているようです。 今正しく動いているのか、ということをテストしてくれる仕組も必要だとおもうのですが、 BTS のデータは動的に変化していくしくみなので、どう実装するのがよいか悩みどころです。

2006年9月27日 (水曜日)

00:10:23 # Life apt-listbugs の SOAP インタフェース。 本番運用に投じました。あと数時間すればunstable にリリースです。 お試しください。

2006年9月26日 (火曜日)

07:59:10 # Life apt-listbugs on merkel のインパクト。 merkel.debian.org を利用する版をリリースしてから24時間程度たちました。 merkel.debian.org に 16000 回くらいのHTTP GETが発行されているようです。 unique IP 数でいうと 700 くらいです。 db-h 以下の status ファイルを取得するにはバグIDの数だけ HTTP GET を発行する必要があるので、 一人当り10くらいは status ファイルを取得することになります。 それと SOAP リクエストを1ユーザ1回発行する仕組と、とどちらが負荷が高いのか、これから実運用に入るので見物です。 現在、bugs.debian.org の設定変更待ちです。

2006年9月24日 (日曜日)

12:09:25 # Life linux-uvc アップデート。 upstream と patch に関して、iMac 用にアップデートされていたので、更新してみました。 iSight で試していたら、バグがあったので、修正しました。 これで、 logitech と iSight の両方で動作するようになり、 iMac 用でも動作するようになったはずです。 試した方の報告を待ってます。

20:36:14 # Life apt-listbugs 深追い続き。 既存の apt-listbugs はバグの取得を、パッケージ毎にスレッド処理しています。 その仕組は現状のクラス構造とかメソッドの配置とかの影響でそうなっちゃっているようです。 これは、抽象化のしかたが失敗して具体的に実行している事象がダサい例かもしれません、ひとつのことだけをまともにできるコードにしてあげたいところです。 いろんなオブジェクト指向的なマジックをがりがり削除して、単一 のことを確実にできるツールとして変貌をとげつつあります。そも そもそんなにたくさん選択肢があっても、テストできないでしょう。

いろいろといじっていて、やっと SOAP 経由でバグ情報を取得するように変更できました。 パフォーマンスもそうは悪くなっていない気がします。 どちらかというと、 dpkg -I をループをまわしているところがあって、そこですごく時間がかかっています。

22:08:06 # Life Debian を愛する人達。 Debian 開発者の中で、士気が下がっているのではないか、と心配したユーザが開始したスレッド。 Debian は、技術的なコミュニティーなので、本質的にいつも議論ばかりになります。 しかし、前向きな謝辞のコメントだけのスレッドというのもたまには面白いですね。

2006年9月23日 (土曜日)

15:35:50 # Life ruby で soap を使ってみる。 apt-listbugs の実装をいじり、 debian.org マシンでサービスが提供できるようにしたい。 そのために、 soap フロントエンドを使えばよいということになった。 soap は HTTP 経由で実装されたリモートプロシージャコールの規格。 実は http で生で取得するよりも、リクエストをひとつだけ投げるだけで 複数のファイルにわたる情報を取得できるので、 apt-listbugs の用途には適しているかもしれない。

エラーがおきると、XMLParserErrorとかがかえってくる。

/usr/lib/ruby/1.8/xsd/xmlparser/xmlparser.rb:31:in `parse': not well-formed (invalid token) (XMLParserError)
	from /usr/lib/ruby/1.8/xsd/xmlparser/xmlparser.rb:31:in `do_parse'
	from /usr/lib/ruby/1.8/soap/parser.rb:92:in `parse'
	from /usr/lib/ruby/1.8/soap/processor.rb:39:in `unmarshal'
	from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:236:in `unmarshal'
	from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:175:in `route'
	from /usr/lib/ruby/1.8/soap/rpc/proxy.rb:141:in `call'
	from /usr/lib/ruby/1.8/soap/rpc/driver.rb:178:in `call'
	from /usr/lib/ruby/1.8/soap/rpc/driver.rb:232:in `get_status'
	from ./b.rb:15
	

2006年9月22日 (金曜日)

00:02:44 # Life elserv のメンテナンス。 以前から気になっていたバグをいくつかつぶしました。 現在BTSに登録されているバグは全部修正したところです。 まだいろいろと動かない部分があるかと思うので、試してみていただける方、 動作レポートなどいただけるとありがたいです。 なぜなのかはまだ分析していませんが、 es-demo が一部どうもうまくうごいていない気がしています。

06:57:30 # Life Intel EFI toolkitの同意。 このページの深意がはかりかねている。 BSD ライセンスに同意し、名前と会社名を入力しないとダウンロードできない、というのは、どういう意味でしょう?

2006年9月18日 (月曜日)

11:26:56 # Life Debian のバグトラッキングシステムに確認し、致命的な問題が発生していないということを確認するためのツール、apt-listbugs。 このパッケージは実は最近メンテナンスされていませんでした。 とりあえず拾っておきました。 必要そうな修正を最低限マージしてとりあえずメンテナンスモードで運用します。 どなたか拾ってください。

20:17:11 # Life DDTSSを見てみる。 こちら。 とりあえずレビューしてみる。

2006年9月17日 (日曜日)

10:01:52 # Life 東京エリアDebian勉強会報告。 9月の第20回Debian勉強会を実施しました。 Debian specific の話題、翻訳のすすめ、oprofileの使いかた、についての話がありました。 今回の参加人数は12人でした。 参加者は小林さん、あけどさん、さわださん、小室さん、キタハラさん、えとーさん、野首さん、高杉さん、 前田さん、みつかさん、iwamatsuさん、上川でした。

今回の会計

(+
;;資料コピー13人分 
	  -4815
;;会場代
	  -1500
;;勉強会費
	  +5500
)
-815
の赤字
	

2006年9月12日 (火曜日)

07:41:17 # Life debconf7の打ち合わせ開催したようです。 6月17-23日開催をとりあえずの目標としているみたいですね。

2006年9月8日 (金曜日)

00:16:27 # Life elserv が orphan されたので、拾いました。 アップストリームの開発は5年前くらいに終了しちゃっており、まともにメンテされてきていないのですが、 個人的にはいろいろと便利に使っているので、メンテしていこうかな、と思っています。 放置されていたため、動かなくなっている部分が結構あるので、時間とられそうですが。

2006年9月3日 (日曜日)

11:23:40 # Life 最近git一番素敵だと思う機能として、 gitがCVS serverとして動くことがあります。 すごすぎです。 これで、クライアントはCVSを使いつづけることができます。 いや、gitをつかってもよいんだけど。 git-cvsserver, 最強。

17:43:09 # Life unixodbc。 Cでデータベースにアクセスしてみようと思ってみたのだが、とりあえず動くものを作ってみたところ、結構コードが長くなってしまいました。 Linux で ODBC を活用しようとすると、 unixodbcとiodbcというのがあり、両方とも同じように利用できるようです。 しかし、触ってみるとわかりますが、Microsoft 流の API。 ひさしぶりに Win32 API を直接利用してプログラミングしているような錯覚に陥りました。 何が悪いということではないのですが、コードの行数が長くなります。 これでコードをかく羽目になっているみなさま、御愁傷様です。 うーむ。しかたがないのだろうか。 とりあえずラッパーを噛ませて使いやすいように作りなおすか、もっとよいものを探すしかないですね。 マイクロソフトのサイトにAPIのリファレンスはあります。 unixodbcパッケージなどにはまったくドキュメントは入っておらず、 かろうじて入っているサンプルの /usr/share/doc/libiodbc2-dev/examples/iodbctest.c.gz は1091行もある巨大な代物。読む気がうせて、泣けます。 Cで仕込んでみたMySQLを利用する場合のサンプルスクリプト。 C++版のインタフェースもあるみたいなのですが、コンパイルが通っていないですね。 385801.

2006年9月2日 (土曜日)

20:36:42 # Life LD_ASSUME_KERNELはもう使えないの? 368326を見ている限りでは、 LD_ASSUME_KERNELで2.4.1とかを指定してTLSじゃない バージョンのlibc6をロードするように仕込む方法が使えなくなっているように見える。 困る場合ありますか? amd64でTLSなしというのはできないというのは知っていたのですが、 i386 でもできなくなったんじゃないか、と短絡的にあせったので すが、LD_ASSUME_KERNEL=2.4 だとエラーになるけど、 LD_ASSUME_KERNEL=2.4.1 だと無事に動きました。 あぁよかった。

oprofile で、vmlinux のsys_set_thread_area だ、と いうプロファイル結果が出ていた部分について、気づいたら processor/processorだ、という結果がでるようになってます。うー む。これってなぜ?processor.koのシンボルが見えていないっぽいな。

2006年9月1日 (金曜日)

09:18:34 # Life Debian/MacBookがまだスリープできるようにできていません。みなさんどうやってやってるんでしょうか?


Junichi Uekawa

$Id: 200609.html.ja,v 1.32 2006/09/30 11:53:50 dancer Exp $