Bug #377
grn_table_cursor_openにて、GRN_CURSOR_PREFIXが指定されている場合にも、offset/limitがテーブルのレコード数で正規化される
| Status: | 完了チェック待ち | Start: | 07/02/2010 | |
|---|---|---|---|---|
| Priority: | Low | Due date: | ||
| Assigned to: | % Done: | 0% |
||
| Category: | - | Spent time: | - | |
| Target version: | - |
Description
grn_table_cursor_openの冒頭において、grn_normalize_offset_and_limit()が呼び出される。
grn_normalize_offset_and_limit()の第2引数がgrn_table_size()の呼び出し結果になっている。
GRN_CURSOR_PREFIXが指定された場合には、対象のレコード群のサイズはgrn_table_size()と同じが、より小さい。
offset/limitに負の値が設定され、かつ、レコード群のサイズがgrn_table_size()より小さい場合、
一般に想定される挙動と異なるoffset/limitが設定されることになる。
offsetについては、負の値を指定できないという仕様はどうか。
limitについては、-1を指定することによる全件指定は使いたい。今のGRN_CURSOR_PREFIXの実処理を行う3関数では、
limitがgrn_table_size()より大きくなっても問題がないはず。
limitについては、-1以外の負の数については、やはり指定できないということにするのはどうか。
History
Updated by Tasuku SUENAGA about 1 month ago
- Status changed from 要仕様議論 to 担当者作業中
- Assigned to set to Kouhei Sutou
offsetについては、負の値を指定できない。
limitについては、-1以外の負の数については、やはり指定できない。
- groonga.hでのドキュメント修正
- 実装の修正
Updated by Kouhei Sutou 23 days ago
- Status changed from 担当者作業中 to 完了チェック待ち
13b0f4e672695de220af2921900c2d00f8d2d22a
で、ドキュメント・実装ともに修正しました。