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.