LAE

Welcome to the LAE community!  Please feel free to start a discussion in the discussion tab or join in a conversation.

Discussions

Members

Resources

Events

 View Only
  • 1.  Overflowed on sum

    Employee
    Posted 07-15-2011 09:51

    Note: This was originally posted by an inactive account. Content was preserved by moving under an admin account.

    Originally posted by: zon

    Hey,

    I'm having a error in a agg node. I already tried to check if there's any post talking about this, but I didn't find.
    This is the code from the agg node:
    --------------------------------------------------------------
    CALL_COUNT = count()
    TOTAL_DURATION = sum(DURATION)
    TOTAL_RATING = sum(RATING)

    emit NIVEL_4, CALL_COUNT, TOTAL_DURATION, TOTAL_RATING
    where lastInGroup
    --------------------------------------------------------------

    Field NIVEL_4 is Group field. The input is 14M CDR (calls from our fixed line customers).

    For some reason, after minute and half running, it turns out the following error:
    --------------------------------------------------------------
    ERROR processing data:
    Expression 2147481957 + 1883 overflowed. Throwing error.

    Installing log (07/15/2011 16:59:36) ...
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "Expression 2147481957 + 1883 overflowed. Throwing error."; File: "../../../include/brain/expert\ExprMathUtils.h"; Line: 117; Context: ""
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in operator <+>"; File: "..\expert\ExprOperator.cpp"; Line: 34; Context: "Salmon::NED::ExprOperator::apply()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in expression (+ ...) starting on line 2"; File: "..\expert\Combination_Expr.cpp"; Line: 210; Context: "Salmon::NED::Combination_Expr::evaluate()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen"; File: ".\BrainScriptSet_ExprStmt.cpp"; Line: 80; Context: "BrainScriptSet_ExprStmt::_evaluate()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in statement 'bs-set', line 2"; File: "..\expert\ExprStatement.cpp"; Line: 56; Context: "Salmon::NED::Statement_Expr::evaluate()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in operator <if>"; File: "..\expert\ExprOperator.cpp"; Line: 34; Context: "Salmon::NED::ExprOperator::apply()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in expression (if ...) starting on line 2"; File: "..\expert\Combination_Expr.cpp"; Line: 210; Context: "Salmon::NED::Combination_Expr::evaluate()"
    2011-07-15 17:00:50; Level: 2; Type: 0; Desc: "...exception seen in context: { 0(in1):6009319 }"; File: ".\ExprTableIo.cpp"; Line: 255; Context: "Salmon::ExprTableIo::processInputRows()"
    Uninstalling log (07/15/2011 17:00:50) ...
    ----------------------------------------------------------

    It seems like, at some point, the node is enable to sum something. Seems like it has reach the limit. Am I guessing well?

    Best Regards,
    Natanael
    ZON


  • 2.  RE: Overflowed on sum

    Employee
    Posted 07-15-2011 10:21

    Note: This was originally posted by an inactive account. Content was preserved by moving under an admin account.

    Originally posted by: stonysmith

    This has to do with the way (any) computer stores numbers. A "Short Integer" can store a maximum value of just over 2,140,000,000

    Change it to a "Long Integer" and it should work:

    TOTAL_DURATION = sum(DURATION.long())