7.3.34. logical_parameters#

7.3.34.1. 概要#

Added in version 5.0.6.

logical_parameters はテスト用のコマンドです。通常はこのコマンドを使う必要はありません。

logical_parameters は次の2つの機能を提供します。

  • logical_* コマンドが使うパラメーターの現在値を返します。

  • logical_* コマンドが使うパラメーターを新しく設定します。

以下はパラメーターのリストです。

注釈

これらのパラメーターの値は各スレッドごとで独立しています。(正確に言うと、 grn_ctx 毎に独立しています。)これらのパラメーターを完全に制御したい場合は、これらのパラメーターを使っている間は thread_limit を使って最大スレッド数を 1 にしてください。

7.3.34.2. 構文#

このコマンドの引数は1つで省略できます:

logical_parameters [range_index=null]

7.3.34.3. 使い方#

このコマンドを使うには事前に sharding プラグインを登録します。

実行例:

plugin_register sharding
# [[0,1337566253.89858,0.000355720520019531],true]

引数無しで呼び出すとすべてのパラメーターの現在の値を返します。

実行例:

logical_parameters
# [[0,1337566253.89858,0.000355720520019531],{"range_index":"auto"}]

引数を指定して呼び出すと新しい値を設定できます。

実行例:

logical_parameters --range_index never
# [[0,1337566253.89858,0.000355720520019531],{"range_index":"auto"}]

logical_parameters は、新しい値を設定するときは、新しい値を設定する前の値を返します。

7.3.34.4. 引数#

このセクションでは引数について説明します。

7.3.34.4.1. 必須引数#

必須の引数はありません。

7.3.34.4.2. 省略可能引数#

省略可能な引数が1つあります。

7.3.34.4.2.1. range_index#

logical_range_filter でどのように範囲インデックスを使うかをキーワードで指定します。

指定できるキーワードは以下の通りです。

  • auto (デフォルト)

  • always

  • never

auto を指定すると、効果がでそうなときだけ範囲インデックスを使います。これがデフォルトの値です。

実行例:

logical_parameters --range_index auto
# [[0,1337566253.89858,0.000355720520019531],{"range_index":"auto"}]

always を指定すると、常に範囲インデックスを使います。範囲インデックスが使われるケースをテストするときに便利です。

実行例:

logical_parameters --range_index always
# [[0,1337566253.89858,0.000355720520019531],{"range_index":"auto"}]

never を指定すると、範囲インデックスは使いません。範囲インデックスが使われないケースをテストするときに便利です。

実行例:

logical_parameters --range_index never
# [[0,1337566253.89858,0.000355720520019531],{"range_index":"auto"}]

7.3.34.5. 戻り値#

このコマンドは logical_* コマンドが使うパラメーターの現在値を返します:

[
  HEADER,
  {"range_index": HOW_TO_USE_RANGE_INDEX}
]

HOW_TO_USE_RANGE_INDEX の値は次のどれかです。

  • "auto"

  • "always"

  • "never"

HEADER については 出力形式 を参照してください。