Kouhei Sutou
kou****@clear*****
2015年 7月 1日 (水) 15:19:25 JST
須藤です。 In <CA+Tq-RrOu12v2Zur+nf_OaZoE****@mail*****> "[groonga-dev,03321] Groongaソースコード読書会2の準備" on Wed, 1 Jul 2015 09:46:12 +0900, Hiroyuki Sato <hiroy****@gmail*****> wrote: > 明日(7/2)のGroongaソースコード読書会2に参加予定です。 > groonga初心者です。よろしくお願いします。 よろしくお願いします! > 明日の勉強会に備えて少し予習しておきたいのですが すばらしいです! > 次のようなものがあったら教えていただけますでしょうか? > > 1, 閲覧する予定のソースコードのファイル名 > 2, 見ておいた方が良い資料 まだどの処理を読むか決まっていないので、挙げづらいんですよ ね。。。一番希望が多い処理にしようと思っていたのですが、今の ところ全部ばらばらで。。。 https://groonga.doorkeeper.jp/events/26764 > * main関数(src/groonga.cなど)から順番に主要な処理を辿っ > てみたい(SEゼミで聞いた「アルゼンチン的ソースコードリー > ディング 」のような方式) > * 前回の続き(データインサート時の転置インデックス作成まわ > りの処理)か、まだGroongaを使いこなしていないので、ソース > コードにおける機能の分割単位の把握を行いたいと考えていま > す。 > * インデックス周りの構造について > * selectコマンド発行からの流れ(基本的すぎますかね?) selectコマンドでインデックスを使って検索する処理、を読むこと にしましょうか。 とすると、 > 1, 閲覧する予定のソースコードのファイル名 は * lib/proc.c * lib/expr.c * lib/ii.c あたりで、 > 2, 見ておいた方が良い資料 は、今回は検索するときの処理なので↓がよいかと思います。 http://www.clear-code.com/blog/2011/10/20.html > あと余談ですがOSXを使っている皆さんlddbのフロントエンドは何か使っていらっしゃいますか? > Xcodeでgroongaってデバッグできるのでしょうか? > > * GUI > * https://github.com/meeloo/xspray > * LLDBまでビルドが必要で時間がかかってエラーが出たのでひとまず断念 > * VIM > * https://github.com/gilligan/vim-lldb > * とりあえずインストール、使い方未収得 > * Emacs > * ??? 私はOS Xを使っていないのでわからないのですが、検索したところ、 Xcode 6以降ではLLDBで"gui"コマンドを実行するとGUIモードにな るらしいです。 http://stackoverflow.com/questions/19820247/is-there-a-tui-mode-for-standalone-lldb > To enter the GUI mode, just type gui from the lldb command line when you're debugging. > https://gist.github.com/hiroyuki-sato/b534f88dfa771f96aae7 http://okamuuu.hatenablog.com/entry/2015/04/13/224707 にも(シレッと)書いていますが、configureのとき に--enable-debugオプションを指定したほうがよいです。デバッガー で処理を追いやすくなるのです。(最適化の影響で処理がポンポン 飛んだり、変数が消されたりしない。) GDBだと↓くらい便利になりますが、LLDBでもデフォルトのときよ りデバッグしやすくなります。 http://www.clear-code.com/blog/2013/5/8.html -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> Groongaベースの全文検索システムを総合サポート: http://groonga.org/ja/support/ パッチ採用 - プログラミングが楽しい人向けの採用プロセス: http://www.clear-code.com/recruitment/