ODIExperts.com

The blog for Oracle Data Integrator ( ODI )

Agent

This post describes how to create an single and multiple agent and how to start an scheduler agent and other information.

Step 1 – Start the Agent.bat or Agent.sh under oracledi/bin

image

Step 2 – Topology Manager – >   Physical Architecture – > Agents  -> Insert Agent

image

Provide the required information and click Test  and you should get a pop – Agent Test Successful. The default Port is 20910

image

If you are getting this above error message , it means you have not started agent.bat or agent.sh and Please do so and test again.

[ Note : – In case you wish to start an agent on another port say 20911 , go to Oracledi/bin  and type  agent -port=20911 and click test for successful connection . By default agent.bat or agent.sh communicate on 20910 port only ]

Step 3 – Topology Manager – >   Logical  Architecture – > Agents  -> Insert Agent

image

Link the Physical and Logical Agent with the required Context.

Step 4 – Editing odiparams.bat or odiparams.sh

rem

rem Repository Connection Information

rem

set ODI_SECU_DRIVER=oracle.jdbc.driver.Oracle Driver

set ODI_SECU_URL=jdbc:oracle:thin:@WIN-Q5COCAGCSMF:1521:ORCL

set ODI_SECU_USER=ODI_MASTER

set ODI_SECU_ENCODED_PASS=bPyXDShZRGkg822hGYJ8Dy

set ODI_SECU_WORK_REP=ORCL_WORK_REP

set ODI_USER=SUPERVISOR

set ODI_ENCODED_PASS=LELKIELGLJMDLKMGHEHJDBGBGFDGGH

  • ODI_SECU_DRIVER – Provide the driver name of the Agent Technology ( for my example its Oracle )
  • ODI_SECU_URL  –  Provide the Url of the Connection string
  • ODI_SECU_USER – Master Repository User
  • ODI_SECU_ENCODED_PASS – Master Repository User Password , To encode any password under oracledi /bin in command prompt or terminal type  agent encode <password > for windows (or)  sh agent.sh encode < password> for Unix
  • ODI_SECU_WORK_REP – Work Repository Name

Don’t change the ODI_USER  & ODI_ENCODED_PASS from default , unless you want to run from other SUPERVISOR privilege account or you have changed the SUPERVISOR  password.

Step 5 – Running an Agent

Running ODI Agent as scheduler agent

Run the agent in agentscheduler mode  from oracledi/bin

agentscheduler -name=<agent_created> -port=<port_no>for Windows

sh agentscheduler.sh -name=<agent_created> -port=<port_no> for Unix

To run into background run the command  in Unix –

sh agentscheduler.sh -name=<agent_name> -port=<port_no> &

Running ODI Agent as Windows Service

agentservice -i -s <agent_name> as Scheduler Agent

agentservice -i -a <agent_name> as Listener Agent

For help on agent service type – > agentservice – help

clip_image001[4]

To start the service go to the service ( services.msc ) . Right click Start

clip_image002[4]

( Or ) NET START SnpsAgent<agent_name> ( from windows common prompt)

For my example – > SnpsAgentXMT_AGENT

clip_image003[4]

Running Multiple Agents.

Lets say I am creating another agent – XMT_AGENT_2  on Port –20911

image

Run the agent.bat or agent.sh with the port number you are planning to run on.

image

image

Click Test for successful connection.

To run simultaneously agent 1 and agent 2 , we will need to make a duplicate of   agentscheduler  . Rename the copy to  meaningful name  for my example i have renamed to   agentscheduler_2.bat.

Lets run both the agent simultaneously.

image

For creating agent on two different Server , make a copy of odiparams and agentscheduler and lets say  i rename to  odiparams_2.bat and agentscheduler_2.bat  and

change the  the agentscheduler_2.bat   – >

call “%ODI_HOME%binodiparams.bat” to

call “%ODI_HOME%binodiparams_2.bat” .

Load Balancing

If you have two or three agent and you want to do Load Balancing ,

under  Physical Agents  – > Load Balancing check the required Agents

image

For scheduling using ODI Scheduler look into this earlier post  Scheduling using ODI Scheduler

39 Comments

  1. HI, i as per my user requirment i scheduled the scenarios actuallu i modified and updated the agent but those sessions are not triggering as per scheduled time.it is triggering as per previous scheduled times only and some scenarios are not triggering as previous or newly updated.

  2. Hi All,

    Pleae provide solution for my problem.

    I have a package xxx and its scheduled for 7 o clock.

    when the job started means its fialing due to duplicate issue.

    without removing duplicates , if we restart the job means the job got complted successfully. If one happen happens means we said ok ,but happening for so many days.

    The same query execute 2nd time menas the duplicates records are not coming and job complted successfully also.

    Please provide solution for this.

  3. 4 scenario are running sequentailly in package if 3 rd is failed how to restart from the failure scenario?
    4 scenario are running sequentailly in load plan if 3 rd is failed how to restart from the failure scenario?
    how many master and work repositories are created in single server?
    how scenario can be scheduled

  4. Hi,

    Problem detail is given below:

    For example i have a scnario “XXXXXX” and this scnario is scheduled for 4:00 clk daily and i should execute only once.

    I verified in scheduling execution cycle also,there we mentioned “one time should be execute”. So there no problem in scheduling.

    But the job is started to run twice a day.

    I dont know ,kinldy help in this.

    Thanks.

    • HI,

      it should execute only once… didn’t you duplicate the scheduling?

      If not I think is some kind of bug… my suggestion is to raise a SR to Oracle..

  5. Hi,

    I am not getting any update schedule status in agents. I tested , my agents are working fine. And also my interface scenarios are not scheduling. Please help me.

  6. Hi Kshitiz,

    I am working on 11.1.1 . When I am scheduling a scenario its getting triggered twice and the execution is getting failed .
    When I checked under privileges it was showing two users . I deleted the schedule and also I deleted one of the user . When I created another schedule, I am facing the same issue(This time there was only one user under privileges).

  7. How 2 create agent in odi 12c ?

  8. Hi,

    I am trying to stop the odi agent using agentstop.bat. I didnt get any error but still agent was not stopped(agent test was successfull) . I am using ODI version 11.1.1.

    Thanks,
    Kritika

  9. Pingback: How To Fix Failed To Get Agent Interface Pointers Hr=80004002 Errors - Windows Vista, Windows 7 & 8

  10. I have managed an ODI agent successfully. I scheduled it for repeating 21 times in 58 minutes every 3 minutes. For a while it has worked accurately every 3 minutes, but for some unknown reasons and whit out any changes in configuration, it is going to run every 15 minutes.
    I am really mixed up, and I don’t know how to solve the problem. (The agent is on the server)
    would you please guide me how to solve the problem or any idea?

  11. i have tryied all the steps which you are explain in blog but still i get this error that error ODI:23006 agent test failed

  12. I have one agent & one schedule.But the agent was kicking off the two instances of one schedule. To resolve this i deletaed the schedule stopped the agnet & restared the agent & recreated altogether new schedule. But again it was kicking two instances. I also checked snp_plan_agent table in work repo. There is only one entry for one schedule under snp_plan_agent table.

    I deleted the schedule itself & updated the agent. Even after this also one session is getting kicked off.
    My question is without any schedule how its getting kickedoff.

    Now my snp_plan_agent is empty in all environment.

    Kinldy help on this i ma facing this issue in production since last 30 days.

  13. Hi All,

    Any pointers to suggest on my above request.

    Thanks,
    Kalyan

  14. Hi ,

    I am getting the below error while trying to reverse the tables in ODI 11.1.1.5.0
    Error Message oracle.odi.jdbc.datasource.ConnectionTimeoutException: A login timeout occured while connecting to the database.

    Database is SQL Server 2008 and the appropriate Driver and URL used are as follows :
    Driver : com.microsoft.sqlserver.jdbc.SQLServerDriver
    URL : jdbc:weblogic:sqlserver://XXXXYYYY:1433;selectMethod=cursor;databaseName=ZZZZZ;integratedSecurity=false
    where XXXX is the servername, YYYY is the instancename and ZZZZ is the database name.

    We tried to change the timeout parameter available in ODI Designer GUI -> ODI -> User Parameters -> Oracle Data Integrator Timeout. we tested it by changing upto 500.

    Any pointers to suggest.

    Thanks,
    Kalyan

  15. How do I remove the agent service and deploy again?

  16. Thanks Kshitiz for your guidance. When I try to run the ODI agent scheduler from Services.msc it throws following error – Could not start the OracleDI Agent Scheduler DEV_AGENT on Local Computer.
    Error -1067 The process terminated unexpectedly.

    Thanks!

  17. Hi Kshitiz ,
    I am working on 10.1.3.5 version of ODI. When I run the agent from my client machine, it throws the error shared in the above post. Can you please tell me what is the difference between the client agent and the main server agent? If i look at the ODI home on my client machine it has same folder structure as on the ODI main server machine.
    Thanks!

    • Hi ritika,

      in order to solve that start the agent.bat and then test the connection in Topology and that should be successul. Now regarding the Server Agent and client agent. Its more about logical flow and understanding than the physical aspect. When you are starting the agent in Unix Box , you are making use of the Unix box resource for ODI operation where as Client box have limited and restrictred resource, so the Unix Box acts like a Server .

  18. To add to the above post, I am using ODI client for development. ODI is installed on Unix server. So, do i need to run the agent.bat from Unix server? Can you please tell me what is the difference between the two? If i look at the ODI home on my client machine it has same folder structure as on the ODI host machine.

    • In ODI 11g when you install as a client then you dont have a standalone agent so drivers are stored in userlib and accessed by local(no agent) while installing in unix server you need to select the option of standalone agent and then run the agent in Unix server and connect using the client.
      Please let me know if you have any question or doubts . i can provide more detailed or information regarding the same.

  19. Hi,
    Very helpful stuff! I was trying to use the steps above but the agent is not getting tested for me. I am getting the error –
    java.net.ConnectException: Connection timed out: connect.
    Please guide me!
    Thanks

  20. Hi!

    Thanks for this blog! Very helpful for newbies like me. I have been trying to make the scheduling work.

  21. I am not able to execute the command.

    agentscheduler.bat “-port=20910” “–name=XLT_AGENT” “-v=5”

    The command is a causing error.
    The agent is tested in topology manager.
    what is the probable error?

    The error is describe below:

    A JDK is required to execute Web Services with OracleDI. You are currently using a JRE.

    OracleDI: Starting Scheduler Agent …

    09/11/2010 06:11:18 PM(main): DwgTaskSql.supportTransactions : test transactions capability for :
    Oracle JDBC driver
    10.1.0.5.0

    09/11/2010 06:11:18 PM(main): DwgTaskSql.supportTransactions : test transactions capability for :
    Oracle JDBC driver
    10.1.0.5.0

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select BATCH_UPDATE_SIZE, CONNECT_TYPE, CON_NAME, DSERV_NAME, FETCH_ARRAY_SERV, FIRST_DATE, FIRST_USER, IND_JNDI, I_CONNECT, I_HOST, I_TECHNO, I_TXT_JAVA_URL, I_TXT_JNDI_URL, I_TXT_WS_BASE_URL, JAVA_DRIVER, JNDI_AUTHENT, JNDI_FACTORY, JNDI_PROTO, JNDI_PWD, JNDI_RESSOURCE, JNDI_USER, LAST_DATE, LAST_USER, PASS, USER_NAME, WS_DEPLOY_MODE from SNP_CONNECT where SNP_CONNECT.I_CONNECT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where I_TXT = ?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:92999
    Txt:jdbc:oracle:thin:@localhost:1522:XE
    TxtOrd:0]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT_ORIG, ORIGINE_NAME, SNPS_COL, SNPS_TABLE from SNP_MORIG_TXT where SNP_MORIG_TXT.I_TXT_ORIG=?

    09/11/2010 06:11:18 PM(main): SnpMorigTxt.getObjectByIdent : :
    ITxtOrig:6
    OrigineName:MOrigTxt.Connect.JavaURL
    SnpsCol:I_TXT_JAVA_URL
    SnpsTable:SNP_CONNECT

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectLst : :
    [Text on master #92999: “jdbc:oracle:thin:@localhost:1522:XE” encrypted ? : null (Encryption key = “null”)]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select FIRST_DATE, FIRST_USER, I_CONNECT, LAST_DATE, LAST_USER, REP_ID, REP_NAME, REP_TIMESTAMP, REP_TYPE from SNP_REM_REP where REP_NAME = ?

    09/11/2010 06:11:18 PM(main): SnpRemRep.getObjectLst : :
    [FirstDate:2010-09-09 12:04:11.0
    FirstUser:SUPERVISOR
    IConnect:1001
    LastDate:2010-09-09 12:04:11.0
    LastUser:SUPERVISOR
    RepId:1
    RepName:WORKREP
    RepTimestamp:1284014047468
    RepType:W]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select BATCH_UPDATE_SIZE, CONNECT_TYPE, CON_NAME, DSERV_NAME, FETCH_ARRAY_SERV, FIRST_DATE, FIRST_USER, IND_JNDI, I_CONNECT, I_HOST, I_TECHNO, I_TXT_JAVA_URL, I_TXT_JNDI_URL, I_TXT_WS_BASE_URL, JAVA_DRIVER, JNDI_AUTHENT, JNDI_FACTORY, JNDI_PROTO, JNDI_PWD, JNDI_RESSOURCE, JNDI_USER, LAST_DATE, LAST_USER, PASS, USER_NAME, WS_DEPLOY_MODE from SNP_CONNECT where SNP_CONNECT.I_CONNECT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where I_TXT = ?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:1001
    Txt:jdbc:oracle:thin:@localhost:1522:XE
    TxtOrd:0]

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectLst : :
    [Text on master #1001: “jdbc:oracle:thin:@localhost:1522:XE” encrypted ? : null (Encryption key = “null”)]

    09/11/2010 06:11:18 PM(main): SnpConnect.getObjectByIdent : :
    BatchUpdateSize:30
    ConnectType:R
    ConName:Work Repository
    DservName:null
    FetchArrayServ:30
    FirstDate:2010-09-09 12:03:43.0
    FirstUser:SUPERVISOR
    IndJndi:0
    IConnect:1001
    IHost:null
    ITechno:1999
    ITxtJavaUrl:1001
    ITxtJndiUrl:null
    ITxtWsBaseUrl:null
    JavaDriver:oracle.jdbc.driver.OracleDriver
    JndiAuthent:null
    JndiFactory:null
    JndiProto:null
    JndiPwd:null
    JndiRessource:null
    JndiUser:null
    LastDate:2010-09-09 12:03:43.0
    LastUser:SUPERVISOR
    Pass:fDyHUHda7iRSDRUcb0Xs
    UserName:snpw1
    WsDeployMode:U

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where I_TXT = ?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:1001
    Txt:jdbc:oracle:thin:@localhost:1522:XE
    TxtOrd:0]

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectLst : :
    [Text on master #1001: “jdbc:oracle:thin:@localhost:1522:XE” encrypted ? : null (Encryption key = “null”)]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_CONNECT, PROP_KEY, PROP_VALUE from SNP_CONNECT_PROP where I_CONNECT = ? order by PROP_KEY

    09/11/2010 06:11:18 PM(main): SnpConnectProp.getObjectLst : :
    []

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select CATALOG_TERM, COL_ALIAS_WORD, DATE_FCT, DDL_DATE_MASK, DDL_LONGRAW_MASK, DDL_NULL, DDL_NUMERIC_MASK, DDL_VARCHAR_MASK, DSERVER_TERM, EXEC_PLAN_REQUEST, EXE_CHANEL, EXP_GROUP_BY, EXP_HAVING, EXP_ORDER_BY, EXT_VERSION, FIRST_DATE, FIRST_USER, GET_DATE_REQUEST, IND_CATALOG, IND_CHANGE, IND_DSERVER, IND_FILE_PARAM, IND_LOGICAL, IND_PHYSICAL, IND_SCHEMA, I_AK_TXT, I_CHECK_TXT, I_FK_TXT, I_INDEX_TXT, I_PK_TXT, I_TECHNO, JOIN_BRACE, JOIN_CAP, JOIN_CLAUSE_ON, JOIN_CROSS, JOIN_FULL, JOIN_IN, JOIN_LEFT_OUT, JOIN_OUTER, JOIN_OUTER_BA, JOIN_OUTER_LOC, JOIN_OUTER_SIDE, JOIN_RIGHT_OUT, LAST_DATE, LAST_USER, LOC_OBJ_PATTERN, MAX_COL_NAME_LEN, MAX_TAB_NAME_LEN, REM_OBJ_PATTERN, SCHEMA_TERM, SQL_CAP, TAB_ALIAS_WORD, TECHNO_NAME, TECH_INT_NAME, WHERE_CAP from SNP_TECHNO where I_TECHNO=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where SNP_MTXT.I_TXT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:2409999
    Txt:select
    c.constraint_name PK_NAME,
    cc.column_name COLUMN_NAME
    from
    all_constraints c,
    all_cons_columns cc
    where c.constraint_type=’P’
    and c.owner=:SCHEMA
    and c.table_name=:TABLE
    and c.owner=cc.owner
    and c.constraint_name=cc.constraint_name

    TxtOrd:0, ITxt:2409999
    Txt:
    order by c.constraint_name,cc.position

    TxtOrd:1]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT_ORIG, ORIGINE_NAME, SNPS_COL, SNPS_TABLE from SNP_MORIG_TXT where SNP_MORIG_TXT.I_TXT_ORIG=?

    09/11/2010 06:11:18 PM(main): SnpMorigTxt.getObjectByIdent : :
    ITxtOrig:15
    OrigineName:SnpMorigTxt.Techno.PkReverseTxt
    SnpsCol:I_PK_TXT
    SnpsTable:SNP_TECHNO

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectByIdent : :
    Text on master #2409999: “select
    c.constraint_name PK_NAME,
    cc.column_name COLUMN_NAME
    from
    all_constraints c,
    all_cons_columns cc
    where c.constraint_type=’P’
    and c.owner=:SCHEMA
    and c.table_name=:TABLE
    and c.owner=cc.owner
    and c.constraint_name=cc.constraint_name

    order by c.constraint_name,cc.position
    ” encrypted ? : null (Encryption key = “null”)

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where SNP_MTXT.I_TXT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:4999
    Txt:select
    c.constraint_name AK_NAME,
    cc.column_name COLUMN_NAME,
    cc.position
    from
    all_constraints c,
    all_cons_columns cc
    where
    c.constraint_type=’U’
    and c.owner=:SCHEMA
    and c.table_name=:TABLE
    and c.owner=cc.owner
    and c.constraint_name=c
    TxtOrd:0, ITxt:4999
    Txt:c.constraint_name
    order by 1, 3
    TxtOrd:1]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT_ORIG, ORIGINE_NAME, SNPS_COL, SNPS_TABLE from SNP_MORIG_TXT where SNP_MORIG_TXT.I_TXT_ORIG=?

    09/11/2010 06:11:18 PM(main): SnpMorigTxt.getObjectByIdent : :
    ITxtOrig:2
    OrigineName:MOrigTxt.Action.ActionLine
    SnpsCol:I_TXT_ACTION
    SnpsTable:SNP_LINE_ACTION

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectByIdent : :
    Text on master #4999: “select
    c.constraint_name AK_NAME,
    cc.column_name COLUMN_NAME,
    cc.position
    from
    all_constraints c,
    all_cons_columns cc
    where
    c.constraint_type=’U’
    and c.owner=:SCHEMA
    and c.table_name=:TABLE
    and c.owner=cc.owner
    and c.constraint_name=cc.constraint_name
    order by 1, 3” encrypted ? : null (Encryption key = “null”)

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where SNP_MTXT.I_TXT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:2410999
    Txt:select
    pkc.table_name PK_TABLE_NAME,
    fk.constraint_name FK_NAME,
    substr(fkc.column_name,1,35) FK_COLUMN_NAME,
    pkc.column_name PK_COLUMN_NAME
    From all_constraints fk,
    all_constraints pk,
    all_cons_columns fkc,
    all_cons_columns pkc
    wher
    TxtOrd:0, ITxt:2410999
    Txt:e fk.constraint_type = ‘R’
    and fk.owner = :SCHEMA
    and fk.table_name = :TABLE
    and pk.owner = fk.r_owner
    and pk.constraint_name = fk.r_constraint_name
    and pkc.owner = fk.r_owner
    and pkc.constraint_name = fk.r_constraint_name
    and pkc.position
    TxtOrd:1, ITxt:2410999
    Txt: = fkc.position
    and fkc.owner = fk.owner
    and fkc.constraint_name = fk.constraint_name
    order by fkc.position

    TxtOrd:2]

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT_ORIG, ORIGINE_NAME, SNPS_COL, SNPS_TABLE from SNP_MORIG_TXT where SNP_MORIG_TXT.I_TXT_ORIG=?

    09/11/2010 06:11:18 PM(main): SnpMorigTxt.getObjectByIdent : :
    ITxtOrig:16
    OrigineName:SnpMorigTxt.Techno.FkReverseTxt
    SnpsCol:I_FK_TXT
    SnpsTable:SNP_TECHNO

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectByIdent : :
    Text on master #2410999: “select
    pkc.table_name PK_TABLE_NAME,
    fk.constraint_name FK_NAME,
    substr(fkc.column_name,1,35) FK_COLUMN_NAME,
    pkc.column_name PK_COLUMN_NAME
    From all_constraints fk,
    all_constraints pk,
    all_cons_columns fkc,
    all_cons_columns pkc
    where fk.constraint_type = ‘R’
    and fk.owner = :SCHEMA
    and fk.table_name = :TABLE
    and pk.owner = fk.r_owner
    and pk.constraint_name = fk.r_constraint_name
    and pkc.owner = fk.r_owner
    and pkc.constraint_name = fk.r_constraint_name
    and pkc.position = fkc.position
    and fkc.owner = fk.owner
    and fkc.constraint_name = fk.constraint_name
    order by fkc.position
    ” encrypted ? : null (Encryption key = “null”)

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where SNP_MTXT.I_TXT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:5999
    Txt:select
    i.index_name INDEX_NAME,
    ic.column_name COLUMN_NAME
    from
    all_indexes i,
    all_ind_columns ic
    where
    i.owner=:SCHEMA
    and i.table_name=:TABLE
    and i.owner=ic.index_owner
    and i.index_name=ic.index_name
    order by i.index_name, ic.column_pos
    TxtOrd:0, ITxt:5999
    Txt:ition

    TxtOrd:1]

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectByIdent : :
    Text on master #5999: “select
    i.index_name INDEX_NAME,
    ic.column_name COLUMN_NAME
    from
    all_indexes i,
    all_ind_columns ic
    where
    i.owner=:SCHEMA
    and i.table_name=:TABLE
    and i.owner=ic.index_owner
    and i.index_name=ic.index_name
    order by i.index_name, ic.column_position
    ” encrypted ? : null (Encryption key = “null”)

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select ENC, ENC_KEY, I_TXT, I_TXT_ORIG from SNP_MTXT where SNP_MTXT.I_TXT=?

    09/11/2010 06:11:18 PM(main): SnpsQuery.updateExecStatement : prepare request :
    Select I_TXT, TXT, TXT_ORD from SNP_MTXT_PART where I_TXT=? order by TXT_ORD

    09/11/2010 06:11:18 PM(main): SnpMtxtPart.getObjectLst : :
    [ITxt:6999
    Txt:select
    constraint_name CHECK_NAME,
    search_condition CHECK_TXT,
    decode(STATUS, ‘ENABLED’, ‘1’, ‘0’) CHECK_STATUS,
    null CHECK_DESC
    from
    all_constraints
    where
    constraint_name not like ‘SYS%’
    and constraint_type = ‘C’
    and owner = :SCHEMA
    and
    TxtOrd:0, ITxt:6999
    Txt: table_name = :TABLE

    TxtOrd:1]

    09/11/2010 06:11:18 PM(main): SnpMtxt.getObjectByIdent : :
    Text on master #6999: “select
    constraint_name CHECK_NAME,
    search_condition CHECK_TXT,
    decode(STATUS, ‘ENABLED’, ‘1’, ‘0’) CHECK_STATUS,
    null CHECK_DESC
    from
    all_constraints
    where
    constraint_name not like ‘SYS%’
    and constraint_type = ‘C’
    and owner = :SCHEMA
    and table_name = :TABLE

    ” encrypted ? : null (Encryption key = “null”)

    09/11/2010 06:11:18 PM(main): SnpTechno.getObjectLst : :
    [CatalogTerm:null
    ColAliasWord:null
    DateFct:sysdate
    DdlDateMask:DATE
    DdlLongrawMask:LONG RAW
    DdlNull:NULL
    DdlNumericMask:NUMBER(%L,%P)
    DdlVarcharMask:VARCHAR2(%L CHAR)
    DserverTerm:DSERVER_INSTANCE
    ExecPlanRequest:null
    ExeChanel:J
    ExpGroupBy:1
    ExpHaving:1
    ExpOrderBy:1
    ExtVersion:null
    FirstDate:2010-09-09 11:54:01.0
    FirstUser:SUNOPSIS_INSTALL
    GetDateRequest:SELECT SYSDATE FROM DUAL
    IndCatalog:0
    IndChange:U
    IndDserver:1
    IndFileParam:0
    IndLogical:1
    IndPhysical:1
    IndSchema:1
    IAkTxt:4999
    ICheckTxt:6999
    IFkTxt:2410999
    IIndexTxt:5999
    IPkTxt:2409999
    ITechno:1999
    JoinBrace:0
    JoinCap:1
    JoinClauseOn:W
    JoinCross:null
    JoinFull:null
    JoinIn:null
    JoinLeftOut:[empty]
    JoinOuter:(+)
    JoinOuterBa:A
    JoinOuterLoc:C
    JoinOuterSide:O
    JoinRightOut:(+)
    LastDate:2010-09-09 11:54:01.0
    LastUser:SUNOPSIS_INSTALL
    LocObjPattern:%SCHEMA.%OBJECT
    MaxColNameLen:30
    MaxTabNameLen:30
    RemObjPattern:%SCHEMA.%OBJECT@%DSERVER
    SchemaTerm:SCHEMA_SCHEMA
    SqlCap:1
    TabAliasWord:null
    TechnoName:Oracle
    TechIntName:ORACLE
    WhereCap:1]

    09/11/2010 06:11:18 PM(main): DwgConnectConnection : constructor :
    BatchUpdateSize:30
    ConnectType:R
    ConName:Work Repository
    DservName:null
    FetchArrayServ:30
    FirstDate:2010-09-09 12:03:43.0
    FirstUser:SUPERVISOR
    IndJndi:0
    IConnect:1001
    IHost:null
    ITechno:1999
    ITxtJavaUrl:1001
    ITxtJndiUrl:null
    ITxtWsBaseUrl:null
    JavaDriver:oracle.jdbc.driver.OracleDriver
    JndiAuthent:null
    JndiFactory:null
    JndiProto:null
    JndiPwd:null
    JndiRessource:null
    JndiUser:null
    LastDate:2010-09-09 12:03:43.0
    LastUser:SUPERVISOR
    Pass:fDyHUHda7iRSDRUcb0Xs
    UserName:snpw1
    WsDeployMode:U
    ConnectConnection:oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@localhost:1522:XE snpw1 INTERNAL_WORK_3317565
    ConnectIdINTERNAL_WORK_3317565

    09/11/2010 06:11:18 PM(main): DwgTaskSql.supportTransactions : test transactions capability for :
    Oracle JDBC driver
    10.1.0.5.0

    com.sunopsis.core.InvalidArgumentException: Invalid command or parameter : –name=XLT_AGENT

    Sunopsis Agent : Version 10.1.3.4.0 – 30/10/2007

    Usage : Agent [-SECU_DRIVER=] [-SECU_URL=] [-SECU_USER=] [-SECU_PASS=] [-WORK_REPOSITORY=] [-PORT=] [-NAME=] [-HELP] [-V[=]] [command]

    command list :

    ODI_START_SCEN )
    ODI_START_SESS
    ENCODE

    DwgJv.main: Exit. Return code:-1

    • Pranab, Thanks for visiting us. Initially you can run agentscheduler with out trace log i.e just agentscheduler -port-20910 -name=XLT_AGENT and also the agent name needs to be physical agent name.

      although your parameters are correct but looks like something is wrong in odiparams file , since at the end of all these trace log ,
      com.sunopsis.core.InvalidArgumentException: Invalid command or parameter : –name=XLT_AGENT
      Sunopsis Agent : Version 10.1.3.4.0 – 30/10/2007
      Usage : Agent [-SECU_DRIVER=] [-SECU_URL=] [-SECU_USER=] [-SECU_PASS=] [-WORK_REPOSITORY=] [-PORT=] [-NAME=] [-HELP] [-V[=]] [command]

      Can you please provide me few more details like where is the agent being created (i.e ODI Server or Client ) also where is the ODI server located – ( Unix or Windows Server ) and have you updated the odiparams file correctly.

      Thanks
      Dev

  22. Hi Devendra,

    Thank for you reply, but tried what you suggested still faced the same problem.

    I have found the solution for the issue and it is also working fine.

    It is really simple. while creating the agentservice just specify the port also along with the other parameters. it is working fine. When v r not giving the port number all the agent are listening to the same port and so when trying to start the service i faced the error. Hope this will help.

    • When you have two agents running you need to specify ports with agent and I have mentioned that in the blog post too. sorry I forgot to mention in the reply, I had some other assumption and gave you that solution. Good to know your issue is fixed.

  23. Hi,

    I have created two physical agents in different ports with different names. I have installed the ODI agentscheduler as window services. Now i m able to view both my agentschedulers in the windows services list.

    I have started my first agentscheduler service, there was no problem the service started and the scheduling also working fine.,

    When trying to start the second agentscheduler service I getting “Windows could not start the Oracle DI Agent Scheduler CGV1 service on the Local Computer. Error 1067: The process terminated unsuccessfully ”

    At in single system i m not able to start two agentschedulers as window service. Please suggest what need to be done regarding this issue.

    regards
    Siva

    • create another ODIPARAMS.BAT and name its at odiparams1.bat or what ever suits you and update the parameters , now make a copy of agentservice.bat and name it as agentservice1.bat and there change the line ODI_HOME%binodiparams.bat to ODI_HOME%binodiparams1.bat and start the second agent with agentservice1.bat . This way First agent service calls agentservice.bat and second will call agentservice1.bat and keep doing so multiple agent .

      Please feel free to contact us if you require any other help.

Leave a Reply

Required fields are marked *.