When you use Lindorm SQL to access LindormTable or LindormTSDB, the system returns error codes to indicate exceptions or program errors. You can search for an error code in the tables in this topic to find the corresponding error message and suggested solution.
Common errors
The error codes in the following table are compatible with some server-side error codes in MySQL. You can handle exceptions based on your experience in developing MySQL applications. If you encounter an error that you cannot handle, contact Lindorm technical support (DingTalk ID: s0s3eg3).
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 | Suggestion |
1005 | HY000 | Can't create table '%s' | The table cannot be created. Based on the error message, check whether the CREATE TABLE statement is used correctly. |
1006 | HY000 | Can't create database '%s' (errno: %d - %s) | The Database cannot be created. Based on the error message, check whether the input parameters are correct. |
1007 | HY000 | Can't create database '%s'; database exists | The Database already exists. Use another name to create the Database. |
1008 | HY000 | Can't drop database '%s'; database doesn't exist | The Database does not exist and cannot be deleted. Provide the correct Database name. |
1009 | HY000 | Error dropping database (can't delete '%s', errno: %d - %s) | Failed to delete the Database. Find the cause of the failure from the error message. If the issue persists, contact Lindorm technical support. |
1030 | HY000 | Got error %s from storage engine: %s | An uncategorized error occurred in the storage engine. Save the error information from the placeholder and contact Lindorm technical support for assistance. |
1040 | 08004 | Too many connections (current limit: %d) | The number of connections on a single node exceeds the limit. You can try to create the connection again. However, if the number of connections on each node of the instance reaches the limit, review how your business code uses connections. You can also use an SQL statement to modify the maximum number of connections for wide tables. Important The default maximum number of connections on a single node is as follows:
|
1045 | 28000 | Access denied for '%s' | Authentication failed. Confirm that the user's authentication information is correct and enter it again. |
1043 | 28000 | Bad handshake: %s | The initialization of a connection over the MySQL protocol failed. Troubleshoot the issue based on the details in the message. If the issue persists, contact Lindorm technical support for assistance. |
1046 | 3D000 | No database selected | No Database is specified in the connection operation. Review the connection settings and explicitly specify a Database. |
1049 | 42000 | Unknown database '%s' | Unknown Database. Specify the Database that you want to access. |
1050 | 42S01 | Table '%s' already exists | The table already exists. Use another table name. |
1054 | 42S22 | Unknown column '%s' | The operation was performed on an unrecognized column name. Confirm that the column names explicitly specified in the SQL statement exist. |
1060 | 42S21 | Duplicate column name '%s' | A duplicate column name is specified in the statement. Confirm that the column names explicitly specified in the SQL statement are not duplicates. |
1064 | 42000 | You have an error in your SQL syntax; %s | The SQL statement has a syntax error. Correct the statement by referring to the SQL syntax documentation. For more information, see SQL reference. |
1082 | 42S12 | Table '%s' has no index like the one used in CREATE INDEX; recreate the table | The table does not have an index similar to the one used in the CREATE INDEX statement. Recreate the table. |
1146 | 42S02 | Table '%s.%s' doesn't exist | The table does not exist. Check whether the entered name is correct. |
1170 | 42000 | BINARY/CHAR column '%s' used in column specification without a key length | The length is not specified for some data types. Review the CREATE TABLE statement and explicitly specify the length for types such as BINARY or CHAR. |
1211 | 42000 | '%s'@'%s' is not allowed to create new users; %s | The current user does not have the permissions to create new users. Request sufficient permissions for the current user first. |
1227 | 42501 | Access denied: %s | Confirm the actual permissions of the user. Make sure the user has sufficient permissions on the object to be accessed. |
1243 | HY000 | Unknown prepared statement id (%d) | The required prepared statement is not found. This exception can occur when you prepare a statement before you bind dynamic parameters. 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 | When connecting to Lindorm over the MySQL protocol, the client driver does not support the authentication method that the server requires. Refer to the Lindorm documentation about MySQL protocol compatibility. Explicitly specify a supported authentication method or upgrade the client driver. |
1295 | HY000 | This command is not supported in the prepared statement protocol yet | Specifying multiple statements at the same time is not supported for prepared statements. Modify how you specify the prepared statements. |
1390 | HY000 | Prepared statement contains too many placeholders | The SQL statement contains too many parameters. A message in the MySQL communication protocol can transmit a maximum of 65,535 SQL parameters. Recheck the precompiled SQL statement to ensure that the number of parameter placeholders does not exceed 65,535. |
1461 | 42000 | The number of statements prepared on a single node at the same time exceeds the limit. The default limit is 10,000. Review your application and modify the logic for preparing SQL statements to avoid preparing too many statements at once. | |
1470 | HY000 | String '%s' is too long for %s (should be no longer than %d) | The specified object name is too long. Modify the name of the data object based on the length indicated in the error message. |
1815 | HY000 | Internal error: %s | An uncategorized internal exception occurred. Contact Lindorm technical support for assistance. |
Extended errors
The following table lists extended error codes for specific exception scenarios in Lindorm. You can handle these errors in your business code based on the provided suggestions and SQLSTATE values. If you cannot handle an error, contact Lindorm technical support (DingTalk ID: s0s3eg3).
Error code | SQLSTATE | Error message format | Suggestion |
1973 | 42000 | Can't create user '%s'; it already exists | You are trying to create a user that already exists. Check the existing users. |
1974 | 42000 | Can't drop user '%s'; it doesn't exist | You are trying to delete a user that does not exist. Check the existing users. |
1975 | 42000 | Can't alter user '%s'; it doesn't exist | You are trying to modify a user that does not exist. Check the existing users. |
1976 | 42000 | Can't alter user '%s'; %s | The specified user cannot be modified. Troubleshoot the issue based on the content of the error message. If the issue persists, contact Lindorm technical support for assistance. |
3002 | 42L01 | Inconsistent usage of database '%s' and '%s' | The target database of the current operation is different from the database of the current connection. Modify 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 the timeout issue persists after retries, contact Lindorm technical support for assistance. |
3025 | HY000 | Query execution was canceled | The query for which results are being fetched was aborted elsewhere. Retry the query operation. |
3163 | HY000 | %s | The user already exists. Check the existing users. |
8000 | HY000 | Can't alter database '%s' (errno: %d - %s) | The Database cannot be modified. Based on the error message, check whether the input parameters are correct. |
8001 | HY000 | Can't create continuous query '%s' (errno: %d - %s) | The continuous query cannot be created. Based on the error message, check whether the input parameters are correct. |
8002 | HY000 | Can't create continuous query '%s'; continuous query exists | The continuous query already exists. Use another name to create the query. |
8004 | HY000 | Continuous query '%s.%s' doesn't exist | The continuous query does not exist. Check whether the entered name is correct. |
8005 | HY000 | Table '%s' not found | The table does not exist. Check whether the table name is correct. |
8006 | HY000 | Query failed; %s | The query failed. Analyze the cause of the failure based on the error message. If the issue persists, contact Lindorm technical support for assistance. |
8007 | HY000 | Insert failed; %s | The write operation failed. Analyze the cause of the failure based on the error message. If the issue persists, contact Lindorm technical support for assistance. |
8008 | HY000 | Quota exceeded; %s | The resource quota is exceeded. Handle the error based on the error message. If the operation is a data query, narrow the query time range or add a WHERE condition to reduce the amount of data queried. If the operation is a data write, limit the write transactions per second (TPS). |
8009 | HY000 | Can't drop predownsample; %s | The specified pre-downsampling rule cannot be deleted. Analyze the cause of the failure based on the error message. If the issue persists, contact Lindorm technical support for assistance. |
8010 | HY000 | Can't show predownsample; %s | The specified pre-downsampling rule cannot be viewed. Analyze the cause of the failure based on the error message. If the issue persists, contact Lindorm technical support for assistance. |
8011 | 42000 | Unknown data type: %s | Unrecognized data type. The actual data type conflicts with the expected data type during data reading or writing. Handle the error based on the specific cause in the error message. If the issue persists, contact Lindorm technical support for assistance. |
8012 | 42000 | Illegal operation: %s | The SQL statement is used incorrectly, or the data provided with the statement is invalid. Review the SQL statement against the syntax documentation. |
8013 | 42000 | Cannot grant privilege '%s' to: %s; %s | Failed to grant the permission. Analyze the cause of the failure based on the error message. |
8014 | 42000 | Cannot revoke privilege '%s' to: %s; %s | Failed to revoke the permission. Analyze the cause of the failure based on the error message. |
8015 | HY000 | Failed to alter parameter; %s | Failed to modify the system configuration. Analyze the cause of the failure based on the error message. |
8016 | HY000 | Failed to show parameter; %s | Failed to display the system configuration. Analyze the cause of the failure based on the error message. |
8017 | 42611 | Column name "%s" conflicts with a system column name | The column name specified in the Data Definition Language (DDL) statement conflicts with a system hidden column name. Rename the column based on the specific cause in the error message. |
8018 | 42000 | DECIMAL column '%s' type should be specified with precision and scale | When you specify the DECIMAL data type in a Data Definition Language (DDL) statement, you must specify the precision and scale. Review the SQL statement against the syntax documentation. |
8100 | 08003 | The connection does not exist; %s | The connection session that you are trying to reuse has been released by the server. Re-establish the connection. |
9000 | HY000 | Server internal error; %s | Contact Lindorm technical support for assistance. |
9001 | 0A000 | UNSUPPORTED: %s | The syntax is not supported. Check the SQL syntax documentation and avoid using unsupported SQL syntax. |
9002 | HY000 | Function %s can only be used in domain-specific dialect (Time-series, etc.) | The specified function is not a general-purpose function. It can only be used in a specific dialect, such as the dialect for LindormTSDB. Review the SQL statement against the syntax documentation. |
9003 | 28000 | The authentication method %s cannot apply to the old-fashion user, please consider to use another method. | The authentication method used to establish the connection cannot be applied to users created on older engine versions. For more information, see the notes in Develop applications using the MySQL protocol. Refer to the Lindorm documentation about MySQL protocol compatibility. 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 used to establish the connection is not available for the current instance deployment. Refer to the Lindorm documentation about MySQL protocol compatibility. Explicitly specify a supported authentication method or upgrade the client driver. |
9006 | HY000 | Analytical processing error; %s | An error occurred during the execution of an analytical query. Save the error information from the placeholder and contact Lindorm technical support for assistance. |
9010 | XX000 | The storage engine request illegal: %s | The internal communication request of the storage engine is invalid. Save the error information from the placeholder and contact Lindorm technical support for assistance. |
9011 | HY000 | Database protocol error: %s | A MySQL protocol message error occurred. Save the error information from the placeholder and contact Lindorm technical support for assistance. |