Oracle Connector Fails - NLS Map problem?

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
eph
Premium Member
Premium Member
Posts: 110
Joined: Mon Oct 18, 2010 10:25 am

Oracle Connector Fails - NLS Map problem?

Post by eph »

Hi all,

I'm facing a strange situation using an Oracle Connector to extract data (simple select on table) compared to the same job using an old-fashion Oracle Enterprise. Using the same NLS map (Project default = UTF-8), the Oracle connector fails with the error messages below, while the Oracle Enterprise finishes OK.

Code: Select all

 
Oracle_Connector_34,0: While reading data for column E1_DESCR_VAL_A1, the connector received Oracle error code ORA-1406. [:0]

Oracle_Connector_34,0: [IIS-CONN-ORA-001003] The OCI function OCIStmtFetch returned status -1. Error code: 24,345, Error message: ORA-24345: A Truncation or null fetch error occurred. (CC_OraStatement::fetch, file CC_OraStatement.cpp, line 967) [pxbridge.C:5685]
My guess was that some row fields were containing special characters that couldn't be read by the connector. As a matter of fact, removing those characters allowed the connector to run correctly. Apparently, this problem is caused by the OC NLS parameters.

The question is, how can I modify this parameter, since it's not present in stage properties, neither in environment variables (apart in NLS config which is OK) nor in OSH code (unlike for the Enterprise stage)? Or maybe I'm running in the wrong direction?


Code: Select all

#################################################################
#### STAGE: Oracle_Connector_34
## Operator
pxbridge
## Operator options
-XMLProperties '<?xml version=\'1.0\' encoding=\'UTF-16\'?><Properties version=\'1.1\'><Common><Context type=\'int\'>1</Context><Variant type=\'string\'>10</Variant><DescriptorVersion type=\'string\'>1.0</DescriptorVersion><PartitionType type=\'int\'>-1</PartitionType><RCP type=\'int\'>1</RCP></Common><Connection><Server modified=\'1\' type=\'string\'><![CDATA[[&"PC.$E1_PC_CXN"]]]></Server><Username modified=\'1\' type=\'string\'><![CDATA[[&"PC.$E1_PC_USR"]]]></Username><Password modified=\'1\' type=\'string\'><![CDATA[[&"PC.$E1_PC_PWD"]]]></Password><OSLevelAuthentication type=\'bool\'><![CDATA[0]]></OSLevelAuthentication></Connection><Usage><ReadMode type=\'int\'><![CDATA[0]]></ReadMode><GenerateSQL modified=\'1\' type=\'bool\'><![CDATA[1]]></GenerateSQL><TableName modified=\'1\' type=\'string\'><![CDATA[[&"PC.$E1_PC_SCH"].[&"TABLE"]]]><TableScope type=\'int\'><![CDATA[0]]></TableScope></TableName><EnableQuotedIDs type=\'bool\'><![CDATA[0]]></EnableQuotedIDs><SQL></SQL><EnablePartitionedReads modified=\'1\' type=\'bool\'><![CDATA[1]]><PartitionedReadsStrategy modified=\'1\' type=\'int\'><![CDATA[1]]></PartitionedReadsStrategy></EnablePartitionedReads><Transaction><IsolationLevel type=\'int\'><![CDATA[0]]></IsolationLevel><RecordCount type=\'int\'><![CDATA[2000]]></RecordCount><EndOfWave type=\'int\'><![CDATA[0]]></EndOfWave></Transaction><Session><ArraySize type=\'int\'><![CDATA[2000]]></ArraySize><PrefetchRowCount type=\'int\'><![CDATA[1]]></PrefetchRowCount><PrefetchMemorySize type=\'int\'><![CDATA[0]]></PrefetchMemorySize><PassLobLocator collapsed=\'1\' type=\'bool\'><![CDATA[0]]></PassLobLocator><BFILEasBLOB type=\'bool\'><![CDATA[0]]></BFILEasBLOB><TreatWarningsAsErrors type=\'bool\'><![CDATA[0]]></TreatWarningsAsErrors></Session><BeforeAfter collapsed=\'1\' type=\'bool\'><![CDATA[0]]></BeforeAfter><ApplicationFailoverControl collapsed=\'1\' type=\'bool\'><![CDATA[0]]></ApplicationFailoverControl></Usage></Properties >'
-connector '{
   variant=10, 
   library=ccora10g, 
   version=1.0, 
   variantlist='10,11', 
   versionlist='1.0,1.0', 
   name=OracleConnector
}'
-source 0 '{
      DSSchema=\'record
           ()\'
}'
   

## General options
[ident('Oracle_Connector_34'); jobmon_ident('Oracle_Connector_34')]
## Outputs
0> [] 'Oracle_Connector_34:Ln_ExtractToFile.v'
;
Thanks in advance
Eric
eph
Premium Member
Premium Member
Posts: 110
Joined: Mon Oct 18, 2010 10:25 am

Post by eph »

Little update on this problem fixed by IBM:

This case is referenced as "APAR JR39895" and IBM produced a patch for it in v8.1 FP1 (it seems that it is corrected in FP2, but I can't tell).

https://www-304.ibm.com/support/docview ... wg1JR39895
Post Reply