Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.2.1 |  CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 |  CUBRID 9.0.0 | 

Other Parameters

The following are other parameters. The type and value range for each parameter are as follows:

Parameter Name

Type

Default Value

Min

Max

service

string

 

 

 

server

string

 

 

 

index_scan_in_oid_order

bool

no

 

 

single_byte_compare

bool

no

 

 

insert_execution_mode

int

1

1

7

java_stored_procedure

bool

no

 

 

pthread_scope_process

bool

yes

 

 

auto_restart_server

bool

yes

 

 

index_unfill_factor

float

0.05

0

0.5

use_orderby_sort_limit

bool

yes

 

 

session_state_timeout

int

21600
(6 hours)

60
(1 min.)

31536000
(1 year)

multi_range_optimization_limit

int

100

0

100

access_ip_control

bool

no

 

 

access_ip_control_file

string

 

 

 

service

service is a parameter that registers a process that starts automatically when the CUBRID service starts. There are four types of processes: server, broker, manager, and heartbeat. Three processes are usually registered as in service=server,broker,manager.

  • If the parameter is configured to server, the database process specified by the @server parameter gets started.
  • If the parameter is configured to broker, the Broker process gets started.
  • If the parameter is configured to manager, the manager process gets started.
  • If the parameter is configured to heartbeat, the HA-related process gets started.
server

server is a parameter that registers a Database Server process that starts automatically when the CUBRID service starts.

index_scan_in_oid_order

index_scan_in_oid_order is a parameter that configures the result data to be retrieved in OID order after the index scan. If the parameter is configured to no, which is the default value, results are retrieved in data order; if it is configured to yes, they are retrieved in OID order.

single_byte_compare

single_byte_compare is a parameter that determines whether or not to compare strings in single byte units. If the parameter is configured to no, which is the default value, strings are compared in two byte units; if it is configured to yes, they are compared in single byte units. That is, you can retrieve/compare strings on data stored as UTF-8.

insert_execution_mode

insert_execution_mode has execution modes ranging from 1 to 7. Queries are usually executed on the server according to the query plan created by the client, but this parameter is used to directly insert queries on the server side. A selected execution mode is executed directly on the server, and other execution modes are executed on the client. This parameter can be used to perform an INSERT operation to the server in an environment in which dirty reading of INSERTed data is required, or in which the memory capacity of the client is limited.

The following are three types of INSERT statements for execution modes. This parameter can be set through a combination of integer values corresponding to each execution mode.

  • INSERT_SELECT : When using the SELECT statement in the INSERT statement.
  • INSERT INTO code2(s_name, f_name) SELECT s_name, f_name from code;
  • INSERT_VALUES : The common INSERT statement.
  • INSERT INTO code2(s_name, f_name) VALUES ('S', 'Silver');
  • INSERT_DEFAULT : When inserting the default value because a column with the default value is omitted in the INSERT statement.
  • CREATE TABLE code2(s_name char(1) DEFAULT '_', f_name varchar(40));

    INSERT INTO code2(f_name) DEFAULT VALUES;

  • INSERT_REPLACE : For example, when the REPLACE statement is executed, the corresponding integer value is 8.
  • CREATE TABLE code2(s_name char(1) NOT NULL UNIQUE, f_name varchar(40));
  • REPLACE INTO code2 VALUES ('S', 'Silver');
  • INSERT_ON_DUP_KEY_UPDATE : In addition, when the ON DUPLICATE KEY UPDATE clause is specified in the INSERT statement, the corresponding integer value is 16.
  • CREATE TABLE code2(s_name char(1) NOT NULL UNIQUE, f_name varchar(40));
  • INSERT INTO code2 VALUES ('S', 'Silver') ON DUPLICATE KEY UPDATE f_name='Silver';

The sum of the execution mode values above is the execution mode to be configured.

  • Example 1 : If you want to execute INSERT_SELECT and INSERT_VALUES on the server, the insert_execution_mode is 3. (1 + 2 = 3)
  • Example 2 : If you want to execute INSERT_SELECT, INSERT_DEFAULT, INSERT_REPLACE, an INSERT_ON_DUP_KEY_UPDATE on the server, the insert_execution_mode is 29(1+4+8+16=29).
java_stored_procedure

java_stored_procedure is a parameter that determines whether or not to use Java stored procedures by running the Java Virtual Machine (JVM). If the parameter is configured to no, which is the default value, JVM is not executed; if it is configured to yes, JVM is executed so you can use Java stored procedures. Therefore, configure the parameter to yes if you plan to use Java stored procedures.

pthread_scope_process

pthread_scope_process is a parameter that configures the contention scope of threads. It only applies to AIX systems. If the parameter is configured to no, the contention scope becomes PTHREAD_SCOPE_SYSTEM; if it is configured to yes, it becomes PTHREAD_SCOPE_PROCESS. The default value is yes.

auto_restart_server

auto_restart_server is a parameter that specifies whether or not to restart the process when it stops due to a fatal error in the Database Server process. If auto_restart_server is configured to yes, the server process restarts automatically when it stopped due to abnormal causes other than the normal stop process (STOP command of the CUBRID Server).

index_unfill_factor

If there is no free space because index pages are full when the INSERT or UPDATE operation is executed after the first index is created, the split of index page nodes occurs. This substantially affects the performance by increasing the operation time. index_unfill_factor is a parameter that specifies the percent of free space defined for each index page node when an index is created. The index_unfill_factor value is applied only when an index is created for the first time. The percent of free space defined for the page is not maintained dynamically. Its value ranges between 0 and 0.35. The default value is 0.05.

If an index is created without any free space for the index page node (index_unfill_factor=0), the split of index page nodes occurs every time an additional insertion is made. This may degrade the performance.

If the value of index_unfill_factor is large, a large amount of free space is available when an index is created. Therefore, better performance can be obtained because the split of index nodes does not occur for a relatively long period of time until the free space for the nodes is filled after the first index is created.

If this value is small, the amount of free space for the nodes is small when an index is created. Therefore, it is likely that the index nodes are splitted by INSERT or UPDATE because the free space for the index nodes is filled in a short period of time.

use_orderby_sort_limit

The use_orderby_sort_limit parameter is used to determine whether or not to keep the intermediate result of sorting and merging process in the statement including the ORDER BY … LIMIT row_count clause as many as row_count. If it is set to yes, you can decrease unnecessary comparing and merging processes because as many as intermediate results will be kept as the value of row_count. The default value is yes.

session_state_timeout

The session_state_timeout parameter is used to define how long the CUBRID session data will be kept. The session data will be deleted when the driver terminates the connection or the session time is expired. The session time will expire if a client does not have any requests until the time specified by session_state_timeout.

The default value is 21600 seconds (6 hours).

The following are CUBRID seesion data.

  • Custom variables defined by SET.
  • PREPARE statements.
  • LAST_INSERT_ID
  • Number of records affected by the last executed statement(ROW_COUNT)

Custom variables defined by SET and PREPARE statements can be deleted by DROP/DEALLOCATE statements before session timeout.

multi_range_optimization_limit

If the number of rows specified by the LIMIT clause in the query, which has multiple ranges (col IN (?, ?, …,?)) and is available to use an index, is within the number specified by the multi_range_optimization_limit parameter, the optimization for the way of index sorting will be performed. The default value is 100.

For example, if a value for this parameter is set to 50, LIMIT 10 means that it is within the value specified by this parameter, so that the values that meet the conditions will be sorted to produce the result. If LIMIT is 60, it means that it exceeds the parameter configuration value, so that it gets and sorts out all values that meet the conditions.

Depending on the setting value, the differences are made between collecting the result with on-the-fly sorting of the intermediate values and sorting the result values after collecting them, and the bigger value could make more unfavorable performance.

access_ip_control

The access_ip_control parameter is used to limit the IP addresses available to access servers. The default value is no. For more information, see Database Server Access Limitation.

access_ip_control_file

The access_ip_control_file parameter is used to specify a file name in which the list of IPs allowed by servers is stored, if a value for access_ip_control is set to yes. For more information, see Database Server Access Limitation.