Errors reported by the IBMDB2I
engine may
originate from two locations. Error values under 2500 originate in
DB2 for i. Error values over 2500 originate in the storage engine
itself. Occasionally, errors are reported by
IBMDB2I
but, due to the architecture of MySQL,
cannot be directly exposed to MySQL client interfaces. In these
cases, issuing a SHOW ERRORS
command or
referring to the MySQL error log may be necessary to determine the
cause of a failure. Errors which originate in DB2 for i are
usually encountered in the DB2 for i SQL Server Mode job (QSQSRVR)
which services the MySQL client connection; additional information
about failures can often be found by looking in the job log of the
associated QSQSRVR job.
Following is the list of codes and messages for errors that occur
in DB2 for i that are reported by the IBMDB2I
engine. %d and %s represent numbers and strings, respectively,
that are replaced when the message is displayed.
Table 13.10. Error Codes from IBMDB2I
Error Code Number | Error Message Text |
---|---|
0 | Successful |
2016 | Thread ID is too long |
2017 | Error creating a SPACE memory object |
2018 | Error creating a FILE memory object |
2019 | Error creating a SPACE synchronization token |
2020 | Error creating a FILE synchronization token |
2021 | See message %-.7s in joblog for job %-.6s/%-.10s/%-.10s. |
2022 | Error unlocking a synchronization token when closing a connection |
2023 | Invalid action specified for an 'object lock' request |
2024 | Invalid action specified for a savepoint request |
2025 | Partial keys are not supported with an ICU sort sequence |
2026 | Error retrieving an ICU sort key |
2027 | Error converting single-byte sort sequence to UCS-2 |
2028 | An unsupported collation was specified |
2029 | Validation failed for referenced table of foreign key constraint |
2030 | Error extracting table for constraint information |
2031 | Error extracting referenced table for constraint information |
2032 | Invalid action specified for a 'commitment control' request |
2033 | Invalid commitment control isolation level specified on 'open' request |
2034 | Invalid file handle |
2036 | Invalid option specified for returning data on 'read' request |
2037 | Invalid orientation specified for 'read' request |
2038 | Invalid option type specified for 'read' request |
2039 | Invalid isolation level for starting commitment control |
2040 | Error unlocking a synchronization token in module QMYALC |
2041 | Length of space for returned format is not long enough |
2042 | SQL XA transactions are currently unsupported by this interface |
2043 | The associated QSQSRVR job was killed or ended unexpectedly. |
2044 | Error unlocking a synchronization token in module QMYSEI |
2045 | Error unlocking a synchronization token in module QMYSPO |
2046 | Error converting input CCSID from short form to long form |
2048 | Error getting associated CCSID for CCSID conversion |
2049 | Error converting a string from one CCSID to another |
2050 | Error unlocking a synchronization token |
2051 | Error destroying a synchronization token |
2052 | Error locking a synchronization token |
2053 | Error recreating a synchronization token |
2054 | A space handle was not specified for a constraint request |
2055 | An SQL cursor was specified for a delete request |
2057 | Error on delete request because current UFCB for connection is not open |
2058 | An SQL cursor was specified for an object initialization request |
2059 | An SQL cursor was specified for an object override request |
2060 | A space handle was not specified for an object override request |
2061 | An SQL cursor was specified for an information request |
2062 | An SQL cursor was specified for an object lock request |
2063 | An SQL cursor was specified for an optimize request |
2064 | A data handle was not specified for a read request |
2065 | A row number handle was not specified for a read request |
2066 | A key handle was not specified for a read request |
2067 | An SQL cursor was specified for an row estimation request |
2068 | A space handle was not specified for a row estimation request |
2069 | An SQL cursor was specified for a release record request |
2070 | A statement handle was not specified for an 'execute immediate' request |
2071 | A statement handle was not specified for a 'prepare open' request |
2072 | An SQL cursor was specified for an update request |
2073 | The UFCB was not open for read |
2074 | Error on update request because current UFCB for connection is not open |
2075 | A data handle was not specified for an update request |
2076 | An SQL cursor was specified for a write request |
2077 | A data handle was not specified for a write request |
2078 | An unknown function was specified on a process request |
2079 | A share definition was not specified for an 'allocate share' request |
2080 | A share handle was not specified for an 'allocate share' request |
2081 | A use count handle was not specified for an 'allocate share' request |
2082 | A 'records per key' handle was not specified for an information request |
2083 | Error resolving LOB address |
2084 | Length of a LOB space is too small |
2085 | An unknown function was specified for a server request |
2086 | Object authorization failed. See message %-.7s in joblog for job %-.6s/%-.10s/%-.10s. for more information. |
2088 | Error locking mutex on server |
2089 | Error unlocking mutex on server |
2090 | Error checking for RDB name in RDB Directory |
2091 | Error creating mutex on server |
2094 | Error unlocking mutex |
2095 | Error connecting to server job |
2096 | Error connecting to server job |
2098 | Function check occurred while registering parameter spaces. See job log. |
2101 | End of block |
2102 | The file has changed and might not be compatible with the MySQL table definition |
2103 | Error giving pipe to server job |
2104 | There are open object locks when attempting to deallocate |
2105 | There is no open lock |
2108 | The maximum value for the auto_increment data type was exceeded |
2109 | Error occurred closing the pipe |
2110 | Error occurred taking a descriptor for the pipe |
2111 | Error writing to pipe |
2112 | Server was interrupted |
2113 | No pipe descriptor exists for reuse |
2114 | Error occurred during an SQL prepare statement |
2115 | Error occurred during an SQL open |
2122 | An unspecified error was returned from the system. |
Following is the list of error codes and messages that occur
within the IBMDB2I
storage engine.
Table 13.11. Error Codes and Messages in IBMDB2I
Error Code Number | Error Message Text |
---|---|
2501 | Error opening codeset conversion from %.64s to %.64s (errno = %d).
Resolution: Alter the
table definition to specify a character set that is
supported by the IBMDB2I engine. |
2502 | Invalid %-.10s name '%-.128s. Resolution: If a field name, ensure that it is less than the maximum length of 126 characters. If an index name, ensure that the length of the index name plus the length of the table name is less than 121 characters. |
2503 | Unsupported move from '%-.128s' to '%-.128s' on RENAME TABLE statement.
Resolution: Moving a
table from one schema to another is not supported by the
IBMDB2I engine. Create a new table in
the 'to' schema, copy the data to the new table, and then
drop the old table. |
2504 | The %-.64s character set is not supported. Resolution: Try using another character set. |
2505 | Auto_increment is not allowed for a partitioned table. Resolution: Remove the auto_increment attribute from the table or do not partition the table. |
2506 | Character set conversion error due to unknown encoding scheme %d.
Resolution: Alter the
table definition to ensure that character sets assigned to
columns are supported by the IBMDB2I
engine. |
2508 | Table '%-.128s' was not found by the storage engine. Resolution: A table definition exists in MySQL, but the correspondingtable in DB2 for i is not found. Delete the MySQL table or restore the DB2 table. |
2509 | Could not resolve to %-.128s in library %-.10s type %-.10s (errno = %d). Resolution: Restore the missing IBM i object to the system. |
2510 | Error on _PGMCALL for program %-.10s in library %-.10s (error = %d). Resolution: This is an internal error. |
2511 | Error on _ILECALL for API '%.128s' (error = %d). Resolution: This is an internal error. |
2512 | Error in iconv() function during character set conversion (errno = %d). Resolution: Ensure the text being inserted contains only valid code points for the associated character set. This may be caused by using ENCRYPT or COMPRESS on a text field, resulting in binary data containing invalid characters. |
2513 | Error from Get Encoding Scheme (QTQGESP) API: %d, %d, %d Resolution: This is an internal error. |
2514 | Error from Get Related Default CCSID (QTQGRDC) API: %d, %d, %d. Resolution: This is an internal error. |
2515 | Data out of range for column '%.192s'. Resolution: DB2 for i does not support a zero value for DATE and DATETIME data types. Specify a new value for the column. |
2516 | Schema name '%.128s' exceeds maximum length of %d characters. Resolution: Change the schema name so that its length does not exceed the maximum. For mixed case or lower case names, allow 2 characters for outer quotes. |
2517 | Multiple collations not supported in a single index. Resolution: DB2 for i only supports sort sequences at the table or index level, so all character-based columns in the primary key or index must be using the same collation. Alter the table definition so that all columns use the same collation. |
2518 | Sort sequence was not found.
Resolution: Alter the table to use a collation
that is supported by the IBMDB2I
engine. |
2519 | One or more characters in column %.128s were substituted during conversion. Resolution: This is a warning that during the conversion of data from MySQL to DB2 some characters were replaced with substitute characters. |
2520 | A decimal column exceeded the maximum precision. Data may be truncated. Resolution: A decimal column specified on a CREATE TABLE or ALTER TABLE command has greater precision than DB2 allows. Data stored in this column may be truncated. Change the column specification to have a precision less than or equal to 63. |
2521 | Some data returned by DB2 for table %s could not be converted for MySQL. Resolution: This is a warning that some data could not be converted from DB2 to MySQL. Data was likely inserted into the table using DB2 interfaces that is valid data for DB2 but is invalid for MySQL. |
2523 | Column %.128s contains characters that cannot be converted. Resolution: An error occurred converting data from the MySQL character set to the associated DB2 coded character set identifier (CCSID).Omit the incompatible characters or alter the table to specify a different character set for the column. |
2524 | An invalid name was specified for ibmdb2i_rdb_name. Resolution: Specify a valid relational database (RDB) name. |
2525 | A duplicate key was encountered for index '%.128s'. Resolution: : Specify a unique key value for the row. Generally, this error occurs if a unique constraint or index has been applied to the table from a non-MySQL interface. |
2528 | Some attribute(s) defined for column '%.128s' may not be honored by accesses from DB2. |
User Comments
Add your own comment.