Stack overflow with Derby adapter

From: Øyvind Harboe (oyvind.harbo..ylin.com)
Date: Fri Sep 12 2008 - 03:50:44 EDT

  • Next message: Andrus Adamchik: "Re: Stack overflow with Derby adapter"

    I've got an obscure bug in our app that is caused by a stack
    overflow with Derby.

    The problem is that 'OR' is implemented recursively inside Derby, so
    when using ExpressionFactoyr.inExp() w/a *long* list, the stack overflows.

    Can this be worked around in the Cayenne Derby adapter?

    Should it?

    Ideally I'd like to see it worked around in the Cayenne Derby adapter and
    fixed in Derby I guess.

    # Caused by: java.lang.StackOverflowError
    # org.apache.derby.impl.sql.compile.OrNode.bindExpression(Unknown Source)
    # org.apache.derby.impl.sql.compile.BinaryOperatorNode.bindExpression(Unknown
    Source)
    # org.apache.derby.impl.sql.compile.BinaryLogicalOperatorNode.bindExpression(Unknown
    Source)
    # org.apache.derby.impl.sql.compile.OrNode.bindExpression(Unknown Source)
    # org.apache.derby.impl.sql.compile.BinaryOperatorNode.bindExpression(Unknown
    Source)
    # org.apache.derby.impl.sql.compile.BinaryLogicalOperatorNode.bindExpression(Unknown
    Source)
    # org.apache.derby.impl.sql.compile.OrNode.bindExpression(Unknown Source)
    # org.apache.derby.impl.sql.compile.BinaryOperatorNode.bindExpression(Unknown
    Source)
    # org.apache.derby.impl.sql.compile.BinaryLogicalOperatorNode.bindExpression(Unknown
    Source)

    -- 
    Øyvind Harboe
    http://www.zylin.com/zy1000.html
    ARM7 ARM9 XScale Cortex
    JTAG debugger and flash programmer
    



    This archive was generated by hypermail 2.0.0 : Fri Sep 12 2008 - 03:51:45 EDT