This topic mainly introduces the update records for parameters, system variables, views, functions, syntax, and data types in OceanBase Database V4.3.5 BP versions. For more information about feature changes, see OceanBase Database V4.3.5.
V4.3.5 BP4 (2025-09-10)
| Feature | Description |
|---|---|
New parameter enable_mlog_auto_maintenance |
Controls whether to enable the automatic creation of MLOGs. For more information, see enable_mlog_auto_maintenance. |
New parameter mlog_trim_interval |
Controls the scheduling cycle for the background automatic trimming task of MLOGs. For more information, see mlog_trim_interval. |
New parameter ob_deterministic_udf_cache_max_size |
Specifies the maximum total size of the cache pool for deterministic UDFs during statement execution, in bytes. If the value is 0, the execution-time cache feature is disabled. |
New parameter approx_count_distinct_precision |
Specifies the precision of the result of the approx_count_distinct function. The default value is 10. |
New parameter enable_ps_parameterize |
Controls whether to enable parameterization of PS statements during parsing. |
Changed the behavior of the ob_route_policy parameter |
|
Added columns to the view [G]V$OB_SQL_AUDIT |
|
Changed the meaning of the row_movement field in the views CDB/DBA/USER/ALL_TABLES |
The row_movement field now records the actual enable/disable status of row movement instead of being NULL. For more information, see ALL_TABLES. |
Changed the meaning of the row_movement field in the view DBA/USER/ALL_ALL_TABLES |
The row_movement field now records the actual enable/disable status of row movement instead of being NULL. For more information, see ALL_ALL_TABLES. |
ALTER TABLE |
In MySQL-compatible mode, the ALTER TABLE ADD INDEX syntax mocks the ALGORITHM and LOCK attributes. For more information, see ALTER TABLE. |
UTL_RAW.TRANSLATE |
In Oracle-compatible mode, the UTL_RAW.TRANSLATE function is added. This function translates data of the RAW type byte by byte. |
CREATE MATERIALIZED VIEW |
When creating a materialized view, adding AS OF PROCTIME() to the base table allows you to specify that the table is skipped during incremental refreshes. Additionally, tables with the AS OF PROCTIME() clause can have MLOGs created. For more information, see CREATE MATERIALIZED VIEW (MySQL-compatible mode) and CREATE MATERIALIZED VIEW (Oracle-compatible mode). |
ALTER SYSTEM LOAD MODULE DATA MODULE |
Added the syntax for importing specified tenant data, including Redis, timezone metadata, and spatial data srsid. This command can only be executed by the sys tenant. |
V4.3.5 BP3 (2025-07-21)
| Feature | Description |
|---|---|
Changed the default value of the ob_vector_memory_limit_percentage parameter |
The original default value was 0, indicating that no memory was allocated for vector indexes, and creating an index would result in an error. The default value is now 0, indicating adaptive memory allocation for vector retrieval. For more information, see ob_vector_memory_limit_percentage. |
Changed the default value of the auto_split_tablet_size parameter |
The default value has been changed from 128 MB to 2 GB. For more information, see auto_split_tablet_size. |
New parameter default_table_merge_engine |
Controls the default merge_engine for table creation. For more information, see default_table_merge_engine. |
New view [G]V$OB_VECTOR_MEMORY |
Displays memory usage statistics for the tenant's vector index module. |
Added the TOP_TIME column to the [G]V$OB_PROCESSLIST view |
The TOP_TIME column indicates the total execution time of the PL. For more information, see GV$OB_PROCESSLIST. |
Added the EXECUTE_TIME column to the GV$OB_TABLET_COMPACTION_HISTORY view |
The EXECUTE_TIME column indicates the CPU consumption time for a major compaction. For more information, see GV$OB_TABLET_COMPACTION_HISTORY. |
Added parameters to the DBMS_MVIEW.REFRESH system package |
|
CREATE MATERIALIZED VIEW |
When creating a nested materialized view, you can specify the refresh strategy:
|
ALTER MATERIALIZED VIEW |
You can modify the refresh strategy of a nested materialized view. The semantics of the three keywords are consistent with those of the CREATE MATERIALIZED VIEW statement. For more information, see ALTER MATERIALIZED VIEW. |
CREATE MATERIALIZED VIEW LOG |
Add the OR REPLACE clause to the CREATE MATERIALIZED VIEW LOG statement. For more information, see CREATE MATERIALIZED VIEW LOG. |
CREATE VECTOR INDEX |
|
V4.3.5 BP2 (2025-05-15)
| Feature | Description |
|---|---|
New parameter default_storage_cache_policy |
This parameter is used to configure the default cache policy. For more information, see default_storage_cache_policy. |
New parameter enable_manual_storage_cache_policy |
This parameter is used to enable the hot cache strategy specified by users. For more information, see enable_manual_storage_cache_policy. |
New parameter suspend_storage_cache_task |
This parameter specifies whether to suspend the background cache task. For more information, see suspend_storage_cache_task. |
New parameter enable_lock_priority |
This parameter is used to control the table lock priority. For more information, see enable_lock_priority. |
New parameter enable_adaptive_plan_cache |
This parameter is used to enable or disable the adaptive plan cache feature for a tenant. |
New parameter clog_io_isolation_mode |
Specifies whether to use resource isolation to control I/O requests on the CLOG disk, depending on whether the CLOG disk and the data disk are isolated. For more information, see clog_io_isolation_mode. |
New parameter global_index_auto_split_policy |
Specifies whether to enable automatic partitioning for newly created global indexes. For more information, see global_index_auto_split_policy. |
New system variable event_scheduler |
This variable determines whether the event scheduler is enabled and running on the server. For more information, see event_scheduler. |
New system variable ob_enable_ps_parameter_anonymous_block |
This variable specifies whether to parameterize anonymous blocks and call statements in parsing in PS mode. |
New system variable ob_sparse_drop_ratio_search |
Specifies the percentage of values that can be ignored in all dimensions of a vector during queries. |
New view information_schema.events |
This view records event information. For more information, see information_schema.events. |
New view [G]V$OB_STORAGE_CACHE_TASKS |
Displays information about storage cache tasks. For more information, see GV$OB_STORAGE_CACHE_TASKS. |
New view [G]V$OB_TABLET_LOCAL_CACHE |
Display information about tablet local cache. For more information, see GV$OB_TABLET_LOCAL_CACHE. |
New view V$OB_DYNAMIC_PARTITION_TABLES |
Displays information about dynamic partition tables. For more information, see V$OB_DYNAMIC_PARTITION_TABLES. |
New view CDB/DBA_OB_DYNAMIC_PARTITION_TABLES |
This view is used to query information about dynamic partition tables. For more information, see oceanbase.CDB_OB_DYNAMIC_PARTITION_TABLES. |
New view CDB/DBA_MVIEW_RUNNING_JOBS |
This view displays the current running jobs related to materialized views, including refresh jobs, MLOG cleanup jobs, and so on. |
New view DBA_MVIEW_DEPS |
This view displays the dependencies of a materialized view. |
Added columns ss_data_disk_operation_suggested and ss_data_disk_size_suggested to the [G]V$OB_SERVERS view. |
The new columns are used to display information about suggesting operations for the local SSD disks of shared storage servers, such as the size of the local SSD disks. For more information, see GV$OB_SERVERS. |
Added columns to view [G]V$OB_TABLET_COMPACTION_HISTORY. |
A new column mds_filter_info is added, which specifies the MDS filtering information used for minor compaction. For more information, see GV$OB_TABLET_COMPACTION_HISTORY. |
Added columns to view [G]V$OB_SQL_AUDIT. |
The INSERT_DUPLICATE_ROW_COUNT column is added to indicate the number of conflicting rows in the INSERTUP or REPLACE INTO statements. For more information, see GV$OB_SQL_AUDIT. |
Added columns to views CDB/DBA/ALL/USER_MVIEWS. |
The DATA_SYNC_SCN and DATA_SYNC_DELAY columns are added. For nonnested materialized views (views that depend on only base tables), data_sync_scn indicates the refresh point. For nested materialized views, data_sync_scn is the smallest data_sync_scn value of the materialized views that the materialized view depends on. data_sync_delay is a calculated indicator based on the data_sync_scn value for user reference. data_sync_delay = current_time - data_sync_scn. DATA_SYNC_DELAY is merely a reference value to the amount of data delay in the materialized view. For example, data_sync_delay is not zero if the base table is not refreshed from the materialized view after the materialized view was last refreshed, which indicates that the materialized view data has not been delayed. For more information, see CDB_MVIEWS. |
Added columns to views CDB/DBA/ALL/USER_MVIEW_LOGS |
The PURGE_DOP and LAST_PURGE_TIME columns are added to record the parallelism and execution time of the previous purge task on a materialized view log. For more information, see CDB_MVIEW_LOGS. |
Added columns to views DBA/USER_AUDIT_SESSION |
The svr_ip and svr_port columns are added to identify Server Sessions based on the same Client Session ID on different OBServer nodes. For more information, see DBA_AUDIT_SESSION. |
Added columns to views CDB/DBA_WR_ACTIVE_SESSION_HISTORY. |
The DELTA_READ_IO_REQUESTS, DELTA_READ_IO_BYTES, DELTA_WRITE_IO_REQUESTS, and DELTA_WRITE_IO_BYTES columns were added. For more information, see oceanbase.CDB_WR_ACTIVE_SESSION_HISTORY. |
Added columns to view [G]V$ACTIVE_SESSION_HISTORY. |
The DELTA_READ_IO_REQUESTS, DELTA_READ_IO_BYTES, DELTA_WRITE_IO_REQUESTS, and DELTA_WRITE_IO_BYTES columns were added. For more information, see GV$ACTIVE_SESSION_HISTORY. |
Added columns to views [G]V$OB_ACTIVE_SESSION_HISTORY. |
The DELTA_READ_IO_REQUESTS, DELTA_READ_IO_BYTES, DELTA_WRITE_IO_REQUESTS, and DELTA_WRITE_IO_BYTES columns are added. For more information, see GV$OB_ACTIVE_SESSION_HISTORY. |
Changed output of the information_schema.referential_constraints. |
The values of the update_rule and delete_rule columns are updated from the "SET_NULL" and "NO_ACTION" values in the MySQL enum format to the "SET NULL" and "NO ACTION" values in the MySQL compatible format. For more information, see information_schema.referential_constraints. |
Changed semantics of the SESSION_ID field. |
The semantic definition of the SESSION_ID field has changed in V4.3.5 BP2 as follows:
|
Refactored the pivot/unpivot function |
Refactored the complete pipeline from parsing to execution of the pivot/unpivot function to support use in combination with complex joins, rework the execution logic of the unpivot operator, and support Vectorization 2.0. |
New function rb_or_cardinality_agg(roaringbitmap) |
The function is used to calculate the cardinality of the union of the roaringbitmap column. For more information, see rb_or_cardinality_agg. |
New function rb_and_cardinality_agg(roaringbitmap) |
This function calculates the cardinality of the intersection of the roaringbitmap column. For more information, see rb_and_cardinality_agg. |
New function rb_to_array(roaringbitmap) |
Outputs an ordered array of integers corresponding to the roaringbitmap. For more information, see rb_to_array. |
New function rb_contains(roaringbitmap1, roaringbitmap2) |
Determines whether roaringbitmap1 completely contains roaringbitmap2. For more information, see rb_contains. |
New function rb_contains(roaringbitmap, offset) |
This function determines whether a roaring bitmap contains a specific offset. For more information, see rb_contains. |
New function map_keys |
Batch extract all keys from a map and return the result as an array. For more information, see map_keys. |
New function map_values |
It extracts the values of all keys in a map and returns the results as an array. For more information, see map_values. |
New system package DBMS_PARTITION |
Provides a dynamic partition management interface. For more information, see Overview of DBMS_PARTITION (MySQL-compatible mode) and Overview of DBMS_PARTITION (Oracle-compatible mode). |
| New backup and archive configuration commands for OSS WORM | The enable_worm parameter is supported. For more information, see SET DATA_BACKUP_DEST and SET LOG_ARCHIVE_DEST. |
| New command for dynamically updating ak/sk of backups | Changes the access_id and access_key of the external storage destination. For more information, see ALTER/CHANGE/MODIFY EXTERNAL_STORAGE_DEST. |
| New event management commands in MySQL-compatible mode |
|
| New pseudo column names for partitioning | Allows you to obtain the ID of the partition in which each row of data is stored. |
New table property enable_macro_block_bloom_filter |
The value indicates whether to persist bloom filters at the macroblock level. For more information, see CREATE TABLE and ALTER TABLE. |
New table property dynamic_partition_policy |
You can specify the dynamic partition management attribute of the table for automatic partition creation and drop. For more information, see CREATE TABLE and ALTER TABLE. |
New table property semistruct_encoding_type |
Specifies the encoding type of the semistructured data. For more information, see CREATE TABLE and ALTER TABLE. |
| New catalog syntax in MySQL-compatible mode |
|
New LOG ERRORS syntax for loading data into external tables via URL |
Enables error diagnostics during the external table import via URL. For more information, see LOAD DATA. |
Added the NGRAM2 tokenizer and the related PARSER_PROPERTIES configuration command |
Specifies the number of contiguous characters to split into. For more information, see CREATE INDEX. |
New extra_info_max_size property for creating HNSW vector indexes |
A build parameter for HNSW indexes used to set the maximum number of leaf nodes per node. For more information, see Create a vector index. |
| New HNSW_BQ vector index creation syntax | The recall rate of HNSW_BQ indexes is slightly lower than that of HNSW indexes, but memory usage is significantly reduced. For more information, see Create vector indexes. |
V4.3.5 BP1 (2025-03-18)
| Feature | Description |
|---|---|
New parameter default_table_organization |
Allows users to set the default table organization mode when creating new tables. For more information, see default_table_organization. |
New parameter px_node_policy |
Determines the candidate pool for PX compute nodes. |
New parameter ob_enable_java_env |
Controls whether to enable the Java environment required by external table capabilities such as HDFS/MaxCompute (ODPS). |
New parameter ob_java_home |
Sets the Java home path required by JNI runtime dependencies. Must be configured when ob_enable_java_env is enabled. |
New parameter ob_java_opts |
Sets JVM startup parameters such as memory size and garbage collection algorithms. Must be configured when ob_enable_java_env is enabled. |
New parameter ob_java_connector_path |
Sets the path for the jar files required by external table connectors. Must be configured when ob_enable_java_env is enabled. |
New parameter temporary_file_max_disk_size |
Limits the maximum disk space that temporary files can occupy on a single node. |
New parameter package_state_sync_max_size |
Controls the maximum length of package variable values synchronized in package state. Variables exceeding this parameter will not be synchronized. |
New parameter unit_gc_wait_time |
Specifies the maximum wait time for Unit GC; if exceeded, GC is forced. For more information, see unit_gc_wait_time. |
Default value change for parameter kv_group_commit_batch_size |
The default value has been changed from 1 to 10. Group commit is now enabled by default, and the batch_size for group commit is set to 10. For more information, see kv_group_commit_batch_size. |
New system variable ob_ivf_nprobes |
Sets the number of nearest cluster centers to search for any IVF vector index queries in the session. A larger value explores more cluster centers, increasing search accuracy but also search time. For more information, see ob_ivf_nprobes. |
New system variable mview_refresh_dop |
Controls the default parallelism for materialized view refreshes in the session. For more information, see mview_refresh_dop. |
New system variable ENABLE_OPTIMIZER_ROWGOAL |
Controls whether the optimizer considers row goals (such as those from LIMIT operators) during cardinality estimation. |
New system variable pid_file |
Queries the pathname of the file where the server writes its process ID. For more information, see pid_file. |
New system variable port |
Sets the TCP/IP port number that the server listens to when deployed on an OBServer node. For more information, see port. |
New system variable socket |
Queries the name of the local client connection socket file. For more information, see socket. |
New value for system variable ob_route_policy |
A new value FORCE_READONLY_ZONE has been added. For more information, see ob_route_policy. |
New view CDB/DBA_OB_CS_REPLICA_STATS |
Displays the progress and status of log streams being converted to column store on each column store replica. For more information, see oceanbase.CDB_OB_CS_REPLICA_STATS. |
New column added to view information_schema.TABLES |
Adds column ORGANIZATION, which indicates the table organization mode. For more information, see information_schema.TABLES. |
New column added to view [G]V$OB_GROUP_IO_STAT |
Adds column NORM_IOPS, which displays the real-time IOPS status for each group under a tenant. For more information, see GV$OB_GROUP_IO_STAT. |
Column value change in view CDB_TABLES |
Changes the value of column IOT_TYPE from ineffective to displaying the table organization mode. For more information, see oceanbase.CDB_TABLES. |
Column value change in view [G]V$SQL_PLAN_MONITOR |
Changes the values of columns SQL_ID and SQL_PLAN_HASH_VALUE from ineffective to recording the actual values. For more information, see GV$SQL_PLAN_MONITOR. |
New column and semantic change in view [G]V$OB_SQL_PLAN |
Adds column tenant_id to indicate the tenant to which the plan information belongs. For the system tenant, changes query behavior from querying only its own plan information to querying plan information for all tenants. For more information, see GV$OB_SQL_PLAN. |
New function TO_CHAR in MySQL-compatible mode |
Converts other data types to string type. |
New function KEYVALUE in MySQL-compatible mode |
Parses key-value pair strings stored in data tables and extracts the value for a given key. |
New function URL_DECODE in MySQL-compatible mode |
Converts strings from application/x-www-form-urlencoded MIME format to regular characters. |
New function SPLIT_PART in MySQL-compatible mode |
Splits string str according to the separator separator, and returns the substring from the start part to the end part. |
New function PERCENTILE_CONT in MySQL-compatible mode |
Returns an interpolated value at the given percentile for a specified sort specification. |
New system package UTL_TCP in Oracle mode |
Supports communication with external servers via the TCP/IP protocol. For more information, see UTL_TCP Overview. |
New system package UTL_SMTP in Oracle mode |
Supports sending emails via SMTP (Simple Mail Transfer Protocol). For more information, see UTL_SMTP Overview. |
New system package DBMS_DDL in Oracle mode |
Supports encryption of PL/SQL source code. |
New subprogram DBMS_UTILITY.COMMA_TO_TABLE in Oracle mode |
Adds a subprogram to DBMS_UTILITY that converts a comma-separated string into a PL/SQL table. For more information, see COMMA_TO_TABLE. |
New ORGANIZATION table option |
Specifies whether a newly created table is a heap-organized table or an index-organized table. For more information, see CREATE TABLE. |
| New command for recompiling procedures/functions | Adds ALTER PROCEDURE/FUNCTION COMPILE syntax for manual compilation in MySQL tenants. The ALTER COMPILE statement syntax is: alter {procedure|function} name compile [reuse settings].
|
| Supports commands for changing replicated table attributes |
|
| New syntax for URL external tables |
|
| New syntax for adding/removing secondary partitions in MySQL mode | Extends RANGE [COLUMNS]/LIST [COLUMNS] secondary partition add/remove syntax in MySQL mode. For more information, see Add Partition. |
| New command for modifying materialized views | Adds ALTER MATERIALIZED VIEW/ALTER MATERIALIZED VIEW LOG syntax to support modifying materialized view and log attributes. For more information, see ALTER MATERIALIZED VIEW and ALTER MATERIALIZED VIEW LOG. |
| New full-text index parser property | Adds a parser property for full-text indexes, supporting table-level PARSER_PROPERTIES configuration. For more information, see CREATE INDEX. |
| New syntax for vector indexes | Supports creating IVF and HNSW_SQ indexes with tables. The type parameter now supports hnsw_sq and ivf_flat, and new parameters nlist and sample_per_nlist specify the number of cluster centers and the sample size per center. For more information, see Vector Index. |
| New syntax for GROUPING SETS, CUBE, QUALIFY in MySQL mode | Adds GROUPING SETS, CUBE, and QUALIFY syntax in MySQL mode. For more information, see SELECT. |
New STRING data type in MySQL mode |
Adds a new STRING data type to better support AP workloads. No need to specify length, with a default maximum of 16MB. When column length is less than 16KB and not greater than lob_inrow_threshold, supports use as a primary key or index key. For more information, see STRING Type. |
| New character sets | Adds several Asian character sets and collations, such as ujis, euckr, gb2312, cp932, eucjpms, cp850, hp8, macroman, swe7 and related collations. For more information, see Character Sets (MySQL mode) or Character Sets and Collations (Oracle mode). |