Fatal Error On Decimal representaion for stage variable

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
kumar3846
Participant
Posts: 36
Joined: Mon Jan 09, 2006 2:58 pm

Fatal Error On Decimal representaion for stage variable

Post by kumar3846 »

Hi ,

My job is getting failed in my preproduction run with full volume which job has succesfully ran with out any warnings

in my job i am using a stage varible AKT decimal (10,4)
the source column A for this variable is also having decimal(10,4)

in stage varibale iam uisng NullToValue(A,0.0)

It is not giving any error or warning in my Development , but it is failed
in production environ ment please help me out this

here is the fatal error

APT_CombinedOperatorController,3: Fatal Error: APT_Decimal::compare: the left-hand-side decimal has an invalid
representation.
node_re2cdw02_1: Player 7 terminated unexpectedly



Thank You
talk2shaanc
Charter Member
Charter Member
Posts: 199
Joined: Tue Jan 18, 2005 2:50 am
Location: India

Post by talk2shaanc »

a question before suggesting anything; are you using the same file in pre-production run ?
Shantanu Choudhary
Kirtikumar
Participant
Posts: 437
Joined: Fri Oct 15, 2004 6:13 am
Location: Pune, India

Post by Kirtikumar »

Kumar,

From the warning one can not say that it is aborting due to stage var or something else.

Do you have any other decimal operation or column in your mappings?
Regards,
S. Kirtikumar.
kumar_s
Charter Member
Charter Member
Posts: 5245
Joined: Thu Jun 16, 2005 11:00 pm

Post by kumar_s »

Try passing the exact length of the decimal field like "000000.0000" to NullToValue expression. Additionally, try disable the CombinableOperator in your transformer property to get more diagnostic message.
Impossible doesn't mean 'it is not possible' actually means... 'NOBODY HAS DONE IT SO FAR'
kumar3846
Participant
Posts: 36
Joined: Mon Jan 09, 2006 2:58 pm

Post by kumar3846 »

Thank you for your response

kumar_s the thing is when i am running my developement it is running fine and if i dont use stage varible its is giving lot of following errors

Xfm_rate,1: APT_DecimalNumber::analyzeAndPrepare:divisor is 0.
Xfm_rate,1: APT_DecimalNumber::APT_DecimalNumber: invalid decimal argument.
Xfm_rate,1: APT_DecimalNumber::analyzeAndPrepare:parameter(s) are invalid or not normalized.

i am here dividing two decimals and cheking for nulls and zeros for denominator as 0000000000.0000 even i increased the target filed precision and scale it is giving me the same warnign,

may the way handling the null and cheking zeros for decimal value makin
some thing wron denominator is decimal(10,4)
numerator is decimal(10,4)
please help me out this thank you
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

You'd better show us HOW you are "checking for denominator", since DataStage is still claiming an attempt to divide by zero.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
kumar3846
Participant
Posts: 36
Joined: Mon Jan 09, 2006 2:58 pm

Post by kumar3846 »

Here is my cheking for denominator

If IsNull(a) Or IsNull(b) Or IsNull(c)
Then SetNull() Else If IsNotNull(a) And IsNotNull(b) And IsNotNull(c) And b<>0.0 Then
(a/b)*(c) Else SetNull()

Please help me out


thank you
Nageshsunkoji
Participant
Posts: 222
Joined: Tue Aug 30, 2005 2:07 am
Location: pune
Contact:

Post by Nageshsunkoji »

Hi Kumar,

Check the Datatype of Divisor, ( I think b in case of your derivation rule). If your output is a decimal and your perfroming division opertaion on a Decimal field, then your divisor datatype should be in decimal.
For Ex : If you are performing 100.00/10 and storing in a decimal filed,it will not give you the result, try to perform 100.00/10.00, then you will get the result.
NageshSunkoji

If you know anything SHARE it.............
If you Don't know anything LEARN it...............
kumar3846
Participant
Posts: 36
Joined: Mon Jan 09, 2006 2:58 pm

Post by kumar3846 »

B is also decimal the three fields iam using are decimals
Post Reply