When you use Lindorm SQL to access LindormTable or LindormTSDB, the system returns error codes to indicate exceptions or program errors. Search for an error code in the tables on this page to find the corresponding error message and resolution.
Common errors
The following error codes are compatible with some MySQL server-side error codes. If you are familiar with MySQL application development, you can apply the same exception-handling patterns here.
SQLSTATE is a specification defined in the SQL-92 standard that is used to classify and handle SQL-level errors and exceptions in applications.
| Error code | SQLSTATE | Error message format | Resolution |
|---|---|---|---|
| 1005 | HY000 | Can't create table '%s' | Check whether the CREATE TABLE statement is correct. |
| 1006 | HY000 | Can't create database '%s' (errno: %d - %s) | Check whether the input parameters are correct based on the error message. |
| 1007 | HY000 | Can't create database '%s'; database exists | The database already exists. Use a different name. |
| 1008 | HY000 | Can't drop database '%s'; database doesn't exist | The database does not exist. Provide the correct database name. |
| 1009 | HY000 | Error dropping database (can't delete '%s', errno: %d - %s) | Check the error message for the cause. If the issue persists, contact Lindorm technical support. |
| 1030 | HY000 | Got error %s from storage engine: %s | An uncategorized storage engine error occurred. Save the error details and contact Lindorm technical support. |
| 1040 | 08004 | Too many connections (current limit: %d) | The number of connections on a single node has reached the limit. Retry the connection. If all nodes are at capacity, review how your application manages connections. To increase the limit for wide tables, use modify the maximum number of connections for wide tables. Default limits: SQL engine versions earlier than 2.7.0.0: 1,000 connections per node. SQL engine versions 2.7.0.0 and later: 4,000 connections per node. |
| 1043 | 28000 | Bad handshake: %s | Connection initialization over the MySQL protocol failed. Troubleshoot based on the error details. If the issue persists, contact Lindorm technical support. |
| 1045 | 28000 | Access denied for '%s' | Authentication failed. Verify the user credentials and try again. |
| 1046 | 3D000 | No database selected | No database is specified in the connection. Update the connection settings to explicitly specify a database. |
| 1049 | 42000 | Unknown database '%s' | The database does not exist. Specify the correct database name. |
| 1050 | 42S01 | Table '%s' already exists | The table already exists. Use a different table name. |
| 1054 | 42S22 | Unknown column '%s' | The column name does not exist. Verify that all column names in the SQL statement are correct. |
| 1060 | 42S21 | Duplicate column name '%s' | A column name is specified more than once. Remove the duplicate column names from the SQL statement. |
| 1064 | 42000 | You have an error in your SQL syntax; %s | The SQL statement has a syntax error. Refer to the SQL reference and correct the statement. |
| 1082 | 42S12 | Table '%s' has no index like the one used in CREATE INDEX; recreate the table | The table does not have an index compatible with the CREATE INDEX statement. Recreate the table. |
| 1146 | 42S02 | Table '%s.%s' doesn't exist | The table does not exist. Verify the table name. |
| 1170 | 42000 | BINARY/CHAR column '%s' used in column specification without a key length | The length is not specified for a BINARY or CHAR column. Update the CREATE TABLE statement to explicitly specify the length. |
| 1211 | 42000 | '%s'@'%s' is not allowed to create new users; %s | The current user does not have permission to create new users. Grant the required permission first. |
| 1227 | 42501 | Access denied: %s | The user does not have sufficient privileges on the target object. Verify and grant the required privileges. |
| 1243 | HY000 | Unknown prepared statement id (%d) | The prepared statement was not found. This can occur when binding parameters before preparing the statement. Prepare the statement again. If the issue persists, contact Lindorm technical support. |
| 1251 | 08004 | Client does not support authentication protocol requested by server; consider upgrading MySQL client | The client driver does not support the authentication method required by the server. Refer to the Lindorm MySQL protocol compatibility documentation. Explicitly specify a supported authentication method or upgrade the client driver. |
| 1295 | HY000 | This command is not supported in the prepared statement protocol yet | Multiple statements in a single prepared statement call are not supported. Update your prepared statement logic to use one statement at a time. |
| 1390 | HY000 | Prepared statement contains too many placeholders | The SQL statement has too many parameters. A single MySQL protocol message supports a maximum of 65,535 parameters. Reduce the number of parameter placeholders in the prepared statement. |
| 1461 | 42000 | Can't create more than max_prepared_stmt_count statements (current value: %d) | The number of simultaneously prepared statements on a single node has reached the limit (default: 10,000). Review your application logic to avoid preparing too many statements at once. |
| 1470 | HY000 | String '%s' is too long for %s (should be no longer than %d) | The object name exceeds the maximum length. Rename the data object to meet the length limit shown in the error message. |
| 1815 | HY000 | Internal error: %s | An uncategorized internal error occurred. Contact Lindorm technical support. |
Extended errors
The following error codes cover Lindorm-specific exception scenarios. Handle these errors in your application based on the SQLSTATE class and the resolution in each row. If you cannot resolve an error, contact Lindorm technical support (DingTalk ID: s0s3eg3).
| Error code | SQLSTATE | Error message format | Resolution |
|---|---|---|---|
| 1973 | 42000 | Can't create user '%s'; it already exists | The user already exists. Check the list of existing users. |
| 1974 | 42000 | Can't drop user '%s'; it doesn't exist | The user does not exist. Check the list of existing users. |
| 1975 | 42000 | Can't alter user '%s'; it doesn't exist | The user does not exist. Check the list of existing users. |
| 1976 | 42000 | Can't alter user '%s'; %s | The user cannot be modified. Check the error message for the specific cause. If the issue persists, contact Lindorm technical support. |
| 3002 | 42L01 | Inconsistent usage of database '%s' and '%s' | The target database differs from the database of the current connection. Update the connection properties or use the USE statement to switch to the correct database. |
| 3024 | HY000 | Query execution was interrupted, maximum statement execution time exceeded | The query timed out. Retry the operation. If timeouts persist, contact Lindorm technical support. |
| 3025 | HY000 | Query execution was canceled | The query was canceled while fetching results. Retry the query. |
| 3163 | HY000 | %s | The user already exists. Check the list of existing users. |
| 8000 | HY000 | Can't alter database '%s' (errno: %d - %s) | The database cannot be modified. Check whether the input parameters are correct based on the error message. |
| 8001 | HY000 | Can't create continuous query '%s' (errno: %d - %s) | The continuous query cannot be created. Check whether the input parameters are correct based on the error message. |
| 8002 | HY000 | Can't create continuous query '%s'; continuous query exists | The continuous query already exists. Use a different name. |
| 8004 | HY000 | Continuous query '%s.%s' doesn't exist | The continuous query does not exist. Verify the name. |
| 8005 | HY000 | Table '%s' not found | The table does not exist. Verify the table name. |
| 8006 | HY000 | Query failed; %s | The query failed. Check the error message for the cause. If the issue persists, contact Lindorm technical support. |
| 8007 | HY000 | Insert failed; %s | The write operation failed. Check the error message for the cause. If the issue persists, contact Lindorm technical support. |
| 8008 | HY000 | Quota exceeded; %s | A resource quota was exceeded. For query operations, narrow the time range or add WHERE conditions to reduce the data volume. For write operations, limit the transactions per second (TPS). |
| 8009 | HY000 | Can't drop predownsample; %s | The pre-downsampling rule cannot be deleted. Check the error message for the cause. If the issue persists, contact Lindorm technical support. |
| 8010 | HY000 | Can't show predownsample; %s | The pre-downsampling rule cannot be displayed. Check the error message for the cause. If the issue persists, contact Lindorm technical support. |
| 8011 | 42000 | Unknown data type: %s | The actual data type conflicts with the expected type during reading or writing. Check the error message for the specific cause. If the issue persists, contact Lindorm technical support. |
| 8012 | 42000 | Illegal operation: %s | The SQL statement is incorrect or the provided data is invalid. Review the statement against the SQL syntax documentation. |
| 8013 | 42000 | Cannot grant privilege '%s' to: %s; %s | Granting the privilege failed. Check the error message for the cause. |
| 8014 | 42000 | Cannot revoke privilege '%s' to: %s; %s | Revoking the privilege failed. Check the error message for the cause. |
| 8015 | HY000 | Failed to alter parameter; %s | The system configuration could not be modified. Check the error message for the cause. |
| 8016 | HY000 | Failed to show parameter; %s | The system configuration could not be displayed. Check the error message for the cause. |
| 8017 | 42611 | Column name "%s" conflicts with a system column name | The column name in the Data Definition Language (DDL) statement conflicts with a system hidden column name. Rename the column based on the details in the error message. |
| 8018 | 42000 | DECIMAL column '%s' type should be specified with precision and scale | The DECIMAL data type in the DDL statement is missing precision and scale values. Update the statement to specify both. |
| 8100 | 08003 | The connection does not exist; %s | The connection session has been released by the server. Re-establish the connection. |
| 9000 | HY000 | Server internal error; %s | An internal server error occurred. Contact Lindorm technical support. |
| 9001 | 0A000 | UNSUPPORTED: %s | The SQL syntax is not supported. Check the SQL documentation and avoid unsupported syntax. |
| 9002 | HY000 | Function %s can only be used in domain-specific dialect (Time-series, etc.) | The function is only available in a specific dialect, such as LindormTSDB. Review the SQL statement against the correct dialect documentation. |
| 9003 | 28000 | The authentication method %s cannot apply to the old-fashion user, please consider to use another method. | The authentication method is not compatible with users created on older engine versions. Refer to Develop applications using the MySQL protocol for compatibility details. Explicitly specify a supported authentication method or upgrade the client driver. |
| 9004 | 08004 | The authentication method %s not available for the current deployment, please consider to use another method. | The authentication method is not available for the current instance deployment. Refer to the Lindorm MySQL protocol compatibility documentation. Explicitly specify a supported authentication method or upgrade the client driver. |
| 9006 | HY000 | Analytical processing error; %s | An error occurred during analytical query execution. Save the error details and contact Lindorm technical support. |
| 9010 | XX000 | The storage engine request illegal: %s | An invalid internal storage engine communication request occurred. Save the error details and contact Lindorm technical support. |
| 9011 | HY000 | Database protocol error: %s | A MySQL protocol message error occurred. Save the error details and contact Lindorm technical support. |