A fix is available
APAR status
Closed as new function.
Error description
Provide a means to allow arsload to use the native functions to perform upper and lowercasing of index values instead of the ICU supplied Unicode functions. This can prevent arsload from generating characters that may not be present in a given locales codepage.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All Content Manager OnDemand 8.5.0 and above * **************************************************************** * PROBLEM DESCRIPTION: Message ARS0013E ARSTTT DB Error: * * {DB2 FOR OS/390}{ODBC DRIVER}{DSN09015} * * ERRLOC=1:13:2 -- SQLSTATE=01517, * * SQLCODE=0, File=arsdoc.c, Line=nnn * * running arsload when * * ARS_ORIGINAL_CODEPAGE matches the * * database codepage. * **************************************************************** * RECOMMENDATION: * **************************************************************** In CMOD 8.5 and higher, CMOD uses International Component for Unicode (ICU) functions to upper-case or lower-case strings used as index values during arsload processing. This may produce characters that are not available in the codepage of the database, resulting in the SQLSTATE=01517 when the Unicode string is eventually passed to DB2 when the ARS_ORIGINAL_CODEPAGE matches the database codepage. Prior to 8.5 the index values used the native toupper() and tolower() functions which are incapable of translating to characters not in the locale codepage. These characters were silently not upper-cased or lower-cased before being passed to DB2.
Problem conclusion
Temporary fix
Comments
It was always expected that customers would only try to load index values containing characters in the codepage of the database. Trying to load characters not in that codepage could result in characters not being upper or lower-cased, or characters that were silently translated to X'3F' the EBCDIC sub character. For customers that desire the pre-8.5 behavior, an ars.cfg setting, ARS_USE_OLD_STYLE_CASE=1 will cause arsload to convert the index value from Unicode to the locale codepage, call the native toupper()/tolower() function as appropriate, and then convert the string back to Unicode before passing the index value to the server to be stored. Note that characters in index values not in the locale codepage will be silently translated to X'3F' on the conversion from Unicode to locale codepage before the casing operation. This is also the same as the pre-8.5 behavior. ž**** PE13/04/11 PTF IN ERROR. SEE APAR PM86206 FOR DESCRIPTION
APAR Information
APAR number
PM82660
Reported component name
CM OD Z/OS, OD/
Reported component ID
5655H3900
Reported release
850
Status
CLOSED UR1
PE
NoPE
HIPER
NoHIPER
Special Attention
YesSpecatt / New Function
Submitted date
2013-02-12
Closed date
2013-03-14
Last modified date
2013-04-12
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK92465 UK92466
Modules/Macros
ARNADMP ARNSYS
Fix information
Fixed component name
CM OD Z/OS, OD/
Fixed component ID
5655H3900
Applicable component levels
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSQHWE","label":"Content Manager OnDemand for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"850","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
12 April 2013