[groonga-dev,00017] Re: テーブルに登録したレコードID一覧を取得したい

Back to archive index

morit****@razil***** morit****@razil*****
2009年 4月 10日 (金) 14:34:26 JST


森です。

GRN_OBJ_COLUMN_INDEXなカラムを追加するテーブルは、
そもそもlexicon専用のテーブルであるはずだ、という前提で考えてました。
lexicon用のテーブルには自動的にレコードが追加されるのも仕様です。

lexicon用のテーブルとその他のテーブルを分離して管理するのは
アプリケーションとして自由に選択可能だと思いますが、
groongaのライブラリ機能としてそれを提供することはないと思います。

また、GRN_OBJ_TABLE_NO_KEYが指定されたテーブルは、
lexiconとして機能しないはずなので、
GRN_OBJ_COLUMN_INDEXなカラムを追加する必要はないはずだ、と考えてます。

よろしくおねがいしますー。

>>> Kouhei Sutou さんは書きました:
> 須藤です。
> 
> 質問なのですが、テーブルに登録したレコードIDの一覧を取得する
> APIはあるでしょうか?
> 
> GRN_OBJ_COLUMN_INDEXなカラムを追加していないときは
> grn_table_cursor_open()でカーソルを開いてグルグルまわすと登
> 録したレコードIDの一覧を集められます。
> 
> しかし、GRN_OBJ_COLUMN_INDEXなカラムを追加していると、自分で
> 登録したつもりのないレコードIDまで集まってしまいます。これは、
> grn_column_create()でテーブル自身をlexiconに使っているからな
> のですが、テーブル自身ではなく、テーブルにlexicon用テーブル
> を1つ持たせてやると問題があるのでしょうか?
> (メモリ使用量は増えると思いますが。。。)
> 
> もし、lexiconを除いたレコードIDの一覧を集められる方法がある
> ならそれを使いたいと思いますが、それが難しい場合はlexicon専
> 用テーブルを作ってテーブル自身とlexiconを分離してもらえない
> でしょうか?
> 
> もし、lexicon専用テーブルをテーブルに持たせてもOKだけど、今は
> 手が空いていない、ということであればパッチを作るのでlexicon
> 専用テーブル追加の可否についてだけでも教えてもらえると嬉しい
> です。
> 
> # lexicon専用テーブルを作ると、テーブルが
> # GRN_OBJ_TABLE_NO_KEYのときでもGRN_OBJ_COLUMN_INDEXなカラム
> # が使えるようになるかも。
> 
> --
> 須藤 功平 <kou****@clear*****>
> 
> 株式会社クリアコード (http://www.clear-code.com/)
> 
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev
> 
--
morita




groonga-dev メーリングリストの案内
Back to archive index