Possible loss of data for certain conversions
[conversion] [conversions] [fastest possible] [kim possible] [possible] [QCM] [QCM8]
Symptom
Two transparent tables with the following properties are converted one after the other in the same work process:
The tables have names with a length of more than 13 characters.The table names are the same for the first 13 characters.Both tables have the same number of columns.
According to the conversion log, the conversions are successful. However, individual columns of the second table contain truncated values. Up to now, the problem has been observed only on Oracle.
Other terms
Conversion, QCM, QCM8
Reason and Prerequisites
During the conversion of a transparent table to a transparent table with a different structure, the system renames the original table as a temporary table with the prefix QCM in one of the first steps. Since the maximum length of a table name is restricted to 16 characters, the system truncates the last four characters of table names with more than 13 characters before inserting the prefix QCM in front of the table name. As a result, a table called LANGER_TABNAME1 becomes QCMLANGER_TABNA. The system then creates a temporary table with the prefix QCM8 and the new structure (in the example, this table would be called QCM8LANGER_TABNA) and transfers the data from the QCM table to the QCM8 table. The conversion of the second table with the properties mentioned above (for example, with the name LANGER_TABNAME2) results in the same QCM table names as the first conversion, that is, QCMLANGER_TABNA and QCM8LANGER_TABNA. If the second conversion runs in the same work process as the first conversion, the SQL statement for reading the QCM table (for example, “SELECT * FROM QCMLANGER_TABNA”) may still be contained in the statement buffer of the local work process and may be used, even though the table for which the statement was originally created no longer exists and the system accesses a completely different table that only has the same name and the same number of fields. For unknown reasons, the Oracle database does not return an error due to an invalid statement, but processes the statement. However, the database returns the data in individual columns with truncated values.
The correction resets the statement cache of the work process (in which the conversion runs) just before the data is actually transferred from the QCM table to the QCM8 table. The correction affects only systems with an Oracle database.
Solution
Import the relevant Support Package or implement the attached
correction instructions.