DB2 - Problem description
Problem IT03505 | Status: Closed |
DATA TRUNCATION ERROR IS IGNORED WITH WARNINGCOUNT WHEN LOAD AN IXF FILE AND IT HAS DIFFERENT CODE PAGE WITH DATABASE CODE PAGE | |
product: | |
DB2 FOR LUW / DB2FORLUW / A50 - DB2 | |
Problem description: | |
In the following scenario: 1. File to load is IXF and has a different code page with the database code page 2. data truncation happens during load because the data is longer than the target database column The data truncation error is not counted when WARNINGCOUNT is used The following is are reproducing steps. $ echo $LANG en_US $ db2 get db cfg for sample Database code page = 1208 Database code set = UTF-8 (1) As an example, IXF file is generated with the follow commands: db2 connect to sample db2 create tablespace testing db2 "CREATE TABLE TESTING (C1 INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1, CACHE 1000,NO MINVALUE, NO MAXVALUE, NO CYCLE, NO ORDER), C2 VARCHAR(20) ) in testing" db2 "insert into TESTING (C2) VALUES('ABCDEGHIJK')" db2 "insert into TESTING (C2) VALUES('ABCDEGHIJKABCDEGHIJK')" db2 "insert into TESTING (C2) VALUES('ABCDEGHIJK')" db2 export to testing.ixf of ixf "select * from TESTING" db2 "create tablespace TGT" db2 "CREATE TABLE TGT (C1 INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1, CACHE 1000,NO MINVALUE, NO MAXVALUE, NO CYCLE, NO ORDER),C2 VARCHAR(10) ) in TGT" (2) LOAD the IXF file, note the data has exceeded the length of the column $ db2 "LOAD from /home/db2inst1/testing.ixf of ixf WARNINGCOUNT 1 replace into TGT nonrecoverable" SQL3501W The table space(s) in which the table resides will not be placed in backup pending state since forward recovery is disabled for the database. SQL3039W The memory available to LOAD for DATA BUFFER prohibits full LOAD parallelism. Load parallelism of "3" will be used SQL3109N The utility is beginning to load data from file "/home/db2inst1/testing.ixf". SQL3500W The utility is beginning the "LOAD" phase at time "02/12/2014 10:29:13.069895". SQL3150N The H record in the PC/IXF file has product "DB2 02.00", date "20140210", and time "175512". SQL3050W Conversions on the data will be made between the IXF file code page "819" and the application code page "1208". SQL3153N The T record in the PC/IXF file has name "testing.ixf", qualifier "", and source " ". SQL3519W Begin Load Consistency Point. Input record count = "0". SQL3520W Load Consistency Point was successful. SQL3125W The character data in row "2" and column "2" was truncated because the data is longer than the target database column. SQL3110N The utility has completed processing. "3" rows were read from the input file. SQL3519W Begin Load Consistency Point. Input record count = "3". SQL3520W Load Consistency Point was successful. SQL3515W The utility has finished the "LOAD" phase at time "02/12/2014 10:29:13.761976". Number of rows read = 3 Number of rows skipped = 0 Number of rows loaded = 3 Number of rows rejected = 0 Number of rows deleted = 0 Number of rows committed = 3 $ db2 "select * from TGT" C1 C2 ----------- ---------- 1 ABCDEGHIJK 2 ABCDEGHIJK 1001 ABCDEGHIJK 3 record(s) selected In the above example, despite "WARNINGCOUNT 1" used and there is warning SQL3125W during load, the load continues without stop. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 Version 10.5 Fix Pack 5 * **************************************************************** | |
Local Fix: | |
Export to an IXF file with "modified by codepage=####" option, so that no code conversions are made during load | |
Solution | |
First fixed in Version 10.5 Fix Pack 5 | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 31.07.2014 13.03.2015 13.03.2015 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) | |
10.5.0.5 |