This topic describes the general process for troubleshooting ODC.
Step 1: Identify the issue
Briefly describe the issue. A brief description of the issue helps you identify the specific scenario, locate the cause, and find out the solution or workaround for the issue. The description mainly covers:
Scope of impact: the name of the customer experiencing the issue and whether all users or a specific user was affected.
Triggering scenario: the scenario where the issue occurs and whether the issue occurs occasionally.
Symptom: the issue and related information, such as the error message and log information.
Examples:
[Customer name] The command-line window of client ODC V3.1.2 fails to open in Windows, and the error message xxx is reported.
[Customer name] The error message xxx is reported when the administrator deletes a role in ODC V3.2.1.
[Customer name] After ODC is upgraded to V3.2.3, the Web service becomes unavailable, and the log contains the error message xxx.
After you identify the issue, you can check whether it is a known issue in OceanBase Knowledge Base.
Step 2: Analyze the issue
The focus of the troubleshooting process may vary with the issue type. General ODC issues can be classified into the following types:
ODC becomes unavailable after deployment or upgrade. For this type, mainly check the MetaDB configurations and ODC logs.
ODC becomes unavailable in the running process. For this type, mainly check ODC logs and ODC server status.
Some features are unavailable. For this type, mainly check the ODC version and ODC account permissions.
The results of some features are not as expected. For this type, mainly check the OceanBase version and OceanBase account permissions.
The overall performance is degraded. For this type, mainly check the ODC server status and Java Virtual Machine (JVM) status of ODC.
The performance of some features is not as expected, mainly the SQL performance of OceanBase Database.
Analysis based on error information
If an error message is displayed in ODC, you can analyze and resolve the issue based on the error message.
Analysis based on logs
If you cannot locate the cause of the issue based on the error message, analyze the issue based on logs. For more information, see View end-to-end ODC-related logs
We recommend that you add unique flags to facilitate analysis on the end-to-end logs when you reproduce an issue.
For example, for the issue of SQL statement execution timeout, you can add a Hint flag to the original SQL statement when you reproduce the issue. Then, you can simply search for the keyword when you retrieve logs:
SELECT /*+ trace_id=ABCDEFGHIJKLMN234567 */ * FROM table;
Comparative analysis
Comparative analysis is a common way to narrow down the scope of an issue by using the dichotomy method. Comparative analysis in OceanBase Database covers the following points:
Compare behaviors of OceanBase Database in MySQL and Oracle modes respectively with MySQL and Oracle databases to determine whether the features of OceanBase Database are compatible with the MySQL and Oracle databases
Compare direct connection to an OBServer node, connection to an ODP IP address, and connection to a load balancing IP address, such as F5 or Server Load Balancer (SLB), to rule out link layer faults
Compare different versions of OceanBase Database to rule out bugs in certain versions
Compare behaviors under different database accounts to rule out permission issues
Compare behaviors between OBClient and ODC SQL console
Step 3: Contact OceanBase Technical Support
If you cannot identify the issue by using the preceding methods, contact OceanBase Technical Support.
Enterprise Edition: You can obtain technical support from OceanBase Technical Support or an ecosystem partner. For more information, see OceanBase support and services.
Community Edition: You can obtain technical support in the Q&A section of the OceanBase Database Community Edition website or on the Issues tab of OceanBase on GitHub.
Collect information
To help OceanBase Technical Support understand and analyze the issues, you must provide the necessary information when submitting a ticket.
Basic information
For issues that are easy to reproduce, you can provide only the basic information. The following table describes the basic information items.
| Item | Description |
|---|---|
| Customer name | The name of the customer experiencing the issue. |
| User role | The role of a user, such as the DBA, developer, testing engineer, and O&M engineer. |
| ODC version |
|
| Deployment architecture of web ODC |
|
| Connection with the target OceanBase tenant |
|
| Screenshot or video of the issue |
|
| Related messages and logs |
|
| Network packet capture | Logs do not record all information. Sometimes you must capture network packets to determine the communication content between different components. |
Auxiliary information
For issues that are not easy to reproduce or analyze, you may need to provide other information.
| Item | Description |
|---|---|
| Logs | ODC program logs, ODC JVM GC logs, OBServer logs, and ODP logs. |
| Server status | CPU, memory, network, and disk status, and historical monitoring data if any. |
| Status of the target OceanBase tenant | Performance metrics and slow SQL queries, which can be obtained in OCP. |
Submit an issue
You can submit an issue in the Q&A section of the OceanBase Database Community Edition website or on the Issues tab of OceanBase on GitHub.