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

replication

bool

no

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.20

0

0.35

service

service is a parameter that registers a process that starts automatically when the CUBRID service starts. There are three types of processes: server, broker and manager. All 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.

server

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

replication

replication is a parameter that activates the database replication feature. If the parameter is configured to no, which is the default value, the replication feature is deactivated; if it is configured to yes, the replication feature is activated. When the replication feature is activated, the given database acts as a replication master server that creates replication logs.

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.

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.20.

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.