OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog Service
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

OceanBase Database

Enterprise
  • V4.6.0
  • V4.5.0
  • V4.4.2
  • V4.3.5
  • V4.3.3
  • V4.3.2
  • V4.3.1
  • V4.3.0
  • V4.2.5
  • V4.2.1
  • V4.2.0
  • V4.1.0
  • V3.2.4
  • V3.2.3
  • V3.2.2
  • V3.2.1
  • V3.2.0
  • V3.1.2
  • V3.1.1
  • V2.2.77

Download PDF

Document Feedback
  1. Documentation Center
  2. OceanBase Database
  3. master

OceanBase Database Enterprise Edition V3.2.4

Last Updated:2026-09-03 02:29:56

V3.2.4 BP4
Version information
Enhanced features
Behavioral changes
Parameter changes
System variable changes
Bug fixes
V3.2.4 BP3
Version information
Enhanced features
Behavioral changes
Parameter changes
System variable changes
Considerations
Bug fixes
V3.2.4 BP2
Version information
Enhanced features
Considerations
Bug fixes
V3.2.4 BP1
Version information
Enhanced features
Compatibility changes
Bug fixes
Considerations
V3.2.4
Version information
Overview
New features
Compatibility changes
Upgrade notes
Recommended versions of tools
Considerations

V3.2.4 BP4

Version information

  • Release date: June 21, 2023
  • Version: V3.2.4 BP4
  • RPM version: oceanbase-3.2.4.4-104000052023062021

Enhanced features

  • The OBKV feature is optimized. The COUNT function for a single partition is supported based on the table model. The definition of expired columns is supported to automatically delete expired data.
  • MySQL data types are optimized. Specifically, the NCHAR and NVARCHAR data types and the SELECT N'xxx' syntax are supported.
  • The compatibility with Oracle functions is improved. The SOUNDEX and NLS_INITCAP functions are supported. At present, the NLS_INITCAP function supports only NLS_SORT=BINARY.
  • Security is hardened. The _enable_reserved_user_dcl_restriction parameter is added to specify whether to allow normal users to modify built-in users.

Behavioral changes

  • In this version, the optimization of IN predicate extraction is disabled by default. If large IN queries exist in the business SQL statements and the execution time or memory consumption of these large IN queries causes a bottleneck in the business system, you can set the value of the _enable_in_range_optimization parameter to True to enable the optimization of IN predicate extraction.
  • Since OceanBase Database Enterprise Edition V3.2.4 BP4, the _max_trx_size parameter is replaced with max_trx_part_size.

Parameter changes

Parameter
Change type
Default value
Description
_enable_in_range_optimization New False A tenant-level parameter that specifies whether to optimize the query range of IN predicates.
max_trx_part_size New 0B A cluster-level parameter that specifies the maximum amount of data that can be written by a transaction on a participant. Default value: OB, which specifies not to apply a limit.
_max_trx_size Deprecated 0B This parameter is replaced by max_trx_part_size to ensure compatibility between different versions.
max_trx_2pc_retry_interval New 30s A cluster-level parameter that specifies the maximum message retry interval during the two-phase commit of transactions.
_enable_reserved_user_dcl_restriction New False A cluster-level parameter that specifies whether only a built-in user can modify other built-in users. Default value: False, which specifies not to apply a limit.
_enable_backtrace_function New True A cluster-level parameter that specifies whether the backtrace function takes effect.
_optimizer_better_inlist_costing New False A tenant-level parameter that specifies whether to enable IN expression optimization for the optimizer.
kv_ttl_history_recycle_interval New 7d A tenant-level parameter that specifies the retention period of the historical records of TTL-based deletion tasks.
kv_ttl_duty_duration New [00:00:00, 24:00:00] A tenant-level parameter that specifies the running period for background TTL tasks.
enable_kv_ttl New False A tenant-level parameter that specifies whether to enable background TTL tasks.
_pipelined_table_function_memory_limit New 500 * 1024 * 1024 (500 MB) A tenant-level parameter that specifies the size of memory for the result set of pipelined functions.

System variable changes

Variable
Change type
Default value
Description
_show_ddl_in_compat_mode New 0 Specifies whether to show the result of compatibility with MySQL. After this variable is enabled, show create table/database will show the result of compatibility with MySQL. This is a session-level variable. Default value: 0, which indicates that this feature is disabled.

Notice

The MySQL-compatible mode of OceanBase Database has special scalability capabilities. For example, OceanBase Database allows you to add subpartitions, and you can specify Default in a LIST-partitioned table to prevent adding additional partitions. If you use these capabilities to create a table in MySQL-compatible mode, the displayed content will be different from the actual schema in the Oracle-compatible mode of OceanBase Database. Proceed with caution.

Bug fixes

  • Fixed the issue of stack overflow caused by excessive loop iterations in stored procedures with GOTO (Oracle-compatible mode) or ITERATE (MySQL-compatible mode) statements.
  • Fixed the issue where the memory usage of the SYS500 tenant was high in a liboblog scenario due to a Time Stamp Counter (TSC) clock rollback.
  • Fixed the issue where Error 4377 was returned when partition pruning was triggered by an INSERT statement in non-strict mode.
  • Fixed the issue where Error 4012 was returned when an excessively long JSON string was inserted by using the replace into statement.
  • Fixed the issue where the return result of DBMS_UTILITY.GET_HASH_VALUE(ROWID,1,10000) was incompatible in Oracle-compatible mode.
  • Fixed the issue where the 4000 common error was returned for an UPDATE operation that contained subqueries.
  • Fixed the issue where a core dump of the observer process might occur when a stored procedure that contained CursorForLoop was debugged in OceanBase Developer Center (ODC).
  • Fixed the issue where the value of the server_uuid system variable was wrong after a tenant upgrade.
  • Fixed the issue where too many memory resources were occupied when the result sets of pipelined functions were large.
  • Fixed the issue where an error might return during cross-user schema identification if no database was specified for public synonyms in Oracle-compatible mode.
  • Fixed the issue where it took a long time to generate an execution plan for the INSERT ALL statement.
  • Fixed the issue where in Oracle-compatible mode, the scale and precision of the data returned by the ResultSetMetaData API were inconsistent with those returned in Oracle Database.
  • Fixed the issue where an out-of-memory (OOM) error was returned during package compilation after a memory leak occurred in PL Resolve View.
  • Fixed the issue where an error was returned in querying distinct primary keys and CLOB columns.
  • Fixed the issue where Error 4258 was returned during character set conversion when statistics were collected.
  • Fixed the issue of generating a large query range and causing SQL execution error 4019 Size Overflow in an equijoin scenario where both tables had IN conditions. This issue occurred because duplicate IN predicates were not being eliminated.
  • Fixed the issue where tenant parameters could not be specified if the number of timer tasks on the node exceeded 32 when many tenants existed.
  • Fixed the issue where after the tenant allowlist (ob_tcp_invited_nodes) was set to 1.1.1.1/24, the login by using 1.1.1.1 failed.
  • Fixed the issue where Error 4019 was returned when the SHOW CREATE TABLE statement was executed on a partitioned table that contained 50,000 partitions.
  • Fixed the issue where a major compaction for the standby tenant timed out due to a TSC time exception in the system.
  • Fixed the issue where Error 5226 was returned when the usage of the plan cache reached the limit because plan cache eviction failed.
  • Fixed the issue where when an exception occurred during a package call, the number of the line where the exception occurred was inaccurately provided by the exception handler.
  • Fixed the issue where an error was returned for a ROWNUM query due to the push-down of the join limit.
  • Fixed the issue where Error 4016 was returned if the base table of the trigger contained hidden columns.
  • Fixed the issue of not being able to display the information of views that reference a DBLink table using the DES command.
  • Fixed the issue where Error 5599 was returned when an array constructor was used in a CREATE USER statement.
  • Fixed the issue where errors might be returned while accessing views that contain synonyms.
  • Fixed the issue where OceanBase Database Proxy (ODP) could not obtain routing information when two synonyms were nested.

V3.2.4 BP3

Version information

  • Release date: April 19, 2023
  • Version: V3.2.4 BP3
  • RPM version: oceanbase-3.2.4.3-103000032023041816

Enhanced features

  • The OBKV connection count feature is added, which simplifies the process for locating OBKV request issues.

    • The GV$OB_KV_CONNECTIONS view is added, which allows you to query all active sessions of the KV class in the current tenant.
    • The V$OB_KV_CONNECTIONS view is added, which allows you to query all active sessions of the KV class on the current OBServer node.
  • The call of the CURRVAL function to obtain the current value of a sequence across OBServer nodes is optimized.

    • In earlier versions, when OceanBase Database Proxy (ODP) connects to an OBServer node, if a route switch occurs between consecutive NEXTVAL and CURRVAL calls, an error is reported when you call CURRVAL on another OBServer node.
    • This version supports cross-route synchronization of CURRVAL calls when ODP connects to an OBServer node. The call of CURRVAL on another OBServer node returns the value obtained by the last NEXTVAL call.

Behavioral changes

  • The INSERT VALUES statement for inserting multiple rows of data in MySQL-compatible mode is supported. In MySQL-compatible mode, if you do not specify the strict mode for SQL_MODE, when you insert NULL to fields with the NOT NULL constraint, an error is reported if you use INSERT VALUES to insert a single row of data, and the operation succeeds but a WARNING alert is generated if you use INSERT VALUES to insert multiple rows of data, same as in MySQL Database.

  • Sorting for SET QUERY result sets is supported in Oracle-compatible mode.

    • The serial execution and sequential output feature of Oracle Database is supported. You can set the tenant- or session-level variable _force_order_preserve_set to enable this feature.
    • For performance considerations, by default, HASH operators, such as set operators like UNION ALL, UNION, MINUS, INTERSECT, and EXCEPT, are used instead of MERGE operators for parallel execution.

Parameter changes

Parameter
Change type
Default value
Description
_large_query_yield_timelimit New 30s The wait timeout period for large queries. It is a cluster-level parameter. Value range: (0ms, + ∞].
_with_subquery New 0 The common table expression (CTE) optimization strategy of the optimizer. It is a tenant-level parameter. Valid values:
  • 0: OPTIMIZE. The optimizer determines whether a CTE is materialized or inlined.
  • 1: MATERIALIZE. The optimizer forcibly materializes CTEs.
  • 2: INLINE. The optimizer forcibly inlines CTEs.
_xsolapi_generate_with_clause New true Specifies whether the optimizer actively extracts CTEs. It is a tenant -level parameter. Valid values: [true, false].
_optimizer_group_by_placement New true Specifies whether the optimizer enables the rewrite feature for GROUP BY PLACEMENT. It is a tenant -level parameter. Valid values: [true, false].

System variable changes

Variable
Change type
Default value
Description
_force_order_preserve_set New false Specifies the rewrite behavior and the plan generation logic of SET QUERY. If this variable is set to true, the branches are executed serially and the result sets are output in sequence. It is a global or session-level variable. Valid values: [true, false].
Note
When this parameter is set to true, the computing performance is affected.

Considerations

The _max_trx_size parameter allows you to limit the transaction size to ensure system stability. If the parameter is set to 0, the transaction size is not limited. The default value is 100M. Observe the following considerations when you configure this parameter:

  1. The _max_trx_size parameter setting does not take effect, except for V2.x and earlier and V3.2.4 and later.
  2. When you upgrade from a version in which this parameter does not take effect to V3.2.4 or V3.2.4 BP, the transaction size is changed from unlimited to a maximum size of 100 MB. If you do not want to limit the transaction size, set this parameter to 0 before the upgrade.

Bug fixes

  • Fixed the issue where the range extraction was abnormal and caused incorrect results when columns C1, C2, and C3 had indexes and an SQL statement contained the (C1 = ? OR C1 = ? ...) AND C2 IN (...) AND C3 ... condition.
  • Fixed the issue where ORA-00600: internal error code, arguments: -4016, Internal error was reported when the SUBSTRB function was used in a DML statement in PL and the parameters included variables defined in PL.
  • Fixed the issue where in Oracle-compatible mode, when a package variable was used as the output parameter for internal calls, the stored procedure execution result was incompatible with that of the native Oracle Database.
  • Fixed the issue where an excessive long time was took to get the plan due to the failure to handle UPDATE IGNORE during expression precalculation.
  • Fixed the issue where backup pieces were not deleted as expected when an automatic cleanup task was normally scheduled.
  • Fixed the issue where a memory leak problem occurred when a SELECT statement was parsed in an INSERT ALL statement.
  • Fixed the issue where the execution result was not as expected due to abnormal return results of the expression when a filter condition was pushed down.
  • Fixed the issue where some indexes were in the abnormal state after physical restore.

V3.2.4 BP2

Version information

  • Release date: February 28, 2023
  • Version: V3.2.4 BP2
  • RPM version: oceanbase-3.2.4.2-102000042023022717

Enhanced features

  • The system package UTL_RAW in Oracle-compatible mode supports the CAST_TO_NVARCHAR2() function, which converts RAW values into NVARCHAR2 values.
  • DBLinks support DNS resolution in Oracle-compatible mode.
  • The system functions XMLAGG(), XMLPARSE(), and XMLELEMENT() are supported in Oracle-compatible mode.
  • The FROM_BASE64() and TO_BASE64() functions are supported in MySQL-compatible mode.
  • The compatibility with the system variables DEFAULT_STORAGE_ENGINE and EVENT_SCHEDULER is improved in MySQL-compatible mode.
  • The value 11 is available for the REQUEST_TYPE field in the V$OB_SQL_AUDIT view. This value indicates that the SQL statement is executed in PL.

Considerations

  • ArrayBinding is not recommended for batch insertion in this version. We recommend that you set ob_enable_batched_multi_statement to False.
  • When you upgrade OceanBase Database Enterprise Edition from V3.2.4 or V3.2.4 BP1 to V3.2.4 BP2, election without leader may occur during the upgrade. After all OBServer nodes are started, normal election resumes and the cluster is upgraded.

Bug fixes

  • Fixed the issue where when the number of SSTable macroblocks was too large and more than 32 MB of data was written in the slog file, an error was reported and the major compaction of the cluster was stuck.
  • Fixed the issue where the execution result was wrong in MySQL-compatible mode because the filters applied by the NEST LOOP JOIN operator was abnormal.
  • Fixed the issue where when the macroblock reuse logic was abnormal, a large number of macroblocks were rewritten, resulting in excessive I/Os during the major compaction of the cluster.
  • Fixed the issue where when an SQL statement had four or more index columns in a WHERE clause and an index was hit and contained in expr, the result set returned by the query was incorrect in some scenarios.
  • Fixed the issue where when data of OceanBase Database V2.2.77 was restored by using OceanBase Database V3.2.4, the leader was stuck.
  • Fixed the issue where in Oracle-compatible mode, when AUTO COMMIT was disabled, after some data was inserted, the SELECT statement in a user-defined function (UDF) could not read uncommitted data.
  • Fixed the issue where in Oracle-compatible mode, when AUTO COMMIT was enabled, after a transaction was manually started and the executed PL package contained DML statements, the transaction was automatically committed.

V3.2.4 BP1

Version information

  • Release date: January 9, 2023
  • Version: V3.2.4 BP1
  • RPM version: oceanbase-3.2.4.1-101000052023010822

Enhanced features

  • Security optimization

    • You can change the AccessKey ID and AccessKey Secret during data backup and restore. The backup feature of OceanBase Database allows you to specify an Alibaba Cloud Object Storage Service (OSS), Tencent Cloud Object Storage (COS), or Huawei Object Storage Service (OBS) bucket as the backup destination. However, you cannot modify the access_id or access_key parameter of the backup destination during the backup. If the AccessKey ID or AccessKey Secret is changed, you must stop the log backup and change the backup directory. Therefore, this version provides the ALTER SYSTEM change external_storage_dest PATH[=]'xxx?host=xxx' set ACCESS_INFO[=]'access_id=xxx&access_key=xxx'; command for you to modify the AccessKey ID and AccessKey Secret of the backup destination. The relevant content in GConf is updated and saved accordingly. Observe the following considerations when you use this command:

      • Before you run the command to update the AccessKey ID and AccessKey Secret for accessing the OSS, COS, or OBS bucket, we recommend that you stop the ongoing second backup task. We also recommend that you delete the old AccessKey ID and AccessKey Secret one hour later after you run the command.
      • If you modify the AccessKey ID and AccessKey Secret during a second backup task, and the task is stuck, you must forcibly cancel the task and change the directory to resume to task.
    • The password information configured by using a DBLink can be encrypted for storage.

    • Remote Procedure Call (RPC) authentication is supported for communication between OBServer nodes.

    • Transparent data encryption (TDE) is integrated into Alibaba Cloud Key Management Service (KMS).

  • Monitoring statistics optimization: Transaction time statistics and SQL execution time statistics are added to the v$sysstat view.

    • Transaction time statistics metrics include sp trans total used time and distributed trans total used time.
    • SQL execution time statistics metrics include sql local execute time, sql remote execute time, and sql distributed execute time.
  • Compatibility with MySQL PL syntaxes: GET DIAGNOSTICS, GET STACKED DIAGNOSTICS CONDITION, DECLARE CONTINUE HANDLER, SIGNAL SQLSTATE, and DEFINER syntaxes are supported.

  • Performance optimization: You can use arrays to execute simple statements such as INSERT...VALUES, UPDATE, and DELETE in batches. This improves the batch execution performance by about 4 times.

Compatibility changes

  • The default value of the schema_history_expire_time parameter is changed from 7d to 30d.
  • The default value of the ob_esi_session_timeout parameter is changed from 1m to 10m.
  • The rpc_client_authentication_method parameter is added to specify the security authentication method of the RPC client. The setting takes effect immediately. Valid values are NONE, PLAIN_KEY, SSL_NO_ENCRYPT, and SSL_IO. The default value is NONE.
  • The rpc_server_authentication_method parameter is added to specify the security authentication method of the RPC server. The setting takes effect immediately. Valid values are NONE, ALL, PLAIN_KEY, SSL_NO_ENCRYPT, and SSL_IO. The default value is ALL.

Bug fixes

  • Fixed the issue where in Oracle-compatible mode, Error 4179 was returned when a cursor for looping operations was used in a package.
  • Fixed the issue where a timeout error occurred when deleting data from a table with foreign keys, where the internal execution flow triggered an exception in parallel while processing the foreign keys.
  • Fixed the issue where creating a new tenant resulted in an error of insufficient resources due to abnormal resource release after tenant release.
  • Fixed the issue where when an execution plan hit the plan cache, the execution result of MERGE INTO was incorrect.
  • Fixed the issue where memory leak occurred when indexes were created on JSON generated columns.

Considerations

  • To use Key Management Service (KMS), upgrade liboblog to V3.2.4.0 or later and then upgrade OceanBase Database to V3.2.4 BP1.
  • If a large query triggers a deadlock in a scenario where ArrayBinding or CREATE TABLE AS SELECT is used, we recommend that you increase the value of the large_query_threshold parameter to avoid triggering deadlocks.

V3.2.4

Version information

  • Release date: November 1, 2022
  • Version: V3.2.4
  • RPM version: oceanbase-3.2.4.0-100000072022102819

Overview

Compared with V3.2.3, OceanBase Database V3.2.4 improves the compatibility and stability of the database kernel to meet the production and testing requirements of customer systems. Core enhancements include:

  • Enhanced compatibility with MySQL

    The geographic information system (GIS) and MySQL binlog parsing are supported. The DBMS_RESOURCE_MANAGER system package is added.

  • Enhanced compatibility with Oracle

    The DBMS_SCHEDULER system package is added. System package functions are supplemented.

  • Kernel enhancements

    SQL rule-based resource isolation, the IPv6 protocol, backup to OBS, log optimization, transaction size configuration, and configuration of the number of login threads are supported.

New features

Enhanced compatibility

Compatibility with MySQL
  • Support for GIS

    GIS provides the storage, computing, and indexing capabilities for spatial objects such as points, lines, planes, and complex spatial objects. GIS is widely applied in the transportation industry and can help quickly build spatial computing capabilities. GIS is supported since OceanBase Database V3.2.4. GIS in OceanBase Database adopts the quadtree-based indexing solution and supports the GIS data types of MySQL 8.0, the management and caching of spatial reference system (SRS) metadata, quadtree-based spatial indexes, single-value types (GEOMETRY, POINT, LINESTRING, and POLYGON), and multi-value types (MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, and GEOMETRYCOLLECTION). The spatial computing functions commonly used in MySQL 8.0 are also implemented. For more information, see Functions for spatial computing.

  • Support for MySQL binlog parsing

    The OceanBase CDC data synchronization solution supports MySQL binlogs and allows popular applications, such as Canal, Debezium, and Flink CDC, to generate and parse binlogs in OceanBase Database. The OBServer node must support binlog-related system variables such as binlog_format, binlog_row_image, log_bin, and server_uuid. The REPLICATION SLAVE and REPLICATION CLIENT privileges can be set. OceanBase CDC parses clogs in OceanBase Database into binlogs for subscription and consumption by downstream products. For more information, see binlog_row_image.

  • Addition of the DBMS_RESOURCE_MANAGER system package

    The DBMS_RESOURCE_MANAGER system package is added for creating and maintaining resource consumer groups, resource management plans, and binding rules of resource consumer groups. More functions are supported, such as CREATE_CONSUMER_GROUP, CREATE_PLAN, and SET_CONSUMER_GROUP_MAPPING.

Compatibility with Oracle
  • Addition of the DBMS_SCHEDULER system package

    The DBMS_SCHEDULER system package is added for managing scheduled tasks. More functions are supported, such as CREATE_JOB, CREATE_PROGRAM, and DEFINE_PROGRAM_ARGUMENT.

  • Supplementation of system package functions

    • The DBMS_SESSION.SET_CONTEXT function is supplemented for setting or resetting the value of the context attribute.
    • The DBMS_SESSION.CLEAR_CONTEXT function is supplemented for clearing the specified context.
    • The UTL_RAW.CAST_TO_BINARY_INTEGER function is supplemented for converting the RAW binary representation of a BINARY_INTEGER value into a BINARY_INTEGER value.

Kernel enhancements

  • Support for SQL rule-based resource isolation

    In real practice, more fine-grained control of resource isolation is required for business. For example, different SQL statements are executed by using different resource specifications for isolation. This helps allocate and isolate resources for business systems such as OLAP and OLTP, and reduces the mutual impact between business systems.

    OceanBase Database V3.2.4 supports creating resource groups and binding users to resource groups. When a user executes a business SQL statement, OceanBase Database allocates the corresponding resource group based on the predefined SQL rules to help the user define a business resource isolation plan. At present, the resource isolation plan applies only to CPU resources. For more information, see Multi-tenant resource isolation.

  • Support for the IPv6 protocol

    IPv6 is widely applied in customer projects as it gains popularity among communications network suppliers and terminal vendors. OceanBase Database V3.2.4 and related components, such as ODP and JDBC, support IPv6. OceanBase clusters support both IPv4 and IPv6 TCP/IP connections. Before you use IPv6, make sure that the operating system of your server is configured to support IPv6. For more information, see IS_IPV6.

  • Support for backup to OBS

    Backup and restore is a core feature for ensuring the high availability of OceanBase Database. OceanBase Database supports three backup media: Alibaba Cloud Network File System (NFS), Alibaba Cloud Object Storage Service (OSS), and Tencent Cloud Object Storage (COS). OceanBase Database supports backup to HUAWEI CLOUD Object Storage Service (OBS) since V3.2.4. You can specify the backup destination (backup_dest) to back up data and log files to OBS. For more information, see Preparations for backup.

  • Log optimization OceanBase Database V3.2.4 optimizes log output in the following aspects:

    • Log level definition: The DIAG log level is added. WARN and ERROR logs that do not need to be perceived by users are classified into DIAG logs. The levels are adjusted for O&M-oriented WARN and ERROR logs that need to be retained.

      Log level
      Intended audience
      Definition
      Original log level
      ERROR DBA or users The OBServer node cannot provide normal services. For example, the disk is full or the listening port is occupied. An ERROR log may also be generated when an error is returned during an internal check in the background. For example, 4377 indicates a DML defensive check error, and 4103 indicates a data checksum error. In this case, manual intervention is required. /
      WARN DBA or users An unexpected scenario occurs. The OBServer node can provide services, but the behavior is not as expected. For example, a write throttling warning. /
      INFO DBA or users System status changes. INFO
      EDIAG R&D Error diagnosis information for troubleshooting. This log level indicates an unexpected logical error. For example, function parameters are not as expected. ERROR
      WDIAG R&D Warning diagnosis information for troubleshooting. This log level indicates an expected error. For example, a function fails to return a value. WARN
      TRACE R&D Task-level diagnosis information. TRACE
      DEBUG R&D Debugging details. DEBUG
    • Error code association: Error messages are classified and error codes are improved. A response error code is defined for each warning and error. You can retrieve documents based on an error code to find the solution.

    • Throttling by error code: WDIAG logs are throttled by error code. For throttled logs, only the error code and the number of throttled logs are displayed. The diag_syslog_per_error_limit parameter is added for controlling this throttling feature. By default, 200 DIAG logs per second are allowed for each error.

    • Monitoring log removal: The dump tenant info, memory info, and easy stat log entries are removed from log files for separate management.

    • Log file self-description: The server address, host type, CPU type, operating system version, OBServer version, and time zone are recorded in the header of each log file.

  • Other feature enhancements

    • You can configure the transaction size by using the _max_trx_size parameter.
    • You can configure the number of login threads by using the sql_login_thread_count parameter.
    • You can set table-level parallel hints. For example, select /*+ parallel(t1, 8) */ from t1;.

Compatibility changes

Parameters

Parameter
Change type
Default value
New default value
Description
enable_cgroup New / True Specifies whether to enable the control group feature.
sql_login_thread_count New / 0 The number of threads for processing login requests. The default value is 0, which indicates that the number of threads is dynamically adjusted.
ob_query_switch_leader_retry_timeout New / 0us The longest retry time for a failed query. The default value is 0us, which indicates that the retry timeout check is disabled.
diag_syslog_per_error_limit New / 200 The number of diagnostic logs for each error code per second.
ob_esi_syslog_level Modified INFO WDIAG The log level of independent subprocesses.
syslog_level Modified INFO WDIAG The level of system logs.

System changes

Parameter
Change type
Recommended value
Description
binlog_format New ROW The supported binlog format. This parameter takes effect when log_bin is set to ON.
binlog_checksum New CRC32 The supported binlog checksum.
binlog_rows_query_log_events New OFF Specifies whether to write row query log events into the binlog. This parameter applies to the row-based logging.
log_bin New ON The supported binlog enabling status.
server_uuid New Generated upon tenant creation The instance UUID.

Behavioral changes

  • Differences between the new system log levels used in OceanBase Database V3.2.4 and the log levels in earlier versions:
    • The log levels are ERROR, WARN, INFO, EDIAG, WDIAG, TRACE, and DEBUG in descending order of priority.

    • The WARN log level in earlier versions changes to the WDIAG level in V3.2.4. Therefore, WARN logs in earlier versions are generated as ERROR logs in V3.2.4.

Upgrade notes

  • An upgrade from V3.2.1, V3.2.2, or V3.2.3 to V3.2.4 is supported. However, an upgrade from V3.2.3 BP6 and later to V3.2.4 is not supported.

  • An upgrade from V3.1.2 to V3.2.4 is supported. You must download the software packages V3.2.0, V3.2.1, V3.2.2, and V3.2.3, and upload them to OCP.

  • An upgrade from V2.2.77 is supported. You must upgrade OceanBase Database to V3.1.2 first and then to V3.2.4.

Recommended versions of tools

The following table describes the recommended versions of components used with OceanBase Database V3.2.4.

Component
Version
ODP V3.2.8
OCP V3.3.4
ODC V4.0.0
OMS V3.4.0
OBCI V2.0.2
ECOB V1.1.6
JDBC V2.2.11
OBClient V2.1.1.3

Considerations

The open_cursors parameter specifies the maximum number of open cursors that a session can have at once. The default value is 50. OceanBase Database V3.2.4 changes the maximum number of prepared statements for a single session. Therefore, if you upgrade your database to V3.2.4, you must determine whether to increase the value of open_cursors to avoid errors when prepared statements are executed.

Previous topic

V4.1.0
Last

Next topic

V3.2.3
Next
on this page
V3.2.4 BP4
Version information
Enhanced features
Behavioral changes
Parameter changes
System variable changes
Bug fixes
V3.2.4 BP3
Version information
Enhanced features
Behavioral changes
Parameter changes
System variable changes
Considerations
Bug fixes
V3.2.4 BP2
Version information
Enhanced features
Considerations
Bug fixes
V3.2.4 BP1
Version information
Enhanced features
Compatibility changes
Bug fixes
Considerations
V3.2.4
Version information
Overview
New features
Compatibility changes
Upgrade notes
Recommended versions of tools
Considerations