7.25.19. grn_obj
#
7.25.19.1. 概要#
TODO...
7.25.19.2. 例#
TODO...
7.25.19.3. リファレンス#
注釈
現在、Doxygenを使った自動生成に切り替え中です。
-
type grn_obj#
TODO...
-
int grn_obj_name(grn_ctx *ctx, grn_obj *obj, char *namebuf, int buf_size)#
objの名前の長さを返します。無名objectなら0を返します。
名前付きのobjectであり、buf_sizeの長さが名前の長以上であった場合は、namebufに該当する名前をコピーします。
- パラメータ:
obj -- 対象objectを指定します。
namebuf -- 名前を格納するバッファ(呼出側で準備する)を指定します。
buf_size -- namebufのサイズ(byte長)を指定します。
-
grn_id grn_obj_get_range(grn_ctx *ctx, grn_obj *obj)#
objパラメータのとる値の範囲を表わしているオブジェクトのIDを返します。例えば、
grn_builtin_type
にあるGRN_DB_INT
などを返します。- パラメータ:
obj -- 対象objectを指定します。
-
int grn_obj_expire(grn_ctx *ctx, grn_obj *obj, int threshold)#
objの占有するメモリのうち、可能な領域をthresholdを指標として解放します。
- パラメータ:
obj -- 対象objectを指定します。
-
int grn_obj_check(grn_ctx *ctx, grn_obj *obj)#
objに対応するファイルの整合性を検査します。
- パラメータ:
obj -- 対象objectを指定します。
-
grn_rc grn_obj_lock(grn_ctx *ctx, grn_obj *obj, grn_id id, int timeout)#
objをlockします。timeout(秒)経過してもlockを取得できない場合は
GRN_RESOURCE_DEADLOCK_AVOIDED
を返します。- パラメータ:
obj -- 対象objectを指定します。
-
grn_rc grn_obj_unlock(grn_ctx *ctx, grn_obj *obj, grn_id id)#
objをunlockします。
- パラメータ:
obj -- 対象objectを指定します。
-
grn_rc grn_obj_clear_lock(grn_ctx *ctx, grn_obj *obj)#
強制的にロックをクリアします。
- パラメータ:
obj -- 対象objectを指定します。
-
unsigned int grn_obj_is_locked(grn_ctx *ctx, grn_obj *obj)#
objが現在lockされていれば0以外の値を返します。
- パラメータ:
obj -- 対象objectを指定します。
-
int grn_obj_defrag(grn_ctx *ctx, grn_obj *obj, int threshold)#
objの占有するDBファイル領域のうち、可能な領域をthresholdを指標としてフラグメントの解消を行います。
フラグメント解消が実行されたセグメントの数を返します。
- パラメータ:
obj -- 対象objectを指定します。
-
grn_rc grn_obj_delete_by_id(grn_ctx *ctx, grn_obj *db, grn_id id, grn_bool removep)#
dbからidに対応するテーブルやカラムなどを削除します。mroonga向けに用意した内部APIです。
- パラメータ:
db -- The target database.
id -- The object (table, column and so on) ID to be deleted.
removep -- If
GRN_TRUE
, clear object cache and remove relation between ID and key in database. Otherwise, just clear object cache.
-
grn_rc grn_obj_path_by_id(grn_ctx *ctx, grn_obj *db, grn_id id, char *buffer)#
dbのidに対応するpathを返します。mroonga向けに用意した内部APIです。
- パラメータ:
db -- The target database.
id -- The object (table, column and so on) ID to be deleted.
buffer -- path string corresponding to the id will be set in this buffer.
-
grn_rc grn_obj_cast_by_id(grn_ctx *ctx, grn_obj *source, grn_obj *destination, grn_bool add_record_if_not_exist)#
It casts value of
source
to value with type ofdestination
. Casted value is appended todestination
.Both
source
anddestination
must be bulk.If
destination
is a reference type bulk. (Reference type bulk means that type ofdestination
is a table.)add_record_if_not_exist
is used. Ifsource
value doesn't exist in the table that is a type ofdestination
. Thesource
value is added to the table.- パラメータ:
ctx -- その時点のコンテキスト。
source -- The bulk to be casted.
destination -- The bulk to specify cast target type and store casted value.
add_record_if_not_exist -- Whether adding a new record if
source
value doesn't exist in cast target table. This parameter is only used whendestination
is a reference type bulk.
- 戻り値:
成功時は
GRN_SUCCESS
、エラー時はGRN_SUCCESS
以外。