Wednesday, June 25, 2008

How to solve unexpected characters in export package


How to solve unexpected characters in export package

In the clearquest, user can not input non-support characters in ClearQuest UI since the code page settings. But with a uncertain reason, we will meet sometimes error when export package and it says like

 
Fri Jun 20 15:46:02 2008 -- Job started
Multiutil: Found unexpected characters outside ASCII range.
Offending characters were found at:
line 2
column 0
byte 50

The packlet being exported was oplog serial number 116298 of database 'CSEDI', replica 'HKG' (UUID = 587CB952-6052-4D32-8D7E-3B70222438F3).

Here is the steps to fix the problem with MS-SQL backend db servers
1.  using below command to dump the binary file from ratal_oplog table
    pdsql -v  ss -s dbserver -u dbo_userid -p dbo_user_password -db dbname
    >dump_longbinary c:\temp\serical_116298.txt select packlet from ratl_oplog where serial_no=116298;
    >commit;
    >quit;
   You can access below URL for the pdsql usage. In this case, the dbname is physical database name for CSEDI project
   http://www-1.ibm.com/support/docview.wss?uid=swg21145079

2. open the dump file ,which was generated by step 1 and named serical_116298 for example, with notepad and save the file using ANSI format and do not update/change anything in the file.

3. check the exact size. This can be done using Windows Explorer by right-clicking on the file and choosing Properties.

4. Run pdsql again against the dbname in step 1 using below command
   pdsql -v ss -s dbserver -u dbo_userid -p dbo_user_password -db dbname
   >insert_file binary c:\temp serical_116298.txt update ratl_oplog set packlet=? Where serial_no=116298
   >update ratl_oplog set packlet_len=2088 where serial_no=116298
   >commit;
   >quit;
  pls note, a. there are no space between path(c:\temp) and filename(serical_116298.txt). b. do not replace the question mark after "packlet=". c. 2088 is the exact file size of serical_116298 after step 3 and it is 2088 bytes.

5. Run the export job/command against CSEDI project again and make sure the package can be exported and imported in its destination sites

Before doing step 4, you are strongly recommended to backup all your database in case of any unexpected failure.


No comments: