PolarDB-X uses an architecture in which storage is decoupled from computing. The following table describes common compute node parameters. You can configure some compute node parameters in the PolarDB-X console.
Parameter | Restarted | Default value | Valid value | Description |
---|---|---|---|---|
PLAN_CACHE | No | TRUE | [TURE|FALSE] | Specifies whether to enable the plan cache. |
ENABLE_RECYCLEBIN | No | FALSE | [TURE|FALSE] | Specifies whether to enable the recycle bin feature. |
SHOW_TABLES_CACHE | No | FALSE | [TURE|FALSE] | Specifies whether to cache the results returned by SHOW TABLES statements. |
MERGE_CONCURRENT | No | FALSE | [TURE|FALSE] | Specifies whether to enable the massively parallel processing (MPP) mode. The value of this parameter has an impact on the degree of parallelism (DOP) of all simple queries that are pushed down and DDL statements. |
MERGE_UNION | No | FALSE | [TURE|FALSE] | Specifies whether to use UNION operators to optimize physical SQL statements and whether to serially execute the physical SQL statements that are pushed down. If this parameter is set to TRUE, UNION operators are not used to optimize physical SQL statements and physical SQL statements that are pushed down are serially executed. Default value: FALSE. |
MERGE_UNION_SIZE | No | -1 | [0-10000] | The number of physical SQL statements merged by using the UNION operator. By default, the number of physical SQL statements is automatically calculated based on the number of available connections in the connection pool. |
TABLE_META_CACHE_EXPIRE_TIME | No | 300 | [0-180000] | The time when metadata expires. |
COLUMN_LABEL_INSENSITIVE | No | TRUE | [FALSE|TRUE] | Specifies whether returned columns are case-sensitive. |
RECORD_SQL | No | TRUE | [FALSE|TRUE] | Specifies whether to enable the log audit feature. |
SOCKET_TIMEOUT | No | 900000 | [0~3600000] | The time-out period of physical SQL statements. |
TRANSACTION_POLICY | No | TSO | [XA|TSO|TSO_READONLY] | The transaction policy. |
SHARE_READ_VIEW | No | FALSE | [TRUE|FALSE] | Specifies whether to share the read view. |
ENABLE_TRX_SINGLE_SHARD_OPTIMIZATION | No | TRUE | [TRUE|FALSE] | Specifies whether to optimize a single shard for the transaction. |
GET_TSO_TIMEOUT | No | 10 | [1-1800] | Specifies whether to query the timeout period of the Timestamp Oracle (TSO) timestamp. |
MAX_TRX_DURATION | No | 28800 | [1-180000] | The timeout period of the transaction that is not committed. |
TRANSACTION_ISOLATION | No | REPEATABLE_READ | [READ_UNCOMMITTED|READ_COMMITTED|REPEATABLE_READ|SERIALIZABLE] | The transaction isolation level. |
GROUP_CONCURRENT_BLOCK | No | TRUE | [TRUE|FALSE] | Specifies whether to use the execution policy at the database shard level when the mode is not the MPP mode. |
SEQUENTIAL_CONCURRENT_POLICY | No | FALSE | [TRUE|FALSE] | Specifies whether to use the execution policy for a single instance that processes concurrent requests when the mode is not the MPP mode. |
DML_SKIP_DUPLICATE_CHECK_FOR_PK | No | TRUE | [TRUE|FALSE] | Specifies whether to skip the check on primary key conflicts when DML statements are executed. |
DML_SKIP_CRUCIAL_ERR_CHECK | No | FALSE | [TRUE|FALSE] | Specifies whether transactions for which DML statement errors are reported can be committed when DML statements are executed. |
DML_USE_RETURNING | No | TRUE | [TRUE|FALSE] | Specifies whether to use returning clauses to optimize DML statements. |
BROADCAST_DML | No | FALSE | [TRUE|FALSE] | Specifies whether data can be written to broadcast tables on the node where the broadcast tables are stored. |
SEQUENCE_STEP | No | 10000 | [1-10000000] | The SEQUENCE step size. Default value: 100,000. |
MERGE_DDL_TIMEOUT | No | 0 | [1-10000000] | The timeout period of the physical DDL connection. Default value: 0. The default value indicates that the connection does not time out. |
MERGE_DDL_CONCURRENT | No | FALSE | [FALSE|TRUE] | Specifies whether to use the MPP mode for DDL statements. By default, DDL statements are concurrently executed at the database level. |
SLOW_SQL_TIME | No | 1000 | [1-180000] | The threshold value for slow SQL queries. |
LOAD_DATA_BATCH_INSERT_SIZE | No | 1024 | [1-180000] | The number of records that the LOAD DATA statement inserts at a time. |
LOAD_DATA_CACHE_BUFFER_SIZE | No | 60 | [1-180000] | The size of the cache where data about LOAD DATA statements is stored. Default value: 60. Unit: MB. In most cases, this parameter is used for throttling. |
MAX_ALLOWED_PACKET | No | 16777216 | [4194304-33554432] | The size of the maximum packet. |
KILL_CLOSE_STREAM | No | FALSE | [FALSE|TRUE] | Specifies whether to disable the connections between compute nodes and data nodes when the number of queried records reaches the upper limit. |
ALLOW_SIMPLE_SEQUENCE | No | FALSE | [FALSE|TRUE] | Specifies whether to use simple sequences. |
MAX_PARAMETERIZED_SQL_LOG_LENGTH | No | 5000 | [1-1000000] | The maximum size of the log generated for parameterized SQL statements. |
FORBID_EXECUTE_DML_ALL | No | TRUE | [TRUE|FALSE] | Specifies whether to disable updates or deletions for full tables. |
GROUP_SEQ_CHECK_INTERVAL | Yes | 60 | [1-36000] | The interval at which inserted explicit values are checked. Unit: seconds. |
JOIN_BLOCK_SIZE | Yes | 300 | [1-100000] | The number of values returned by the IN operator when the Batched Key Access (BKA) join algorithm is used and IN values are not dynamically pruned. |
LOOKUP_JOIN_MAX_BATCH_SIZE | Yes | 6400 | [1-100000] | The maximum number of values returned by the IN operator when the BKA join algorithm is used. |
LOOKUP_JOIN_MIN_BATCH_SIZE | Yes | 100 | [1-100000] | The minimum number of values returned by the IN operator when the BKA join algorithm is used. |
PURGE_TRANS_INTERVAL | Yes | 300 | [1-180000] | The interval at which transaction logs are cleared. |
PURGE_TRANS_BEFORE | Yes | 1800 | [1-180000] | The time period before which transaction logs are cleared. |
ENABLE_BACKGROUND_STATISTIC_COLLECTION | No | TRUE | [TRUE|FALSE] | Specifies whether statistics can be collected. |
GENERAL_DYNAMIC_SPEED_LIMITATION | No | -1 | [-1-10000000] | Specifies whether to limit the speed at which data is backfilled and verified. The default value -1 indicates that the speed is limited. |
PARALLELISM | No | -1 | [1-1024] | The DOP of the symmetric multiprocessing (SMP) mode. The value is calculated based on specifications. |
LOGICAL_DB_TIME_ZONE | No | SYSTEM | [SYSTEM|±HH:mm] | The time zone of the database. |
MPP_PARALLELISM | No | -1 | [1-1024] | The DOP of the MPP mode. The value is calculated based on database specifications. |
DATABASE_PARALLELISM | No | 0 | [0-1024] | The number of SQL statements that are executed at the same time for a single query on a data node. |
POLARDBX_PARALLELISM | No | 0 | [0-1024] | The maximum DOP for a single query on a compute node. The default value is the number of CPU cores. |
MPP_METRIC_LEVEL | No | 3 | [0|1|2|3] | The level of collected statistics in the process of computing data. A higher level indicates the higher granularity of collected statistics. |
ENABLE_COMPLEX_DML_CROSS_DB | No | TRUE | [TRUE|FALSE] | Specifies whether complex DML statements can be executed across databases. |
PER_QUERY_MEMORY_LIMIT | Yes | -1 | [-1-9223372036854775807] | The maximum size of the memory pool for queries. By default, the maximum size of the memory pool for queries is one third the size of the global connection pool. |
ENABLE_SPILL | No | FALSE | [FALSE|TRUE] | Specifies whether to flush temporary tables to the disk. |
CONN_POOL_MIN_POOL_SIZE | No | 20 | [0-10] | The minimum number of connections to physical database shards. |
CONN_POOL_MAX_POOL_SIZE | No | 60 | [1-1600] | The maximum number of connections to physical database shards. |
CONN_POOL_MAX_WAIT_THREAD_COUNT | No | 0 | [-1-8192] | The maximum number of pending connections to a single database shard (Apach Druid) |
CONN_POOL_IDLE_TIMEOUT | No | 30 | [1-60] | The timeout period of physical idle connections. |
CONN_POOL_BLOCK_TIMEOUT | No | 5000 | [1000-60000] | The maximum period of time that is required to obtain a connection from the physical connection pool. |
CONN_POOL_XPROTO_MAX_POOLED_SESSION_PER_INST | No | 512 | [1-8192] | The maximum number of cached sessions on a single storage node. The cached sessions are transmitted over proprietary protocols. |
XPROTO_MAX_DN_CONCURRENT | No | 500 | [1-8192] | The maximum number of concurrent requests on a single storage node. The requests are transmitted over proprietary protocols. |
XPROTO_MAX_DN_WAIT_CONNECTION | No | 32 | [1-8192] | The maximum number of pending requests on a single storage node. The requests are transmitted over private protocols. |
MERGE_SORT_BUFFER_SIZE | No | 2048 | [1024-81920] | The cache size that is used to merge and sort data at the TableScan layer. Default value: 2 MB. |
WORKLOAD_TYPE | No | [AP|TP] | Specifies the type of the query workload. By default, the workload type is intelligently identified based on costs. | |
EXECUTOR_MODE | No | [MPP|TP_LOCAL|AP_LOCAL] | Specifies the mode in which queries are run. By default, the mode is selected based on the query workload type. | |
ENABLE_MASTER_MPP | No | FALSE | [TRUE|FALSE] | Specifies whether to enable the MPP mode on the primary instance. |
LOOKUP_JOIN_BLOCK_SIZE_PER_SHARD | Yes | 50 | [1-100000] | The number of values returned by the IN operator on a single shard when the BKA join algorithm is used and IN values is pruned. |
ENABLE_RUNTIME_FILTER | No | TRUE | [TRUE|FALSE] | Specifies whether to enable the runtime filter. |
FEEDBACK_WORKLOAD_AP_THRESHOLD | No | FALSE | [TRUE|FALSE] | Specifies whether to enable the HTAP FEEDBACK feature for analytical processing (AP) queries. |
FEEDBACK_WORKLOAD_TP_THRESHOLD | No | FALSE | [TRUE|FALSE] | Specifies whether to enable the HTAP FEEDBACK feature for transaction processing (TP) queries. |
MASTER_READ_WEIGHT | No | -1 | [0-100] | The weight of rule-based read/write splitting. |
SHOW_ALL_PARAMS | No | FALSE | [TRUE|FALSE] | Specifies whether to display all parameters. |
ENABLE_SET_GLOBAL | No | FALSE | [TRUE|FALSE] | Specifies whether to enable SET GLOBAL statements. |
FORCE_READ_OUTSIDE_TX | No | FALSE | [TRUE|FALSE] | Specifies whether to forcibly enable multiple connections on a database shard in a transaction. |
ENABLE_COROUTINE | Yes | FALSE | [TRUE|FALSE] | Specifies whether to enable Wisp coroutine. |
TRUNCATE_TABLE_WITH_GSI | No | FALSE | [TRUE|FALSE] | Specifies whether TRUNCATE statements can contain global secondary index (GSI) tables. |
DDL_ON_GSI | No | FALSE | [TRUE|FALSE] | Specifies whether DDL statements can be executed on GSI tables. |
DML_ON_GSI | No | FALSE | [TRUE|FALSE] | Specifies whether DML statements can be executed on GSI tables. |
ENABLE_HASH_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether hash join nodes can be generated when execution plans are optimized. |
ENABLE_BKA_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether BKA join nodes can be generated when execution plans are optimized. |
ENABLE_NL_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether nested loop join nodes can be generated when execution plans are optimized. |
ENABLE_SEMI_NL_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be converted to nested loop joins when execution plans are optimized. |
ENABLE_SEMI_HASH_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be converted to hash joins when execution plans are optimized. |
ENABLE_SEMI_BKA_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be converted to BKA joins when execution plans are optimized. |
ENABLE_SEMI_SORT_MERGE_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be converted to merge joins when execution plans are optimized. |
ENABLE_MATERIALIZED_SEMI_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be converted to materialized view joins when execution plans are optimized. |
ENABLE_SEMI_JOIN_REORDER | No | TRUE | [TRUE|FALSE] | Specifies whether semi joins can be used for Cost-Based Optimization (CBO) recorder optimization when execution plans are optimized. |
ENABLE_HASH_AGG | No | TRUE | [TRUE|FALSE] | Specifies whether HashAgg nodes can be generated when execution plans are optimized. |
ENABLE_PARTIAL_AGG | No | TRUE | [TRUE|FALSE] | Specifies whether the aggregate function can be called in two phases when execution plans are optimized. |
ENABLE_SORT_AGG | No | TRUE | [TRUE|FALSE] | Specifies whether SortAgg nodes can be generated when execution plans are optimized. |
ENABLE_PUSH_PROJECT | No | TRUE | [TRUE|FALSE] | Specifies whether projection pushdown is allowed when execution plans are optimized. |
ENABLE_PUSH_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether a join operation can be pushed down when execution plans are optimized. |
ENABLE_PUSH_AGG | No | TRUE | [TRUE|FALSE] | Specifies whether an aggregate operation can be pushed down when execution plans are optimized. |
ENABLE_CBO_PUSH_AGG | No | TRUE | [TRUE|FALSE] | Specifies whether aggregate functions can pass though join operations when execution plans are optimized. |
ENABLE_PUSH_SORT | No | TRUE | [TRUE|FALSE] | Specifies whether a sort operation can be pushed down when execution plans are optimized. |
ENABLE_STATISTIC_FEEDBACK | No | TRUE | [TRUE|FALSE] | Specifies whether corrected feedback for statistical information can be collected. |
ENABLE_CBO_PUSH_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether a pass-through query that is used to perform join operations can be optimized when execution plans are optimized. |
ENABLE_SORT_JOIN_TRANSPOSE | No | TRUE | [TRUE|FALSE] | Specifies whether SORT functions can be included in pass-through queries that are used to perform join operations when execution plans are optimized. |
CHUNK_SIZE | No | 1024 | [1-10240] | The size of data that the executor computes each time. |
ENABLE_SORT_MERGE_JOIN | No | TRUE | [TRUE|FALSE] | Specifies whether to prevent merge join nodes from being generated when execution plans are optimized. |
ENABLE_BKA_PRUNING | No | TRUE | [TRUE|FALSE] | Specifies whether to enable the pruning feature of BKA joins. |
ENABLE_SPM | No | TRUE | [TRUE|FALSE] | Specifies whether to manage execution plans. |
ENABLE_EXPRESSION_VECTORIZATION | No | TRUE | [TRUE|FALSE] | Specifies whether to enable vectorization for expressions. |
FORCE_DDL_ON_LEGACY_ENGINE | No | TRUE | [TRUE|FALSE] | Specifies whether to enable the new DDL engine. |
PURE_ASYNC_DDL_MODE | No | FALSE | [TRUE|FALSE] | Specifies whether to execute DDL statements in asynchronous mode. If this parameter is set to TRUE, the client returns a response when a DDL request is received. You can execute the show [full] ddl statement to view the status of the DDL statement. |
DDL_JOB_REQUEST_TIMEOUT | No | 90000 | [1-9223372036854775807] | The threshold value for the maximum duration in which the DDL statement can be executed. When the threshold value is exceeded, the DDL statement fails. Default value: 25. Unit: days. |
LOGICAL_DDL_PARALLELISM | No | 1 | [1-10240] | The DOP of logical DDL statements. If this parameter is set to 1, the DDL job is serially executed. |
ENABLE_BROADCAST_RANDOM_READ | No | TRUE | [TRUE|FALSE] | Specifies whether to enable random read optimization for broadcast tables. |