Load Plan and empty variables on ODI 11G

Hi everyone,
I am working with ODI 11g (11.1.1.7.0) and I want to setup a variable with the Load Plan, however I am not able to update and retrieve the variable value inside of a case that is always keeping the initial value. Even the operation history shows the variable value empty. Have you ever used Load plan and noticed this strange behavior?
Regards,
Angelo

Okay let me try to help you on this.
Oracle Data Integrator agents process each scenario execution instance as a session. Each session exists in the agent as a separate thread of the agent Java process.
When a scenario is executed on an agent, the agent creates a session in the repository that corresponds to this scenario's instance. The agent reads each task of this session from the repository, processes it, and writes the result - the return code, message and tasks metrics such as the duration or number of rows processed - into the repository.
Hence multiple session multiple thread.
Hope you are clear now.
Thanks.

Similar Messages

  • How to shutdown and start agent in ODI 11g in Linux Environment

    Hi Experts,
    Pls any one can help me on "How to shutdown and start agent in ODI 11g in Linux Environment" and where can I find Agent.sh and Agentshutdown.sh files location in ODI 11g and parallely how can I find Odiparameter.sh file location
    Thanks in Advance
    Regards
    Phani

    Phani ,
    Go to your <ODI_11g_HOME>/oracledi/agent/bin
    and you will find agent.sh , agent_<standalone_agent>.sh and odiparams.sh and other agent files.
    Step 1. Update your odiparams.sh
    Step 2. Create the Physical and Logical Agent int your Topology using the same port_number and name provide while creating the Stand alone agent during installation ( or) create accordingly the agent in Topology with name and port number as required and make the modification in agent_<stand_alone>.sh file
    Step 3. After doing so start your agent_<stand_alone>.sh
    Step 4. Repeat the process 2-3 for any number of stand alone agent created on different ports and steps 1 to 3 for different Work repository
    Thanks
    Dev

  • Load Plan and variables

    Hi all,
    I cannot set value for variables inside load plan exceptions editor. Anyway I can inside Load Plan steps editor.
    Is it possible ?
    I need to set variable when exception is raised. How I can do it ?
    thanks

    thank you for the answer..
    but why I have to use a when case step?
    I just need to set a string in a variable before to execute a serial step within exception step.
    I do this in a normal load plan step. So Why I cannot do the same in the exception one ?

  • Load Plan and Java Virtual Machine

    Hi,
    We're think about using ODI 11g Load Plan, but I've got a question about their behaviour.
    Suppose I've got a load plan that launches 2 scenarios in parrallel with standalone agent.
    Will ODI launch 2 Java Virtual Machine "as if we just launch 2 ODI commands (startscen.bat)" or will it use only 1 Virtual Machine ?

    Okay let me try to help you on this.
    Oracle Data Integrator agents process each scenario execution instance as a session. Each session exists in the agent as a separate thread of the agent Java process.
    When a scenario is executed on an agent, the agent creates a session in the repository that corresponds to this scenario's instance. The agent reads each task of this session from the repository, processes it, and writes the result - the return code, message and tasks metrics such as the duration or number of rows processed - into the repository.
    Hence multiple session multiple thread.
    Hope you are clear now.
    Thanks.

  • Load Plan exception step variable

    Hi all,
    maybe you could be interested in.
    It is not possible refresh or overwrite a variable inside exception step. This is fantastic !
    http://docs.oracle.com/cd/E21764_01/relnotes.1111/e10133/odi.htm#CHDFFEFI
    So If I need to log an error I cannot use a parametric query. Great !

    Currently my packages have many steps, each step with a red failure arrow leading to this type of failure e-mail procedure -- lots of red arrows and many nearby copies of the failure e-mail procedure to eliminate the confusion.
    I had hoped that the Load Plan Exception feature would let me take all these red arrows out of my packages and move the e-mail failure reporting to the Exception step.

  • Load balancing and transparent failover in RAC 11g

    Hi,
    The only way to configure load balancing and transparent failover in RAC 11 g R2 is using the clauses LOAD_BALANCING and FAILOVER on the tnsnames.ora of application server. Is that correct?

    If the database is admin-managed, I shall suggest that rather than playing with the remote_listener parameter , set one service as preferred for one instance.For the other service, let it be preferred on both the nodes. The service with just one instance as Preferred won't be able to use loab-balancing as there is just one instance available for its disposal.
    HTH
    Aman....

  • BI Apps ODI Load Plan Execution Error and Question on Rerun

    I am following the technetwork Cookbook: Installing and Configuring Oracle BI Applications 11.1.1.7.1 to install and configure my first BIApps with ODI. Smooth until I execute the Load Plan.
    Following errors were found on first attempt of execution. Without doing any change, I re-executed the load plan, error again but this time the message is difference (2nd attempt)
    Question:
    - How shall I start to diagnostic the ODI error?
    - Apparently there are something left in the failure execution, how I can clean it up for reruning the Load Plan?
    Many thanks.
    ODI errors on first execution
    ODI-1519: Serial step "Start Load Plan (InternalID:1500)" failed because child step "Global Variable Refresh (InternalID:2500)" is in error.
    ODI-1519: Serial step "Global Variable Refresh (InternalID:2500)" failed because child step "1 Domain (InternalID:5500)" is in error.
    ODI-1519: Serial step "1 Domain (InternalID:5500)" failed because child step "2 Domain SDE (InternalID:35500)" is in error.
    ODI-1519: Serial step "2 Domain SDE (InternalID:35500)" failed because child step "Serial (InternalID:36500)" is in error.
    ODI-1519: Serial step "Serial (InternalID:36500)" failed because child step "3 SDE General Domain (InternalID:54500)" is in error.
    ODI-1519: Serial step "3 SDE General Domain (InternalID:54500)" failed because child step "Load Target Table (InternalID:55500)" is in error.
    ODI-1519: Serial step "Load Target Table (InternalID:55500)" failed because child step "EBS_12_1_1 - DSN 1000 (InternalID:56500)" is in error.
    ODI-1519: Serial step "EBS_12_1_1 - DSN 1000 (InternalID:56500)" failed because child step "DOMAIN (InternalID:57500)" is in error.
    ODI-1519: Serial step "DOMAIN (InternalID:57500)" failed because child step "Parallel (InternalID:58500)" is in error.
    ODI-1518: Parallel step "Parallel (InternalID:58500)" failed; 5 child step(s) in error, which is more than the maximum number of allowed errors (0) defined for the parallel step.  Failed child steps: COMMON (InternalID:59500), HUMAN_RES (InternalID:90500), FINANCIALS (InternalID:95500), SUPP_CHAIN (InternalID:122500), PROJECTS (InternalID:98500)
    ODI-1518: Parallel step "COMMON (InternalID:59500)" failed; 11 child step(s) in error, which is more than the maximum number of allowed errors (0) defined for the parallel step.  Failed child steps: SDE_ORA_DOMAINGENERAL_PRODUCT_CLASS (InternalID:69500), SDE_ORA_DOMAINGENERAL_FND_LOOKUPS PAY_GROUP (InternalID:88500), SDE_ORA_DOMAINGENERAL_FND_LOOKUPS MARITAL_STATUS (InternalID:85500), SDE_ORA_DOMAINGENERAL_PRODUCT_MASTERORG (InternalID:73500), SDE_ORA_DOMAINGENERAL_PRODUCT_CATEGORYNAME (InternalID:67500), SDE_ORA_DOMAINGENERAL_STATE (InternalID:61500), SDE_ORA_DOMAINGENERAL_FND_LOOKUPS CUSTOMER_CATEGORY (InternalID:83500), PRODCAT (InternalID:75500), SDE_ORA_DOMAINGENERAL_FLEXFIELD (InternalID:89500), SDE_ORA_DOMAINGENERAL_FND_LOOKUPS ORGANIZATION_SIZE (InternalID:82500), UOM - Serial (InternalID:78500)
    ODI-1217: Session SDE_ORAR1211_ADAPTOR_SDE_ORA_DOMAINGENERAL_PRODUCT_CLASS (38500) fails with return code 8000.
    ODI-1226: Step Run SDE_ORA_DomainGeneral_Product_Class fails after 1 attempt(s).
    ODI-1240: Flow Run SDE_ORA_DomainGeneral_Product_Class fails while performing a Integration operation. This flow loads target table W_DOMAIN_MEMBER_GS.
    ODI-1228: Task SDE_ORA_DomainGeneral_Product_Class (Integration) fails on the target ORACLE connection BIAPPS_DW.
    Caused By: java.sql.SQLException: Listener refused the connection with the following error:
    ORA-12516, TNS:listener could not find available handler with matching protocol stack...
    ODI errors on second execution
    ODI-1519: Serial step "Start Load Plan (InternalID:1500)" failed because child step "Global Variable Refresh (InternalID:2500)" is in error.
    ODI-1519: Serial step "Global Variable Refresh (InternalID:2500)" failed because child step "1 Domain (InternalID:5500)" is in error.
    ODI-1519: Serial step "1 Domain (InternalID:5500)" failed because child step "2 Domain SDE (InternalID:35500)" is in error.
    ODI-1519: Serial step "2 Domain SDE (InternalID:35500)" failed because child step "Serial (InternalID:36500)" is in error.
    ODI-1519: Serial step "Serial (InternalID:36500)" failed because child step "3 SDE General Flexfield (InternalID:37500)" is in error.
    ODI-1519: Serial step "3 SDE General Flexfield (InternalID:37500)" failed because child step "Finalize Flexfield (InternalID:50500)" is in error.
    ODI-1519: Serial step "Finalize Flexfield (InternalID:50500)" failed because child step "EXEC_TABLE_MAINT_PROC (InternalID:51500)" is in error.
    ODI-1217: Session EXEC_TABLE_MAINT_PROC (107500) fails with return code 20000.
    ODI-1226: Step TABLE_MAINT_PROC fails after 1 attempt(s).
    ODI-1232: Procedure TABLE_MAINT_PROC execution fails.
    ODI-1228: Task TABLE_MAINT_PROC (Procedure) fails on the target ORACLE connection BIAPPS_DW.
    Caused By: java.sql.SQLException: ORA-20000: Error creating Index/Constraint : W_FLEX_SQL_G_U1 => ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found

    Hi,
    The first error happened is
    ORA-12516, TNS:listener could not find available handler with matching protocol stack...
    The above is due to the listener been disconnected while the LP is executing. This can be solved by restarting the load.
    The second error happened is
    ORA-20000: Error creating Index/Constraint : W_FLEX_SQL_G_U1 => ORA-01452: cannot CREATE UNIQUE INDEX; duplicate keys found
    The above is due to the duplicate records found in the table w_flex_sql_g. You can solve this by deleting the duplicated records in that table like referred in the below link
    OBIEE, Endeca and ODI: BIApps and ODI 11.1.1.7.1 Full Load
    Regards,
    Saro

  • Unable to refresh variable definition in ODI Load Plan

    Hi All,
    We recently removed the variable definition and changed it to default value. After that we tried to refresh the variable in  Load plans / Scenarios but it still shows old SQL. Can you please suggest if there is a way to force refresh the variable definitions in load plans? We tried removing and re-adding the variable but that didn't help. Last resort will be to recreate the load plans but we are trying to avoid that.
    Thanks,
    Andy

    Hi Alastair,
    Thanks for the reply. Actually variable is returning the correct value. Only problem is that in the Load Plan's variable section variable still shows old definition even after trying to refresh n number of times and also tried removing it from load plan and then inserting it back in after changing the definition. We don't want to migrate load plan like this. Kindly suggest.
    Thanks,
    Andy

  • Case when condition in ODI Load Plan

    Hi All,
    Created a project variable(VAR_X) which is a text type and it can be refreshed by querying in some database.
    Created a Load Plan and added a Case step by using VAR_X
    with following logic
    Case VAR_X
    when value ='X'
         run_x_scenario.
    when value='Y'
         run_y_scenario.
    else
    but whenever I give start up value X or Y ,variable unable to evaluate the when condition provided in the load plan.
    always its taking else step
    Case VAR_X
    else
    but its working when I evaluate with numeric number like when value =1 etc (here I changed variable datatype to numeric)
    Any pointers will be appreciated.
    Thanks,
    Aravind

    It may be due to the quotes you have added in your when clause. Can you try it without quotes.

  • ODI Multi Execution of Load Plans

    Hi,
    I am using ODI version 11.1.1.6.0
    I wanted to know the number of instance running for my load plan. I tried using ODI APIs (odiRef) but no results.
    Can anyone help on this topic?
    Thanks in advance.
    Regards
    Gaurav

    AJ,
    1) We see the status remains in R state if Load plan fails during execution of ON CONNECT. Status does not change until the ODI studio is closed (Version is 11.1.1.6).
    2) Can we run your SQL as part of a Load Plan(load plan executes on different target database-different from work repository instance)?
    3) Is it possible to get number of load plan instance in run state through some API or class in ODI like [http://docs.oracle.com/cd/E28389_01/apirefs.1111/e17060/oracle/odi/runtime/agent/invocation/LoadPlanStatusInfo.html] ? If yes, please help with some example.
    Thanks

  • Loading External SWF and setting variables

    Hello Everyone.
    I'm sure you are all a where of the FlashVars attribute for
    Flash embeds which holds variables for SWF's when they are
    rendered. I'm attempting to load an External SWF dynamically
    from within my own SWF and need to provide it with the values
    normally stored in the FlashVars. For the example below I
    wait until the External SWF is completely loaded using the
    onLoadInit event from moviecliploader and then i attempt to
    set the required variables that the loaded SWF needs. This works
    great in test and debug mode (ie. Test Movie and Debug Movie
    from the Control menu), but when i publish my FLA to SWF and run
    the SWF the variables will NOT get set in the loaded External SWF.
    From my readings ive people have mentioned that the player is only
    able to access Methods of an External SWF. If this is the case then
    how do they expect people to set the FlashVars of dynamically
    loaded SWFs? I investigated the loadVariables procedure as well and
    had the same results in test mode and was wasn't reliable because
    of timing issues.
    The sample source is below... if anyone has any ideas or has
    come across this issue before, I would really appreciate some
    insight.
    Thank you in advance for your time.
    var loader_mc:MovieClipLoader = new MovieClipLoader();
    var mclListener:Object = new Object();
    loader_mc.addListener(mclListener);
    mclListener.onLoadProgress = function(target_mc:MovieClip,
    numBytesLoaded:Number, numBytesTotal:Number) {
    // DO NOTHING
    mclListener.onLoadComplete = function(target_mc:MovieClip) {
    // DO NOTHING
    mclListener.onLoadInit = function(target_mc:MovieClip) {
    // WORKS IN TEST MODE NOT IN PUBLISH/SWF MODE
    target_mc._root.param1 = "value1";
    // WORKS IN TEST MODE NOT IN PUBLISH/SWF MODE
    _level0.container_mc.param1 = "value1";
    this.createEmptyMovieClip("container_mc",
    this.getNextHighestDepth());
    container_mc._lockroot = true;
    loader_mc.loadClip("somecoolflash.swf", container_mc);

    I've tried that as well and it behaves the same as onLoadInit
    ... Works when i test but doesnt when i publish to a swf. I think
    this is security related and the flash player just cant write to a
    loaded swf and set variables.

  • Load Plan Execution Control

    Hello,
    I have following requirement for execution of Load Plan:
    1. Do not allow execution of the Load Plan if it is already running?
    2. Do not allow execution of the Load Plan 1 if Load Plan 2 is executing?
    Can I achieve the requirement through some ODI API's that give me information about Load Plan run which can be embedded as a check in ON CONNECT? or some better way?
    Thanks
    AJ

    Hi.
    1) I don't know if its possible
    2) I don't know if it's possible to achieve what you want from one load plan to another.
    You may do the following:
    1 - Create a table with the load plan name or ID and the dependency between them (like a parent-child table) and put start and end date times or flag attributes to inform the execution start and finish.
    2 - Create one or more package or procedure to control the finish of one load plan and start of the other. Use the ODITimeWait and a variable to check the value of the flags in a loop.
    3 - Put the call of these packages or procedures in the beginning of each load plan so he may start but will continue only if the parent load plan finished sucessfuly.
    May be a little complicated in the beginning but worth a try and you can attach as many load plans you want.
    OR
    1 - Create a package with a call to the child load plan using OdiStartLoadPlan
    2 - Add the package scenario to the end of the first load plan.
    Any other idea will be greatly appreciated.
    Cheers.

  • Using variables in ODI 11.1.1.5

    Hi,
    i have created 4 variables in ODI 11g as mentioned below:
    1.Variable_name = v_date
    datatype = alphanumeric
    default value = '30-NOV-2011 11:00:00'
    2.Variable_name = v_time_offset
    datatype = alphanumeric
    default value = 125
    3.Variable_name = v_starttime
    datatype = alphanumeric
    default value = '30-NOV-2011 11:00:00'
    4.Variable_name = v_endtime
    datatype = alphanumeric
    default value = '30-NOV-2011 11:30:00'
    I have created a filter on the source table to pull the records only for the time between v_starttime and v_endtime.
    Now, in the ODI package, I have declared all the above 4 variables. Here I want to calculate the variable values v_starttime and v_endtime to pass on to the interface. I have used the below calculations to set the variables :
    v_starttime = #v_date+(#v_time_offset/1440)
    v_endtime = #v_date+((#v_time_offset+5)/1440)
    Now when I execute the package, the package(the interface) is getting failed with the error - invalid character. When I looked into the variables to see whether they are refreshed properly, they didn't. In the Operators, Under 'History' of variables section, the value of both the variables are showing as #v_date+(#v_time_offset/1440) and #v_date+((#v_time_offset+5)/1440) only. Thats means the varaibles are not evaluated properly. Kindly help me how can I fix this ? Many thanks in advance ...
    regards,
    sai

    Hi Sai,
    Please try below one
    Take 2 more ODI variable 1) v_STime and 2) v_ETime
    In v_STime write below query
    select to_date(to_char(v_date,'yyyy-mm-dd'),'yyyy-mm-dd')+(to_number(#v_time_offset)/1440) from dual;
    In v_ETime write below query
    select to_date(to_char(v_date,'yyyy-mm-dd'),'yyyy-mm-dd')+(to_number(#v_time_offset)+5/1440) from dual;
    Note: For v_date,v_starttime and v_endtime variable please don't take default value just write below query
    Query: select sysdate from dual;
    Hope this may helps you
    Regards,
    Phanikanth

  • Early execution of scheduled load plan

    Hi All,
    Can anyone help me
    In my Project, production environment they scheduled 2 loadplans ie fulltest & odscopies
    so what happen here is in fulltest scheduled at every sat 1.00am, having 7 scenarios with 3 are parellel, in that 2 scenarios has executed befor the scheduled time and again exectuted scheduled time
    why its runs we are not able to found it and its do this week only never happen previosly ?
    Thansk in advance
    srikanth

    Hi.
    1) I don't know if its possible
    2) I don't know if it's possible to achieve what you want from one load plan to another.
    You may do the following:
    1 - Create a table with the load plan name or ID and the dependency between them (like a parent-child table) and put start and end date times or flag attributes to inform the execution start and finish.
    2 - Create one or more package or procedure to control the finish of one load plan and start of the other. Use the ODITimeWait and a variable to check the value of the flags in a loop.
    3 - Put the call of these packages or procedures in the beginning of each load plan so he may start but will continue only if the parent load plan finished sucessfuly.
    May be a little complicated in the beginning but worth a try and you can attach as many load plans you want.
    OR
    1 - Create a package with a call to the child load plan using OdiStartLoadPlan
    2 - Add the package scenario to the end of the first load plan.
    Any other idea will be greatly appreciated.
    Cheers.

  • Issue with the upadted database Schema in ODI 11g ?

    Hi ,
      I am new to ODI ..  and i am using ODI 11g .
    the problem which i am facing is below stated :
    I have an existing interface with both source and target tables its working fine . when there is change in the column in the source and the target table i do the reversed enginnner to get the new colums in the source nad the target schema .
    I tried to retain the existing mapping  of source and traget by deleting the source schema and replacing it with the newly updated schema  in the source colum in the interface .
    and  drag and drop the the newly updated schema In the target colum in this way i was able to retain the existing mapping ,and did the mapping for the new columns in both .
    The problem is that it is running succesful and data for the earlier existing mapping are moving from source to target but not for the newly mapped column .
    please help me out in sorting out this issue 
    the knowlede modules that i am using it are as follows
    For LKM  i am using LKM SQL to SQL
    For CKM  - CKM SQL
    FOR IKM -IKM SQL Incremental Update

    Thanks for the suggestion .i am working with Interface . i implemented that and got the colums without deleting anything ,but when  i am mapping the newly upadted colums i am getting an error while executing the Interface .
    ODI-1228: Task TARGET_1 (Control) fails on the target  connection odipoc.
    Caused By: java.sql.SQLSyntaxErrorException: ORA-00904: "COUNTRY": invalid identifier
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:931)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:481)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:205)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:548)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:217)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1115)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1488)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3769)
    at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3954)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1539)
    at oracle.odi.runtime.agent.execution.sql.SQLCommand.execute(SQLCommand.java:163)
    at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:102)
    at oracle.odi.runtime.agent.execution.sql.SQLExecutor.execute(SQLExecutor.java:1)
    at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
    at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
    at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:558)
    at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:464)
    at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2093)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
    at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
    at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
    at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
    at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
    at java.lang.Thread.run(Thread.java:662)

Maybe you are looking for