Caught unknow exception from runLocally

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
bettyso
Premium Member
Premium Member
Posts: 7
Joined: Mon Apr 30, 2007 2:19 pm
Location: Canada

Caught unknow exception from runLocally

Post by bettyso »

Our job run successfully in the past few months. Start from last night, it suddenly abent with following error message:

node_node2: Player 4 terminated unexpectedly.
Agent_Activity_Sel,0: Failure during execution of operator logic.
main_program: Unexpected exit status 1
Agent_Activity_Sel,0: Fatal Error: Unable to allocate communication resources
Xmf_Agent_Activity,0: Caught unknown exception from runLocally().
Operator's runLocally() failed.
Xmf_Agent_Activity,0: Operator terminated abnormally: runLocally did not return APT_StatusOk

We did lot of testing and finally found out the problem is caused by the fuction DFloatToStringNoExp(). The derivation statements inside the Transformer stage are:

if isnull (AUDIT_IN_Agent_Activity.aac_share) then 0 else DFloatToStringNoExp(AUDIT_IN_Agent_Activity.aac_share,8)

The source data (AUDIT_IN_Agent_Activity.aac_share) with datatype Double. I checked the source data, and the value is NULL, negative number (-1, -655.2), zero, and positive number (1, 1.2, 0.387).

Could any one tell me why the function DfloatToStringNoExp() failed?
Could any one provide the solution to me?
Why the job works fine in the past and suddenly abort start from last night? I am sure we don't have any changes in source data, server environment and the DataStage job.



Thanks.
Bso
keshav0307
Premium Member
Premium Member
Posts: 783
Joined: Mon Jan 16, 2006 10:17 pm
Location: Sydney, Australia

Post by keshav0307 »

are you getting white spaces too

then try

f isnull (AUDIT_IN_Agent_Activity.aac_share) or trim( (AUDIT_IN_Agent_Activity.aac_share)='' then 0 else DFloatToStringNoExp(AUDIT_IN_Agent_Activity.aac_share,8)
bettyso
Premium Member
Premium Member
Posts: 7
Joined: Mon Apr 30, 2007 2:19 pm
Location: Canada

Post by bettyso »

Thanks.

I already found the root cause. That is data overflow issue. The source data with value > 10000 but the scale of the function is set to 4. However, I don't understand why the data overflow issue have different behavious in our development and production server.
In development server, the job finish successfully, and output a strange value (e.g. 3.3456+4E).
In production server, the job abent.

Any one have any idea why it has different behaviou for data overflow. Is it DataStage issue or server issue? Where is the rule?

Thanks.
Bso
Post Reply