Notice
- Before you upgrade OceanBase Developer Center (ODC) from a version earlier than V4.2.0 to V4.2.4, you must read through the Considerations section in this topic.
- Before you use ODC V4.2.4, familiarize yourself with the descriptions in the Limitations topic.
Considerations
Data sources
In ODC V4.2.0 and later, the concept of connection configuration is replaced with data source.
In ODC V4.2.0 and later, private connections are migrated to the individual workspace and exist as data sources.
In ODC V4.2.0 and later, public connections are migrated to the team workspace and exist as data sources.
In ODC V4.2.0 and later, for the read-only and read/write accounts in original public connections, only the read/write accounts are retained after the upgrade.
User permissions
Starting from ODC V4.2.0, the private_connection and apply_connection roles are unavailable. In other words, the permissions of the two roles referenced by users no longer take effect after the upgrade to ODC V4.2.x.
Starting from ODC V4.2.0, the resource group feature is obsolete.
Starting from ODC V4.2.0, connection access permissions are obsolete. In ODC V4.2.x, database access control is implemented through project management.
System settings
- Starting from ODC V4.2.0, this feature is obsolete.
Ticket module
- Tickets initiated in versions earlier than ODC V4.2.0 can be viewed only on the
Initiated by Me tab.
- Tickets initiated in versions earlier than ODC V4.2.0 can be viewed only on the
Partitioning plans
- This feature is upgraded in ODC V4.2.0. After the upgrade to ODC V4.2.x, historical partitioning plans created in versions earlier than V4.2.0 will stop running.
SQL plans
- This feature is upgraded in ODC V4.2.0. After the upgrade to ODC V4.2.x, historical SQL plans created in versions earlier than V4.2.0 will stop running.
Task process
- Starting from ODC V4.2.0, this feature is obsolete. ODC V4.2.x provides the risk level module for equivalent effects.
Data desensitization
- This feature is upgraded in ODC V4.2.0. After the upgrade to ODC V4.2.x, the data desensitization configurations created in versions earlier than V4.2.0 no longer take effect.
Bastion host integration
- In ODC V4.2.2, account integration and automatic data source configuration are supported. At present, SQL approval integration is not supported and will be supported in later versions.
Session history
- Starting from ODC V4.2.0, this feature is obsolete. In ODC V4.2.x, the usage status of an SQL window is saved by default.
ODC V4.2.4-BP2
ODC V4.2.4-BP2 released in May 2024 aims to fix some specific bugs. For more information, see the Bug fixes section in this topic.
Version information
Current version: V4.2.4-BP2
Previous version: V4.2.4-BP
Release date: May 14, 2024
Supported upgrade path: You can directly upgrade ODC V2.0.0 and later to this version.
Bug fixes
Fixed the issue where a pending approval task issued before the upgrade will fail upon approval and execution after the upgrade.
Fixed the issue where the content of the signature key is lost after a notification channel is edited and saved.
Fixed the issue where the destination table does not exist when a data archiving task is executed in MySQL mode.
Fixed the issue where the
Interval field is not displayed in theConfigure partitioning strategy panel when a partitioning plan task is being created.Fixed the issue where the
Preview SQL button is not displayed in theConfigure partitioning strategy panel when a partitioning plan task is being created.Fixed the issue where the
Execution Records page is not paginated when you view the details of a partitioning plan task.Fixed the issue where generated partition names are incorrect if the expression for the custom partitioning strategy contains
last_partition_valueduring the execution of a partitioning plan task.Fixed the issue where the
Execution Records page is not paginated when you view a data archiving task.Fixed the issue where you cannot connect to an OceanBase Database Proxy (ODP) Sharding data source.
Fixed the issue where the owner of a project cannot be deleted after the project is archived.
Fixed the issue where the execution of a partitioning plan task for OceanBase Database of a version earlier than V3.x fails.
Fixed the issue where no error is returned if you use an OceanBase Cloud connection string and click
Test Connection when you create an OceanBase MySQL data source.Fixed the issue where the SQL console cannot be opened when OAuth is integrated with a bastion host.
Fixed the issue where the socket times out when a result set is exported. The timeout period of a socket is 60 seconds.
Fixed the issue where after you change a timed out data source to a normal data source, data synchronization from the new data source fails.
ODC V4.2.4-BP
ODC V4.2.4-BP released in April 2024 aims to fix some specific bugs. For more information, see the Bug fixes section in this topic.
Version information
Current version: V4.2.4-BP
Previous version: V4.2.4
Release date: February 15, 2024
Supported upgrade path: You can directly upgrade ODC V2.0.0 and later to this version.
Bug fixes
Fixed the issue where data lifecycle management (DLM) task logs cannot be viewed if an IP address is used for access in a multi-node deployment environment.
Fixed the issue where the
ob_query_timeoutparameter in the startup script does not take effect during PL debugging.Fixed the issue where ODC fails to start if no partitioning plan task is configured or the partitioning plan task is disabled.
Fixed the issue where a
.zippackage exported by using ODC cannot be imported into the database by using ODC.Fixed the issue where the original channel information is not cleared after the notification channel type is changed.
Fixed the issue where after you view the details about a notification channel, the information about the channel is displayed when you click
Create Notification Channel .Fixed the issue where an auto-completion error is triggered in the SQL window if you do not have permissions on MySQL databases.
Fixed the issue where task approval is affected by the failure in generating a message notification.
ODC V4.2.4
ODC V4.2.4 released in April 2024 aims to enhance the ease of use and SQL development capabilities, refine permission management, and provide data lifecycle management and message notification features.
Version information
Current version: V4.2.4
Previous version: V4.2.3-BP
Release date: April 3, 2024
Supported upgrade path: You can directly upgrade ODC V2.0.0 and later to this version.
Feature updates
Data sources
This version supports OceanBase Database V4.2.2.
This version supports Oracle data sources in SQL development, import and export, data desensitization, object management, and change approval.
This version supports Doris data sources in SQL development, import and export, data desensitization, table object management, session management, operations based on a command-line window, and change approval.
SQL development
ODC V4.2.4 is built in with 71 common O&M snippets. This way, ODC can automatically complete the built-in snippets in the SQL window and match the database type and version.
The SQL auto-completion feature is supported for data dictionaries and performance views.
You can change the cases of schema names, table names, and column names in Oracle mode, as in PL/SQL Developer.
Schema comparison
The schema comparison feature is provided for you to compare the schemas of objects in homogeneous databases, such as OceanBase databases in Oracle mode, OceanBase databases in MySQL mode, or MySQL databases.
You can compare the schemas of only table objects in terms of columns, primary keys, constraints, indexes, partitions, and table attributes.
You can preview the schema comparison results in DIFF mode or in a change script.
You can download the SQL preview results and directly initiate a schema synchronization task.
Lock-free schema changes
You can add middle columns to tables.
For OceanBase Database in Oracle mode, table schema changes include index changes.
For OceanBase Database in Oracle mode, you can delete the primary key for a table that has a
UNIQUEconstraint.
Partitioning plans
You can configure a partitioning plan for an OceanBase database in Oracle mode.
The partitioning key column supports the DATE and TIMESTAMP data types. Other columns support the NUMBER, CHAR, and VARCHAR2 data types.
The page for configuring partitioning strategies is redesigned. If you choose the
Custom mode, you can use an expression to configure the logic for calculating the upper bound of any partition. You can also preview the SQL statement of a partitioning plan.You can separately configure the partition deletion cycle and partition creation cycle.
Data archiving and cleanup
You can configure a data cleanup task for an OceanBase database in Oracle mode.
You can configure a data archiving task to archive data between two OceanBase Oracle data sources.
When a data archiving or cleanup task is initiated, you can preview the SQL statements to be actually executed for the task.
You can define the name of the destination table in a data archiving task.
You can choose whether to use the primary key for data cleanup. If the primary key is not used, the system will match the to-be-deleted data based on indexes. During task execution, data does not need to be sharded based on the primary key. This can significantly improve the cleanup efficiency in specific scenarios.
Security specifications
Environment customization is supported.
You can configure different SQL window specifications and SQL check rules in a custom environment based on your business scenarios.
When you create a custom environment, you can select the initial configurations of an existing environment.
You can configure different label styles to identify different environments.
Three SQL check rules are added.
Reserved keywords cannot be used as object names.
A schema change statement that contains the
OFFLINEkeyword will lock the table, which affects businesses. We recommend that you use a lock-free schema change statement.Executing a
TRUNCATEstatement on a table in a production environment is highly risky.
Default values in risk identification rules for security specifications are optimized to ensure out-of-the-box experience in a production environment.
A risk prompt is added to the SQL window specifications, which will be displayed when you enable PL debugging in a production environment.
Database-level access control
Database-level access control is provided for project collaboration.
Database access permissions are classified into query, export, and change permissions. You can grant permissions by type and set a validity period for the granted permissions.
By default, the project developer has the access permission on all databases in the project, which is consistent with earlier versions.
The project participant role is provided. By default, a project participant does not have the access permission on any databases in the project.
A participant can submit a ticket to apply for the database access permission.
The administrator can grant the database access permission to a participant.
The administrator can revoke the database access permission from a participant.
Message notification
The message notification feature is provided for project collaboration.
Message notification is supported for events of the following types: ticket approval status change, task execution status change, and task scheduling failure.
The notification scope can be configured based on rules, and the message content can be configured based on templates.
Common webhook channels such as DingTalk, Feishu, and WeCom are supported as notification channels. You can also customize HTTP requests. Throttling is supported for message notification.
System integration
- Lightweight Directory Access Protocol (LDAP) is supported for single sign-on (SSO).
Ease-of-use improvements
The database selection component is optimized. Specifically, the database selection interactions are unified across pages. Fuzzy match is supported in search by project name, data source name, or database name.
The SQL window provides a location key to help you quickly locate the current database in the resource tree.
Preference settings are escalated to a level-1 feature. Specifically, you can click
Settings in the lower-left corner of the ODC homepage and specify the preference settings on the page that appears. The following preference items are added:Whether to enable end-to-end tracing for SQL execution
Whether to skip the error and continue when an error occurs during SQL execution
Custom theme and font size for the editor
Shortcut key for running an SQL statement in the editor
Default workspace
Whether to enable user behavior analysis
JVM parameter for configuring the memory size (specific for Client ODC)
An availability tag is provided for databases in a project. An unavailable database in the database list is attached with an unavailability tag, and the reason for unavailability is displayed.
The interactions in initiating a ticket are optimized.
You can directly initiate tickets for databases in the resource tree.
You can re-initiate a common task ticket, such as data mocking, database change, data archiving, data cleanup, and database permission application. You can also modify the task parameters when you re-initiate a task ticket.
Detection for index change statements is provided for database changes. If an index change statement is included in a database change, the timeout period is automatically adjusted to 120 h to ensure that the execution of the index change statement will not fail due to timeout.
Client ODC supports custom JVM settings in personal settings. The memory size can be limited to 1 GB.
Client ODC supports exporting data greater than 4 GB in size.
UI content strings are optimized.
Bug fixes
Connection sessions
Fixed the issue where resources are leaked because references are not promptly cleared after a connection session expires. Resource leakage may cause the memory usage to increase.
Fixed the issue where the API is stuck and no responses are returned when you execute an SQL statement or view table data in a scenario involving frequent operations.
Fixed the issue where the connection to an OceanBase Oracle data source may fail if the case of the username is changed when you configure the data source.
Fixed the issue where the error code 404 is occasionally returned when you start an SQL window.
SQL execution
Fixed the issue where the status of the
Commit andRoll Back buttons is inconsistent with the actual transaction status when you view data of OceanBase Database V4.2.0.Fixed the issue where an SQL statement that contains a single-line comment fails to be executed.
Fixed the issue where the calculated offset is incorrect when the last SQL statement does not end with a delimiter.
Fixed the issue where not all spaces are output during execution of a procedure in a database management system (DBMS) package.
Fixed the issue where the number sign (
#) and dollar sign ($) disappear from an SQL statement after it is formatted in the SQL window.Fixed the issue where the auto-completion feature is unavailable when you edit the data of a MySQL data source in the SQL window.
Result sets
Fixed the issue where a long time is taken to concurrently modify multiple rows in the result set.
Fixed the issue where the precision of data of the DATETIME type is not displayed in OceanBase Database in MySQL mode.
Fixed the issue where the UI may be frozen when you view binary large object (BLOB) fields by switching between the text and hexadecimal formats.
Table objects
Fixed the issue where the sequences of column names are inconsistent between index views and constraint views.
Fixed the issue where you cannot view details about tables of MySQL 5.6.
Fixed the issue where you cannot view details about tables of Sofa ODP.
Fixed the issue where you cannot change a NOT NULL field to NULL when you edit the schema of a table.
Fixed the issue where only one among multiple maximum values in a partitioned table is displayed.
Fixed the issue where the button for deleting the primary key of the table is grayed out and cannot be clicked.
Import and export
Fixed the issue where a task exception occurs because the SQL statement is incorrectly split when a comment contains a semicolon (
;).Fixed the issue where an export task fails when the type name is in lowercase.
Fixed the issue where exporting trigger objects fails.
Fixed the issue where an export task fails when the name of a function contains special characters.
Fixed the issue where the index name is prefixed with the database name when indexes are exported in Oracle mode.
Fixed the issue where the delimiter
$$is concatenated with the table name when schemas of stored procedures are exported.Fixed the issue where the status of an export task is displayed as
Succeeded when the task is aborted after it is created.Fixed the issue where the package body is not displayed in the object type in the task details when a package is exported.
Fixed the issue where importing a CSV file that contains data of the DATE type fails.
Lock-free schema changes
- Fixed the issue where an online schema change (OSC) task fails due to a syntax error when the input SQL statement contains comments.
Projects and tickets
Fixed the issue where the text of the prompt displayed upon ticket creation success is incorrect.
Fixed the issue where the SQL window crashes when you attempt to switch to another project in the drop-down list.
Database changes
- Fixed the issue where the rollback content is not displayed during the rollback when the rollback content is an attachment.
SQL check
Fixed the issue where a null pointer exception occurs when virtual columns exist.
Fixed the issue where the operation of deleting the primary key by using the
DROP CONSTRAINTstatement is not detected.Fixed the issue where specific
ALTERstatements will trigger null pointer exceptions.
SQL plans
Fixed the issue where terminating an SQL execution plan by clicking the corresponding button fails.
Fixed the issue where the status of a ticket that failed to execute SQL precheck cannot be changed to
Precheck Failed .
Partitioning plans
- Fixed the issue where DDL statements cannot be executed on partitions when the schema name or table name is in lowercase.
Data archiving and cleanup
Fixed the issue where an excessive number of threads will be occupied by a large number of tasks if the database connection pool is not released when you exit a task.
Fixed the issue where massive logs are generated because the connection pool will retry repeatedly when the database connection attempt fails.
Fixed the issue where when a unique key serves as a data cleanup condition, the use of an improper index results in a slow SQL statement.
Fixed the issue where after a rollback task is triggered upon completion of data archiving, the ticket status is displayed as
Completed while a subtask is still running.Fixed the issue where the task status is not updated if you cancel data archiving tasks that are concurrently scheduled.
Fixed the issue where archiving fails when a reserved database keyword is used as the name of a column.
Fixed the issue where updating the execution records will fail when you create a data archiving task that involves a large number of tables.
Users and permissions
- Fixed the issue where the batch import of user information will fail if role information is included in the user information.
Data security
- Fixed the issue where the data masks are inconsistent when a nested CASE-WHEN clause is used.
System integration
- Fixed the issue where garbled characters occur when the request body contains Chinese characters.
DB browser
Fixed the issue where a table creation SQL statement that contains indexes is not identified as a creation statement.
Fixed the issue where DDL operations cannot be reversely synchronized in Oracle mode.
Fixed the issue where data in a table that contains a column with default values cannot be retrieved in Oracle Database 11g.
Fixed the issue where the listTables() function fails to accurately return tables in the specified mode.
Fixed the issue where the listTables() function is not supported for OceanBase Database of a version earlier than V2.2.30.
Fixed the issue where strings not enclosed with single quotation marks (' ') cannot be recognized in the current schema design for tables in OceanBase Database in MySQL mode.
OceanBase SQL parser
- Fixed the issue where an
INSERTstatement for a table named in the'json_table'format is incorrectly parsed.
- Fixed the issue where an
Known issues
Client ODC cannot be installed in a directory whose name contains Chinese characters.
The exported data file and content are incorrectly displayed when the table contains virtual columns.
In Web ODC, the maximum size of schemas or data imported in a batch cannot exceed 2 GB. Otherwise, the upload cannot be performed.
In Web ODC, the maximum size of schemas or data exported in a batch cannot exceed 2 GB. The excess part will be lost after the export.
In the details of an export task, the total number of records of the exported objects is not accurate but depends on the views of OceanBase Database.
If you do not set the
ob_enable_trace_logparameter toon, only the execution plans of the SQL statements executed for the first time are displayed.
Acknowledgments
Our acknowledgments go to partners in OceanBase Community for their contributions to this version.
We highly appreciate Shusheng technical team @isadba for their contribution to the support for Doris data sources.