This discussion is archived
3 Replies Latest reply: May 14, 2013 4:40 AM by PeakIndicators_Alastair RSS

OdiWaitForChildSession Name filter in paralele execution

659781 Newbie
Currently Being Moderated
Hi,
we are using ODI version 11.1.1.6.
For parallel execution of child interfaces, we will be using interface scenarios set to asynchronous mode execution inside the package using java api's.

For example:
-master interface
-child1 interface scen in async mode
-OdiWaitForChildSession1
-Child2...child5 interface scenarios in async mode
-OdiWaitForChildSession2

For OdiWaitForChildSession here, we have used these parameters:
"-POLL_INT=1"
"-MAX_CHILD_ERROR=1"

Kindly let us know if ' Name Filter' or 'keywords' also need to be set in such cases where we are using more then 1 OdiWaitForChildSession or it should work fine if we have ' Name Filter' or 'keywords' set as null.

Thanks!
-Anuradha
  • 1. Re: OdiWaitForChildSession Name filter in paralele execution
    Bhabani Ranjan Guru
    Currently Being Moderated
    Anuradha,
    Isn't it giving you exception when you are not mentioning the step name for odiwaitforchildsession. Can you pest the portion of code you are setting the parameters ?

    Bhabani
    http://dwteam.in
  • 2. Re: OdiWaitForChildSession Name filter in paralele execution
    659781 Newbie
    Currently Being Moderated
    Hi,
    I have used StepOdiCommand with the following expression set to that.
    have set the stepname to 'odiWaitForChildSessionStep' in StepOdiCommand constructor.

    -----------
    LanguageProviderImpl langImpl_new=new LanguageProviderImpl(odiInstance) ;
    ExpressionStringBuilder expBuilder = new ExpressionStringBuilder(langImpl_new.getDefaultSnpsLanguage());
    expBuilder.append("OdiWaitForChildSession ");
    expBuilder.append("-POLL_INT=1");
    expBuilder.append(" -MAX_CHILD_ERROR=ALL");

    Expression exp = expBuilder.toExpression();      
    StepOdiCommand stepCommand = new StepOdiCommand(odiPackage, "odiWaitForChildSessionStep" );
    stepCommand.setCommandExpression(exp);
    -------------------
  • 3. Re: OdiWaitForChildSession Name filter in paralele execution
    PeakIndicators_Alastair Guru
    Currently Being Moderated
    Hi,
    I dont believe you need to use Name Filter or Keywords in this case the ODI Wait for child session works on a (nested) hierarchical basis, e.g 1 step up in calling process , see operator Hierarchy view for an impression of this.
    If you want to skip more than one level you would use the Parent Session ID parameter but would most likely need a convaluted way of retrieving this (set a variable in the task flow) else <%=odiRef.getSession("SESS_NO")%> would return the parent session ID.

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points