OceanBase Database has undergone architectural changes and restructuring in V4.x. As a result, many parameters and variables are no longer applicable. V4.x has removed or modified these invalid parameters and variables. For example, the parameter minor_freeze_times used to trigger major freeze has been deleted. Additionally, some default values of parameters have been adjusted. For example, V4.x has resolved the support for large transactions at the underlying level, making transactions no longer affected by freeze operations. Therefore, the default value of freeze_trigger_percentage has been adjusted to 20%.
Changes to parameters in V4.x
Replaced parameters
The following table lists the parameters in V4.x that replace those in V3.x.
Parameters with changed names
The following table lists the parameters whose names have changed in V4.x.
Parameter name (V3.x) |
Parameter name (V4.x) |
Description |
|---|---|---|
| tableapi_transport_compress_func | kv_transport_compress_func |
|
Parameters with changed scopes
OceanBase Database is a multi-tenant architecture, and most users create multiple tenants within the same cluster and manage them based on different business types. To meet the needs of users who want one tenant to represent one business unit, in V4.x, cluster-level capabilities have been split into tenant-level capabilities. For example, tenant-level backup and tenant-level major compactions and major merges.
The following table lists the parameters whose scopes have changed.
Parameter name |
Description |
|---|---|
| backup_data_file_size |
|
| enable_rebalance | Starting from V4.2.0, the scope was changed from cluster level to tenant level. |
| balancer_idle_time | Starting from V4.2.0, the scope was changed from cluster level to tenant level. |
| log_archive_concurrency | Starting from V4.1.0, the scope was changed from cluster level to tenant level. |
| log_restore_concurrency | Starting from V4.1.0, the scope was changed from cluster level to tenant level. |
| major_compact_trigger | Starting from V4.0.0, the scope was changed from cluster level to tenant level. |
| minor_compact_trigger | Starting from V4.0.0, the scope was changed from cluster level to tenant level. |
Parameters with changed effective modes
Parameters are generally divided into two effective modes: dynamic effective and restart effective. Most parameters are dynamic effective, meaning they take effect without the need to restart the OBServer node.
The following table lists the parameters whose effective modes have changed.
Parameter name |
Description |
|---|---|
| net_thread_count | Starting from V4.4.0, the effective mode was changed from restart effective to immediate effective. |
| server_cpu_quota_min |
|
| server_cpu_quota_max |
|
Parameters with changed default values
The following table describes the parameters whose default values have changed.
Parameter |
Description |
|---|---|
| ob_storage_s3_url_encode_type | Starting from V4.4.2 BP1, the default value is changed from default to compliantRfc3986Encoding for V4.4.2. |
| compaction_dag_cnt_limit | Starting from V4.4.0, the default value is changed from 15000 to 50000. |
| kv_group_commit_batch_size | For V4.3.5, the default value is changed from 1 to 10 starting from V4.3.5 BP1. |
| direct_load_allow_fallback | Starting from V4.3.5, the default value is changed from False to True. |
| memstore_limit_percentage |
|
| range_optimizer_max_mem_size |
|
| ls_gc_delay_time |
|
| enable_monotonic_weak_read | Starting from V4.2.1, the default value is changed from true to false. |
| location_refresh_thread_count | Starting from V4.2.0, the default value is changed from 4 to 2. |
| enable_record_trace_id | Starting from V4.2.0, the default value is changed from true to false. |
| plan_cache_evict_interval | Starting from V4.2.0, the default value is changed from 1s to 5s. |
| tenant_task_queue_size | Starting from V4.1.0, the default value is changed from 65536 to 16384. |
| server_cpu_quota_min |
|
| writing_throttling_maximum_duration | Starting from V4.0.0, the default value is changed from 1h to 2h. |
| writing_throttling_trigger_percentage | Starting from V4.0.0, the default value is changed from 100 to 60. |
| freeze_trigger_percentage | Starting from V4.0.0, the default value is changed from 70 to 20. |
Parameters with changed value ranges
The following table lists the parameters whose value ranges have changed.
Parameter |
Description |
|---|---|
| compaction_schedule_tablet_batch_cnt | Starting from V4.4.0, the value range changes from [10000, 200000] to [10000, 500000]. |
| compaction_dag_cnt_limit | Starting from V4.4.0, the value range changes from [10000, 200000] to [10000, 500000]. |
| net_thread_count | Starting from V4.3.5 BP2, the value range changes from [0, 64] to [0, 128]. |
| ob_startup_mode | Starting from V4.3.4, the value range includes SHARED_STORAGE. |
| large_query_threshold |
|
| memstore_limit_percentage |
|
| range_optimizer_max_mem_size |
|
| job_queue_processes |
|
| memory_limit_percentage | Starting from V4.2.1, the value range changes from [10, 90] to [10, 95]. |
| cpu_quota_concurrency | Starting from V4.2.0, the value range changes from [1,10] to [1,20]. |
| memory_limit | Starting from V4.1.0, the value range changes from [4G, +∞) to [1G, +∞). |
| server_cpu_quota_min |
|
Parameters with changed semantics
The following table lists the parameters with changed semantics in V4.x.
Parameter name |
Description |
|---|---|
| datafile_maxsize | Starting from V4.3.4, in Shared-Nothing (SN) mode, the semantics of this parameter remain unchanged; in Shared-Storage (SS) mode, this parameter is no longer applicable. |
| datafile_next | Starting from V4.3.4, in Shared-Nothing (SN) mode, the semantics of this parameter remain unchanged; in Shared-Storage (SS) mode, this parameter is no longer applicable. |
| datafile_disk_percentage | Starting from V4.3.4, in Shared-Nothing (SN) mode, the semantics of this parameter remain unchanged; in Shared-Storage (SS) mode, this parameter is used to set the percentage of local available cache space relative to the total disk space. |
| datafile_size | Starting from V4.3.4, in Shared-Nothing (SN) mode, the semantics of this parameter remain unchanged; in Shared-Storage (SS) mode, this parameter is used to set the size of the local cache space. |
New parameters
The following table lists the new parameters in V4.x.
Parameter |
Introduced in |
Description |
|---|---|---|
| schema_history_archive_expire_time | For V4.4.2, this parameter was introduced in V4.4.2 BP1. | Specifies the retention period of schema multi-version history archive data. |
| zone_disk_balance_tolerance_percentage | For V4.4.2, this parameter was introduced in V4.4.2 BP1. | Controls the tolerance of the table group disk balancing algorithm for disk imbalance between zones. |
| enable_ls_leader_balance |
|
Controls whether to enable automatic leader balancing for log streams. |
| enable_gts_standalone |
|
Specifies whether to enable the tenant GTS service to occupy a group of units. |
| zone_deploy_mode |
|
Sets the distribution mode of the tenant across zones. |
| mds_minor_compact_trigger | V4.4.1 | Controls the number of SSTables that triggers an MDS Minor Compaction. |
| mds_compaction_mid_thread_score | V4.4.1 | Sets the number of DAG (Direct Acyclic Graph) threads for MDS Compaction with medium priority. |
| mds_compaction_high_thread_score | V4.4.1 | Sets the number of DAG (Direct Acyclic Graph) threads for MDS Compaction with high priority. |
| ls_scale_out_factor |
|
The scaling-out factor for log streams, which controls the number of log streams on each service node. |
| external_table_io_hole_size | V4.4.0 | Sets the maximum distance (in bytes) between two consecutive I/O ranges. |
| external_table_io_range_size | V4.4.0 | Sets the maximum size (in bytes) of a merge range. If merging two consecutive ranges would result in a range larger than this size, they will not be merged. |
| async_ps_cursor_max_count | V4.4.0 | Controls the maximum number of asynchronous PS cursors on a single node. |
| ob_enable_java_udf | V4.4.0 | Enables or disables the Java UDF feature. |
| load_data_diagnosis_log_compression | V4.4.0 | Sets the compression algorithm for diagnostic logs. |
| load_data_diagnosis_log_max_size | V4.4.0 | Sets the size of a single diagnostic log file. |
| result_cache_max_size | V4.4.0 | Controls the maximum amount of memory that can be used by the result cache module. |
| result_cache_max_result | V4.4.0 | Controls the maximum proportion of result_cache_max_size that can be used by a single result cache object. |
| ob_result_cache_evict_percentage | V4.4.0 | Sets the memory evict water level for result cache. |
| ob_deterministic_udf_cache_max_size | V4.4.0 | Specifies the maximum amount of memory (in bytes) that can be used by the cache pool for all deterministic UDFs during statement execution. If this value is set to 0, the execution cache feature is disabled. |
| attach_shared_sstable_thread_score | V4.4.0 | Configures the number of threads available for tenants to execute shared data references in shared storage mode. |
| inc_sstable_upload_thread_score | V4.4.0 | Configures the number of threads available for tenants to execute data sharing tasks in shared storage mode. |
| enable_lock_priority | V4.3.5 BP2 | Enables or disables table lock priority. |
| enable_adaptive_plan_cache | V4.3.5 BP2 | Controls whether to enable the adaptive plan cache feature for tenants. |
| global_index_auto_split_policy | V4.3.5 BP2 | Controls whether to enable automatic partitioning for new global indexes.
NoticeStarting from V4.4.1, in the open-source edition, the default value of this parameter is changed to |
| default_storage_cache_policy | V4.3.5 BP2 | Configures the default cache strategy. |
| enable_manual_storage_cache_policy | V4.3.5 BP2 | Enables user-specified hot cache strategies. |
| suspend_storage_cache_task | V4.3.5 BP2 | Specifies whether to suspend background cache tasks. |
| clog_io_isolation_mode | V4.3.5 BP2 | Determines whether to isolate I/O requests on the clog disk based on whether the clog disk and data disk are independent. You can adjust this parameter based on your system deployment to balance performance and resource utilization. |
| default_table_organization | V4.3.5 BP1 | Specifies the default table organization mode for tables. |
| px_node_policy | V4.3.5 BP1 | Specifies the candidate pool for PX computing nodes. |
| ob_enable_java_env | V4.3.5 BP1 | Enables or disables the Java environment required for external table capabilities such as HDFS/MaxCompute (ODPS). |
| ob_java_home | V4.3.5 BP1 | Specifies the Java home path required for JNI operations. This parameter can be configured only when ob_enable_java_env is enabled. |
| ob_java_opts | V4.3.5 BP1 | Specifies the JVM startup parameters, such as memory size and garbage collection algorithm. You must enable the ob_enable_java_env parameter before you specify this parameter. |
| ob_java_connector_path | V4.3.5 BP1 | Specifies the path of the JAR package of the external table connector. You must enable the ob_enable_java_env parameter before you specify this parameter. |
| temporary_file_max_disk_size | V4.3.5 BP1 | Specifies the maximum disk space that can be occupied by a single node of a tenant for temporary files. |
| package_state_sync_max_size | V4.3.5 BP1 | Controls the maximum length of the package variable value in package state synchronization. If the length of the package variable value exceeds the specified value, the package variable is not synchronized. |
| unit_gc_wait_time |
|
Specifies the maximum wait time for Unit GC. If the wait time exceeds the maximum wait time, GC is forcibly performed. |
| recover_table_concurrency |
|
Specifies the maximum number of tables that can be restored in parallel during the cross-tenant table import phase of table-level restore. |
| recover_table_dop |
|
Specifies the maximum degree of parallelism (DOP) for restoring a single table during the cross-tenant table import phase of table-level restore. |
| query_memory_limit_percentage |
|
Specifies the percentage of the tenant memory that can be used by a single SQL statement. |
| replica_parallel_migration_mode |
|
Specifies the mode of the log stream replica parallel migration feature. |
| sts_credential |
|
Specifies the credentials for accessing the STS service provided by OCP. |
| arbitration_degradation_policy | V4.3.4 | Specifies the auto-degradation strategy. |
| kv_hbase_client_scanner_timeout_period | V4.3.4 | Specifies the timeout period for OBKV-HBase streaming queries. |
| default_load_mode | V4.3.4 | Controls whether to use the hint specified by this parameter when no hint is specified for a load operation. |
| direct_load_allow_fallback | V4.3.4 | Controls whether to return an error when the direct load feature is not supported in a load operation. |
| enable_auto_split | V4.3.4 | Specifies whether to enable the automatic partitioning feature for a table.
NoticeStarting from V4.4.1, for clusters created by using the KV template, the default value of this parameter is set to true. |
| auto_split_tablet_size | V4.3.4 | Specifies the threshold for triggering a split after the automatic partitioning feature is enabled for a tenant.
NoticeStarting from V4.4.1, the default value of this parameter is set to 2 GB. |
| sync_io_thread_count | V4.3.4 | Configures the number of threads for synchronous I/O requests. |
| ob_encoding_granularity | V4.3.3 | Controls the upper limit of memory resources available to the vector index module as a percentage. |
| ob_storage_s3_url_encode_type | V4.3.3 | Specifies whether to enable URL encoding for S3 requests that is compatible with the RFC 3986 standard. |
| ob_vector_memory_limit_percentage | V4.3.3 | Configures the threshold for memory resource usage by the vector index module (unit: percentage). |
| storage_rowsets_size | V4.3.2 | Controls the number of rows to vectorize in a batch for the columnar engine. |
| alert_log_level |
|
Sets the level of warning logs. |
| enable_global_background_resource_isolation |
|
Controls whether to enable the global foreground and background resource isolation feature. |
| global_background_cpu_quota |
|
Controls the number of CPU cores for background tasks when global foreground and background resource isolation is enabled. |
| choose_migration_source_policy |
|
Specifies the priority strategy for selecting source replicas during migration. |
| lob_enable_block_cache_threshold |
|
Sets the threshold for LOB query caching in OUTROW storage. |
| spill_compression_codec | V4.3.1 | Specifies the compression algorithm type for data disk-offloading compression during SQL execution. |
| max_partition_num |
|
Controls the maximum number of partitions allowed in MySQL-compatible mode. |
| log_storage_compress_all |
|
Controls whether to enable clog storage compression. |
| syslog_compress_func |
|
Sets the compression algorithm for system logs. |
| syslog_disk_size |
|
Specifies the maximum disk space for system logs. |
| syslog_file_uncompressed_count |
|
Specifies the maximum number of system log files without compression. |
| log_storage_compress_func |
|
Specifies the compression algorithm for clog storage. |
| enable_dblink |
|
Specifies whether to enable the DBLink feature. |
| data_disk_write_limit_percentage |
|
Specifies the percentage of the maximum write limit for the data disk. |
| strict_check_os_params |
|
Specifies whether to enable the OS configuration parameter check feature. |
| default_table_store_format | V4.3.0 | Specifies the default table storage format for user tenants. The supported formats include rowstore, columnstore, and hybrid rowstore/columnstore. |
| enable_rpc_authentication_bypass | V4.3.0 | In an OBServer cluster with RPC security authentication enabled, specifies whether to allow OMS migration services and OBKV services to bypass RPC security authentication and connect to the cluster. |
| sql_protocol_min_tls_version | V4.2.1 | Specifies the minimum SSL/TLS protocol version for SSL connections used to execute SQL statements. |
| compaction_dag_cnt_limit | V4.2.1 | Specifies the maximum number of DAGs in the Compaction DAG queue. |
| compaction_schedule_tablet_batch_cnt | V4.2.1 | Specifies the maximum number of partitions to be scheduled in each batch during Compaction scheduling. |
| enable_transfer | V4.2.1 | Specifies whether to allow Transfer operations within a tenant. |
| ttl_thread_score | V4.2.1 | Specifies the number of threads used for TTL tasks. |
| local_ip | V4.2.0 | The IP address of the server where you deploy the OBServer node. |
| observer_id | V4.2.0 | The unique identifier assigned to the OBServer node by the RS. |
| standby_fetch_log_bandwidth_limit | V4.2.0 | Sets the maximum bandwidth that can be occupied by the total log synchronization traffic from all servers in the standby tenant's cluster to the primary tenant. |
| storage_meta_cache_priority | V4.2.0 | Controls the priority of storing Meta Cache in kvcache. |
| archive_lag_target | V4.2.0 | Controls the time for tenant log archiving delay. |
| log_disk_throttling_maximum_duration | V4.2.0 | Adjusts the maximum available time for the log disk after triggering log throttling. |
| log_disk_throttling_percentage | V4.2.0 | The percentage of unrecoverable log disk space that triggers log write throttling. |
| ls_gc_delay_time | V4.2.0 | Configures the time for tenant log stream delay deletion. |
| partition_balance_schedule_interval | V4.2.0 | Sets the partition balancing scheduling cycle. |
| range_optimizer_max_mem_size | V4.2.0 | Limits the memory used by the Query Range module. |
| standby_db_fetch_log_rpc_timeout | V4.2.0 | Sets the RPC timeout for standby database log fetching, to control the log transmission service to detect when a server in the primary database is unavailable and switch to another server. |
| standby_db_preferred_upstream_log_region | V4.1.0 | Configures the preferred region for upstream log synchronization in physical standby tenant scenarios. |
| log_storage_warning_tolerance_time | V4.1.0 | Sets the time from log disk I/O failure to disk being marked as bad. |
| ob_startup_mode | V4.1.0 | Sets the startup mode for OBServer nodes, which can only be modified during the first startup. |
| sql_net_thread_count | V4.1.0 | Sets the number of MySQL cluster I/O threads, i.e., the number of global_sql_nio_server threads. |
| arbitration_timeout | V4.1.0 | Sets the timeout for triggering automatic downgrade. |
| dump_data_dictionary_to_log_interval | V4.1.0 | Controls the tenant data dictionary persistence cycle. |
| enable_user_defined_rewrite_rules | V4.1.0 | Controls whether to enable user-defined rules. |
| log_transport_compress_all | V4.1.0 | Specifies whether to use compression for log transport. |
| log_transport_compress_func | V4.1.0 | Specifies the compression algorithm for log transmission. |
| rpc_memory_limit_percentage | V4.1.0 | Specifies the maximum percentage of memory allocated to RPC in a tenant. |
| tenant_sql_login_thread_count | V4.1.0 | Specifies the number of threads for MySQL tenant login, i.e., the number of mysql_queue threads. |
| tenant_sql_net_thread_count | V4.1.0 | Specifies the number of IO threads for MySQL tenants, i.e., the number of sql_nio_server threads. |
| log_disk_percentage | V4.0.0 | Specifies the percentage of the total disk space occupied by redo logs. |
| log_disk_size | V4.0.0 | Specifies the size of the redo log disk, i.e., the total available space for logs on this OBServer node. |
| ha_high_thread_score | V4.0.0 | Specifies the current number of working threads for high-priority threads in high availability. |
| ha_low_thread_score | V4.0.0 | Specifies the current number of working threads for low-priority threads in high availability. |
| ha_mid_thread_score | V4.0.0 | Specifies the current number of working threads for medium-priority threads in high availability. |
| query_memory_limit_percentage |
|
Specifies the percentage of tenant memory available for a single SQL statement. |
Deprecated parameters
The following table lists the parameters removed in V4.x.
Parameter Name |
Description |
|---|---|
| schema_history_recycle_interval | Internal optimization. This parameter is removed starting from V4.4.2 BP1. |
| global_write_halt_residual_memory | This parameter is no longer supported. It is removed starting from V4.2.0. |
| max_px_worker_count | This parameter is no longer supported. It is removed starting from V4.2.0. |
| plan_cache_high_watermark | This parameter is not supported. It is removed starting from V4.2.0. |
| plan_cache_low_watermark | This parameter is not supported. It is removed starting from V4.2.0. |
| rootservice_memory_limit | This parameter is removed starting from V4.2.0. |
| system_trace_level | This parameter is no longer applicable. It is removed starting from V4.2.0. |
| token_reserved_percentage | This parameter is no longer applicable. It is removed starting from V4.2.0. |
| trace_log_sampling_interval | This parameter is no longer applicable. It is removed starting from V4.2.0. |
| io_category_config | This parameter is no longer applicable. It is removed starting from V4.2.0. |
| auto_broadcast_location_cache_rate_limit | This parameter is removed starting from V4.0.0. |
| auto_leader_switch_interval | This parameter is removed starting from V4.0.0. |
| auto_refresh_location_cache_rate_limit | This parameter is removed starting from V4.0.0. |
| backup_backup_dest | This parameter is no longer supported. It is removed starting from V4.0.0. |
| backup_backup_dest_option | This parameter is no longer supported. It is removed starting from V4.0.0. |
| backup_dest_option | This parameter is removed starting from V4.0.0. |
| backup_concurrency | The feature has been removed since V4.0.0 due to architecture upgrades. Starting from V4.0.0, the ha_low_thread_score parameter replaces it. |
| backup_dest | The feature has been removed since V4.0.0 due to architecture upgrades. |
| backup_log_archive_option | The feature has been removed since V4.0.0 due to architecture upgrades. |
| backup_net_limit | The feature has been removed since V4.0.0 due to architecture upgrades. |
| backup_recovery_window | The feature has been removed since V4.0.0 due to architecture upgrades. |
| backup_region | The feature has been removed since V4.0.0 due to architecture upgrades. |
| backup_zone | The feature has been removed since V4.0.0 due to architecture upgrades. |
| balance_blacklist_failure_threshold | The feature has been removed since V4.0.0 due to architecture upgrades. |
| balance_blacklist_retry_interval | The feature has been removed since V4.0.0 due to architecture upgrades. |
| balancer_emergency_percentage | The feature has been removed since V4.0.0 due to architecture upgrades. |
| balancer_timeout_check_interval | The feature has been removed since V4.0.0 due to architecture upgrades. |
| clog_disk_utilization_threshold | The feature has been removed since V4.0.0 due to architecture upgrades. Starting from V4.0.0, the log_disk_utilization_threshold parameter replaces it. |
| clog_expire_days | The feature has been removed since V4.0.0 due to architecture upgrades. |
| clog_cache_priority | The feature has been removed since V4.0.0 due to architecture upgrades. |
| clog_disk_usage_limit_percentage | The feature has been removed since V4.0.0 due to architecture upgrades. |
| clog_transport_compress_func | The feature is not supported in V4.0.0. Removed starting from V4.0.0. Starting from V4.1.0, the log_transport_compress_func parameter replaces it. |
| clog_max_unconfirmed_log_count | The feature is no longer supported and has been removed since V4.0.0. |
| clog_persistence_compress_func | The feature is no longer supported and has been removed since V4.0.0. It is supported again since V4.2.1 (excluding V4.3.0) and log_storage_compress_func is provided as a replacement. |
| cpu_reserved | The feature has been removed since V4.0.0 due to architecture upgrades. |
| data_copy_concurrency | The feature has been removed since V4.0.0 due to logical changes. ha_high_thread_score is provided as a replacement. |
| default_transport_compress_func | The feature has been removed since V4.0.0 due to architecture upgrades. |
| election_cpu_quota | The feature has been removed since V4.0.0 due to architecture upgrades. |
| election_blacklist_interval | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_auto_refresh_location_cache | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_auto_leader_switch | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_clog_persistence_compress | The feature is no longer supported and has been removed since V4.0.0. It is supported again since V4.2.1 (excluding V4.3.0) and log_storage_compress_all is provided as a replacement. |
| enable_global_freeze_trigger | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_log_archive | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_election_group | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_merge_by_turn | The feature is no longer supported and has been removed since V4.0.0. |
| enable_manual_merge | The feature is no longer supported and has been removed since V4.0.0. |
| enable_one_phase_commit | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| enable_pg | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_separate_sys_clog | The feature never took effect. Removed starting from V4.0.0. |
| enable_smooth_leader_switch | The feature has been removed since V4.0.0 due to architecture upgrades. |
| enable_rootservice_standalone | The feature has been removed since V4.0.0 due to architecture upgrades. |
| fast_recovery_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the ha_high_thread_score parameter replaces it. |
| flush_log_at_trx_commit | Low usage. Removed starting from V4.0.0. |
| gc_wait_archive | The feature has been removed since V4.0.0 due to architecture upgrades. |
| global_index_build_single_replica_timeout | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| global_major_freeze_residual_memory | Low usage. Removed starting from V4.0.0. |
| get_leader_candidate_rpc_timeout | The feature has been removed since V4.0.0 due to architecture upgrades. |
| ignore_replica_checksum_error | Not recommended for use. Removed starting from V4.0.0. |
| index_clog_cache_priority | The feature has been removed since V4.0.0 due to architecture upgrades. |
| index_info_block_cache_priority | The feature has been removed since V4.0.0 due to architecture upgrades. |
| index_cache_priority | The feature has been removed since V4.0.0 due to architecture upgrades. |
| ilog_index_expire_time | The feature has been removed since V4.0.0 due to architecture upgrades. |
| location_cache_priority | The feature has been removed since V4.0.0 due to architecture upgrades. |
| location_cache_expire_time | The feature has been removed since V4.0.0 due to architecture upgrades. |
| log_archive_batch_buffer_limit | The feature has been removed since V4.0.0 due to architecture upgrades. |
| log_archive_checkpoint_interval | The feature has been removed since V4.0.0 due to architecture upgrades. Starting from V4.0.0, the archive_lag_target parameter replaces it. |
| max_kept_major_version_number | Low usage. Removed starting from V4.0.0. |
| merge_stat_sampling_ratio | The implementation has changed. Removed starting from V4.0.0. |
| merge_thread_count | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the compaction_low_thread_score parameter replaces it. |
| merger_completion_percentage | Low usage. Removed starting from V4.0.0. |
| merger_switch_leader_duration_time | The feature is no longer supported. Removed starting from V4.0.0. |
| merger_warm_up_duration_time | The feature has been removed since V4.0.0 due to architecture upgrades. |
| migrate_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the ha_mid_thread_score parameter replaces it. |
| minor_deferred_gc_time | Not recommended for use. Removed starting from V4.0.0. |
| minor_freeze_times | Has the same meaning as the major_compact_trigger parameter. Removed starting from V4.0.0; use the major_compact_trigger parameter instead. |
| minor_merge_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the compaction_mid_thread_score parameter replaces it. |
| minor_warm_up_duration_time | Not recommended for use. Removed starting from V4.0.0. |
| multiblock_read_gap_size | The feature has been removed since V4.0.0 due to architecture upgrades. |
| multiblock_read_size | The feature has been removed since V4.0.0 due to architecture upgrades. |
| ob_esi_rpc_port | The feature is no longer supported. Removed starting from V4.0.0. |
| enable_ob_esi_process | The feature is no longer supported. Removed starting from V4.0.0. |
| ob_esi_session_timeout | The feature is no longer supported. Removed starting from V4.0.0. |
| ob_esi_io_concurrency | The feature is no longer supported. Removed starting from V4.0.0. |
| ob_esi_memory_limit | The feature is no longer supported. Removed starting from V4.0.0. |
| ob_esi_syslog_level | The feature is no longer supported. Removed starting from V4.0.0. |
| ob_esi_max_syslog_file_count | The feature is no longer supported. Removed starting from V4.0.0. |
| ofs_list | The feature no longer applies. Removed starting from V4.0.0. |
| partition_table_check_interval | The feature has been removed since V4.0.0 due to architecture upgrades. |
| rebuild_replica_data_lag_threshold | The feature has been removed since V4.0.0 due to architecture upgrades. |
| replica_safe_remove_time | The feature has been removed since V4.0.0 due to architecture upgrades. |
| resource_soft_limit | The feature has been removed since V4.0.0 due to architecture upgrades. |
| restore_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the ha_high_thread_score parameter replaces it. |
| row_purge_thread_count | The feature was never supported. Removed starting from V4.0.0. |
| server_data_copy_out_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the ha_mid_thread_score parameter replaces it. |
| server_data_copy_in_concurrency | Implementation logic changed. Removed starting from V4.0.0. Starting from V4.0.0, the ha_mid_thread_score parameter replaces it. |
| sql_audit_memory_limit | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. Starting from V4.0.0, the ob_sql_audit_percentage variable replaces it. |
| switchover_process_thread_count | The feature has been removed since V4.0.0 due to architecture upgrades. |
| sys_bkgd_io_high_percentage | The feature has been removed since V4.0.0 due to architecture upgrades. |
| sys_bkgd_io_low_percentage | The feature has been removed since V4.0.0 due to architecture upgrades. |
| sys_cpu_limit_trigger | The feature has been removed since V4.0.0 due to architecture upgrades. |
| system_cpu_quota | The feature has been removed since V4.0.0 due to architecture upgrades. |
| tenant_groups | The feature is no longer supported. Removed starting from V4.0.0. |
| trx_force_kill_threshold | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| unit_balance_resource_weight | The feature has been removed since V4.0.0 due to architecture upgrades. |
| user_iort_up_percentage | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| user_tab_col_stat_cache_priority | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| wait_leader_batch_count | The feature has been removed since V4.0.0 due to architecture upgrades. |
| zone_merge_concurrency | The feature is no longer supported. Removed starting from V4.0.0. |
| zone_merge_order | The feature is no longer supported. Removed starting from V4.0.0. |
| zone_merge_timeout | The feature is no longer supported. Removed starting from V4.0.0. |
Changes to system variables in V4.x
To better adapt to users' business scenarios, OceanBase Database has optimized and adjusted the default values and value ranges of tenant variables. Specifically, in previous versions, undo_retention was introduced as a system variable. Starting from V4.0.0 in the V4.x series, undo_retention is now a tenant-level parameter.
System variables whose default values have changed
The following table lists the system variables whose default values have changed.
Variable name |
Description |
|---|---|
| ob_default_lob_inrow_threshold |
|
| sql_mode |
|
| optimizer_features_enable |
|
| secure_file_priv | Starting from V4.2.1, the default value changed from NULL to "". |
| max_allowed_packet | Starting from V4.2.1, the default value changed from 4194304 to 16777216. |
| ob_max_read_stale_time | Starting from V4.1.0, the default value changed from 5000000 to -1. |
| ob_trx_idle_timeout | Starting from V4.0.0, the default value changed from 120s to 1d. |
| ob_trx_timeout | Starting from V4.0.0, the default value changed from 100s to 1d. |
System variables whose value ranges or meanings have changed
The following table lists the system variables whose value ranges or meanings have changed.
Variable name |
Description |
|---|---|
| secure_file_priv | Starting from V4.2.0, the meanings of the empty string ("") and NULL values changed from "no restrictions" to "import and export are disabled". |
| ob_max_read_stale_time | Starting from V4.1.0, the value range changed from [0, 9223372036854775807] to [-1, 9223372036854775807]. |
System variables whose permission requirements have changed
The following table lists the system variables whose permission requirements have changed.
Variable name |
Description |
|---|---|
| secure_file_priv | Starting from V4.2.0, you can modify this variable only through a local Unix socket. |
New system variables
The following table lists the new system variables in V4.x.
Variable name |
Introduced in |
Description |
|---|---|---|
| event_scheduler | V4.3.5 BP2 | Determines whether the event scheduler is enabled and running on the server. |
| ob_enable_ps_parameter_anonymous_block | V4.3.5 BP2 | Controls whether to parameterize anonymous blocks and call statements in PS mode during parsing. |
| ob_sparse_drop_ratio_search | V4.3.5 BP2 | Sets the default extra info threshold for HNSW indexes. |
| ob_ivf_nprobes | V4.3.5 BP1 | Sets the number of nearest cluster centers to search during vector index queries. |
| mview_refresh_dop | V4.3.5 BP1 | Controls the default refresh parallelism for materialized views. |
| enable_optimizer_rowgoal | V4.3.5 BP1 | Controls whether the optimizer considers row goals (e.g., LIMIT operators) during cardinality estimation. |
| pid_file |
|
Queries the path of the file where the server writes its process ID. |
| port |
|
Sets the TCP/IP port number for server listening during OBServer node deployment. |
| socket |
|
Queries the name of the local client connection socket file. |
| ob_hnsw_ef_search | V4.3.3 | Sets the number of neighbor nodes considered during HNSW vector index searches. |
| ob_table_access_policy | V4.3.3 | Controls the preferred storage format when the optimizer generates plans for base tables. |
| cardinality_estimation_model |
|
Controls the correlation model used by the optimizer for row estimation. |
| activate_all_roles_on_login |
|
Controls whether to automatically enable all roles upon login. |
| innodb_stats_persistent |
|
Controls whether to persist InnoDB index statistics to disk. |
| ob_compatibility_control |
|
Controls the behavior mode when there are compatibility conflicts between MYSQL5.7 and MYSQL8.0. |
| ob_compatibility_version |
|
Controls the OceanBase Database version compatible with the feature that changes the product behavior. |
| ob_security_version |
|
Specifies the OceanBase Database version compatible with the security features. |
| automatic_sp_privileges |
|
Specifies whether to automatically grant the ALTER and EXECUTE privileges to stored procedures. |
| lc_time_names |
|
Specifies the language for displaying the names and abbreviations of dates and months. |
| ob_enable_pl_cache |
|
Specifies whether to enable the PL cache module. |
| optimizer_dynamic_sampling | V4.2.0 | Specifies the level of dynamic sampling. |
| optimizer_features_enable | V4.2.0 | Enables the optimizer features of different OceanBase Database versions. |
| parallel_degree_limit | V4.2.0 | Specifies the upper limit of the parallelism level selected by the optimizer when the Auto DOP strategy is used. |
| parallel_degree_policy | V4.2.0 | Specifies the parallelism selection strategy. |
| parallel_min_scan_time_threshold | V4.2.0 | Specifies the minimum evaluation execution time for parallel processing of base table scans in the Auto DOP strategy. |
| runtime_filter_type | V4.2.0 | Specifies the Runtime Filter type at the tenant level. |
| runtime_filter_wait_time_ms | V4.2.0 | Specifies the maximum wait time for a Runtime Filter. |
| runtime_filter_max_in_num | V4.2.0 | Specifies the number of distinct values (NDV) for a Runtime In Filter. |
| runtime_bloom_filter_max_size | V4.2.0 | Specifies the maximum memory used by a Runtime Bloom Filter, in bytes. |
| cte_max_recursion_depth | V4.1.0 | Specifies the maximum recursion depth of a common table expression (CTE). The server terminates the execution of any operation exceeding this CTE value. |
| ob_max_read_stale_time | V4.1.0 | Specifies the maximum delay threshold (us) for weakly consistent reads. |
| regexp_stack_limit | V4.1.0 | Specifies the maximum available memory for the internal stack of a regular expression matching operation, in bytes by default. |
| ob_enable_show_trace | V4.1.0 | Specifies whether to use the Show Trace log. |
| cursor_sharing | V4.0.0 | Specifies whether to parameterize the SQL statements. |
| innodb_strict_mode | V4.0.0 | Specifies the SQL syntax checking mode. |
| log_row_value_options | V4.0.0 | Specifies whether to use partial updates for LOB data. |
Deprecated system variables
The following table lists the system variables that are deprecated in V4.x.
Variable name |
Description |
|---|---|
| ob_enable_trace_log | The feature has been removed since V4.1.0 due to architecture upgrades. |
| ob_create_table_strict_mode | The feature has been removed since V4.0.0 due to architecture upgrades. |
| ob_enable_blk_nestedloop_join | Implementation logic changed; the feature no longer applies. Removed starting from V4.0.0. |
| ob_enable_hash_group_by | The implementation has changed. Removed starting from V4.0.0. |
| ob_timestamp_service | The feature has been removed since V4.0.0 due to architecture upgrades. |
