7.3.33. logical_parameters#

7.3.33.1. Summary#

New in version 5.0.6.

logical_parameters is a command for test. Normally, you don’t need to use this command.

logical_parameters provides the following two features:

  • It returns the current parameters for logical_* commands.

  • It sets new parameters for logical_* commands.

Here is a list of parameters:

Note

The parameters are independent in each thread. (To be exact, each grn_ctx.) If you want to control the parameters perfectly, you should reduce the max number of threads to 1 by thread_limit while you’re using the parameters.

7.3.33.2. Syntax#

This command takes only one optional parameter:

logical_parameters [range_index=null]

7.3.33.3. Usage#

You need to register sharding plugin to use this command:

Execution example:

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

You can get the all current parameter values by calling without parameters:

Execution example:

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

You can set new values by calling with parameters:

Execution example:

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

logical_parameters returns the parameter values before new values are set when you set new values.

7.3.33.4. Parameters#

This section describes parameters.

7.3.33.4.1. Required parameters#

There is no required parameter.

7.3.33.4.2. Optional parameters#

There is one optional parameter.

7.3.33.4.2.1. range_index#

Specifies how to use range index in logical_range_filter by keyword.

Here are available keywords:

  • auto (default)

  • always

  • never

If auto is specified, range index is used only when it’ll be efficient. This is the default value.

Execution example:

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

If always is specified, range index is always used. It’ll be useful for testing a case that range index is used.

Execution example:

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

If never is specified, range index is never used. It’ll be useful for testing a case that range index isn’t used.

Execution example:

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

7.3.33.5. Return value#

The command returns the current parameters for logical_* command:

[
  HEADER,
  {"range_index": HOW_TO_USE_RANGE_INDEX}
]

HOW_TO_USE_RANGE_INDEX value is one of the followings:

  • "auto"

  • "always"

  • "never"

See Output format for HEADER.