NLS Error in DSExecute routine

A forum for discussing DataStage<sup>®</sup> basics. If you're not sure where your question goes, start here.

Moderators: chulett, rschirm, roy

Post Reply
LD
Premium Member
Premium Member
Posts: 32
Joined: Thu Oct 21, 2010 9:03 am

NLS Error in DSExecute routine

Post by LD »

Hi,

I'm using DSExecute routine in a batch job to run some sql in oracle DB. DSExecute calls a unix shell script which in turn connects to DB and execute a sql file with multiple sql statements.

Job is running fine in old projects. We created a new project recently but the routine call is failing in new project with below error as the cmd_output from the routine.

"ERROR:ORA-12705: invalid or unknown NLS parameter value specified"

Please let me know if I need to make some changes in new project as this was first execution in this project and is failing with said error.

Thanks,
Shashank
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

ORA-12705 errors generally mean an invalid value in the NLS_LANG environment variable. Not sure why that would only happen in one project, but you first need to see if that is the case.
-craig

"You can never have too many knives" -- Logan Nine Fingers
LD
Premium Member
Premium Member
Posts: 32
Joined: Thu Oct 21, 2010 9:03 am

Post by LD »

Hi Craig,

Thanks for helping me out. I checked the NLS_LANG in both DS job log and DB and it is some i.e. NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1.
And as you pointed, this is happening in other project too, not just the new one.
Another thing is, OCI stage is running fine in both the projects. When I'm using DSExecute to connect using sqlplus, that is failing in both the projects. Also in old project, bulk loader in PX job is also failing with same error.

Not sure but looks like when we use sqlplus through Datastage, it is failing. everything else is running. sqlplus from unix command prompt is running fine and OCI stage is running fine.

DSExecute fails and bulk load fails. Please let me know if any thing else I can check here.

Thanks.
Shashank
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Hard to say. First guess when Oracle things are fine from the command line but not from DataStage would be the environments each is leveraging. Perhaps your command line sessions are using different values for $ORA_HOME and your "shared library path" then they do in job? That's the first place I would look, compare the Oracle environment the jobs are using versus the command line.
-craig

"You can never have too many knives" -- Logan Nine Fingers
Post Reply