Decision Management (ODM,ADS)

 View Only
Expand all | Collapse all

StackOverflowError while building a Rule Project

  • 1.  StackOverflowError while building a Rule Project

    Posted Mon January 22, 2024 05:21 AM
    Edited by Eduardo Izquierdo Lázaro Mon January 22, 2024 05:26 AM

    Hi, after migrating a very old classic rule project to a new decision service with decision engine, Rule Designer building fails with StackOverflow.

    Errors occurred during the build.

    Errors running builder 'Ruleset Builder' on project 'xxxxxxxxxxxxxx'.

    assertion failed: Marker property value is too long: java.lang.StackOverflowError

                   at ilog.rules.factory.IlrVariable.<init>(IlrVariable.java:91)

                   at ilog.rules.engine.IlrFactoryMaker.exploreValue(IlrFactoryMaker.java:574)

                   at ilog.rules.engine.base.IlrVariableBinding.exploreValue(IlrVariableBinding.java:146)

                   at ilog.rules.engine.IlrFactoryMaker.makeValue(IlrFactoryMaker.java:140)

                   at ilog.rules.engine.IlrFactoryMaker.exploreValue(IlrFactoryMaker.java:576)

                   at ilog.rules.engine.base.IlrVariableBinding.exploreValue(IlrVariableBinding.java:146)

                   at ilog.rules.engine.IlrFactoryMaker.makeValue(IlrFactoryMaker.java:140)

                   at ilog.rules.engine.IlrFactoryMaker.exploreValue(IlrFactoryMaker.java:576)

                   at ilog.rules.engine.base.IlrVariableBinding.exploreValue(IlrVariableBinding.java:146)

                   at ilog.rules.engine.IlrFactoryMaker.makeValue(IlrFactoryMaker.java:140)

                   at ilog.rules.engine.IlrFactoryMaker.exploreValue(IlrFactoryMaker.java:576)

                   at ilog.rules.engine.base.IlrVariableBinding.exploreValue(IlrVariableBinding.java:146)

                   at ....

    Rule Designer shows this error in the problems view:

    Description	Resource	Path	Location	Type
    MIGERR_CYCLIC_REFERENCE_IN_HEADER: Parameters, package variables or functions probably define a cyclic reference.	xxxx		Unknown	Rule Designer Rule Model Problem
    

    The problem seems to be in the initialization of some variables in a varset, but I cannot imagine how can is it possible to produce a cyclic initialization in this context.

    ¿Do you know what can be the problem or where can we look form a solution?

    Just to check if some already hit this problem before opening support ticket.

    Thanks in advance.



    ------------------------------
    Eduardo Izquierdo Lázaro
    Automation Architect
    DECIDE
    Madrid
    609893677
    ------------------------------



  • 2.  RE: StackOverflowError while building a Rule Project

    Posted Mon January 22, 2024 05:28 AM

    The variables that are causing the problem are like this:



    ------------------------------
    Eduardo Izquierdo Lázaro
    Automation Architect
    DECIDE
    Madrid
    609893677
    ------------------------------



  • 3.  RE: StackOverflowError while building a Rule Project

    Posted Tue January 23, 2024 05:03 AM

    Hi Eduardo,

    I've asked someone from the ODM team to look at this thread. Are you able to reproduce the issue by isolating the variable set(s) causing the issue ? I suggest you contact IBM Support about this issue.



    ------------------------------
    Antony Viaud
    Product Manager, IBM Decision Automation
    ------------------------------



  • 4.  RE: StackOverflowError while building a Rule Project

    Posted Tue January 23, 2024 06:52 AM

    Hi Antony, forget it and many thanks for your responsiveness.

    In fact the problem was in another vars and it was exactly as reported by Rule Designer.

    In Classic Rule Engine, variables like this were allowed:

      <variables name="myvar" type="java.lang.String" initialValue="mayvar" verbalization="..."/>

    I guess this was initializing the var with the string "myvar" in classic rule projects.

    However after migration new Decision Service compiler was trying yo initialize var myvar with the value of myvar which actually causes an infinite loop.

    Thanks again



    ------------------------------
    Eduardo Izquierdo Lázaro
    Automation Architect
    DECIDE
    Madrid
    609893677
    ------------------------------