BPEL Database Adapter tuning

I am fetching records from Database using DB Adapter in BPEL. It takes more than 3 seconds. If i execute the same query from toad the time taken is less than a second. In my BPEL process i have used translation.
Can any one help me in guiding how can i improve the performance.
I suspect that i need to tune the DB Adapter, Is there any tuning guidelines for tuning DB Adapter.
Regards
Vikas

Hi! i think all of you are very busy... can someone post the tunning guide, i can put it in some webpage to download it, in this way everyone who read this thread will download the guide without posting a message! :-)
Best Regards and blesses!

Similar Messages

  • JDeveloper 11g Errors Editing BPEL Database Adapter

    I am encountering problems editing Database Adapters in a BPEL based Service Composite Application in JDeveloper. Specifically,
    * double-clicking an existing Database Adapter component to view/edit it generates an uncaught exception in the GUI
    * clicking Next through the wizard proceeds to the next step but the view showing the
    SQL select criteria and input parameters doesn't return the original values set when the
    adapter was first created -- a second NPE is logged at that time
    Here are the specifics of what's running:
    * host for JDeveloper is a Windows7 Home Premium 64-bit (version 61. build 7601 SP 1) PC with 8GB RAM
    * JDeveloper 11.1.1.5 (the SOA / WebCenter version)
    * the c:\OracleMW directory has JDK 6.0.24 installed
    * the Windows machine does have Java EE JDK 7 installed but JDeveloper uses the JDK inside c:\OracleMW
    * while running, JDeveloper is using around 274M of memory
    * database hosting the SOA meta data store and the desired DB of the adapter is 11g (11.2.0.1.0)
    * database is up, reachable and healthy while attempting to edit the Adapter component
    Here is the exact error encountered and the stack trace:
    GUI popup = An unexpected error has occurred in JDeveloper. The program may be unstable, which could result in data loss. Decide how you want to proceed and click OK.
    Details = Uncaught exception
    java.lang.NullPointerException
    o.tip.tools.ide.adapters.designtime.adapter.xr.util.SQLRefresher.run(SQLRefresher.java:118)
    j.lang.Thread.run(Thread.java:662)
    If you click on ignore / continue and proceed through the steps of the Wizard, when the Define Selection Criteria step appears, the original criteria and input parameters defined when the adapter was first built are not displayed and the "Feedback - Log" tab in the log windows registers another entry of:
    Previously reported error [NPE in o.tip.tools.ide.adapters.designtime.adapter.xr.util.SQLRefresher:118]
    Also, if you go through the motions of adding a new parameter variable in the top section of the dialog, after clicking OK, the dialog DOES suddenly display the original variables defined as input parameters.
    Thinking this is a symptom of JDeveloper trying to run in too little memory, I have attempted to increase the max memory setting of JDeveloper to 1024M by adding this line
    AddVMOption -Xmx1024M
    in
    c:\OracleMW\JDeveloper\jdev\bin\jdev.conf
    I've also tried adjusting that same setting in the config file for the IDE itself at
    c:\OracleMW\JDeveloper\ide\bin\ide.conf
    and get the same result. (Subsequent review of properties in About JDeveloper shows that JDeveloper uses the jdev.conf file, not the ide.conf file FWIW.) Memory really shouldn't be a problem because I'm still new to SOA style development and the "application" involved is a very simple "HelloSOA" type service that just sets a couple of BPEL variables, transforms some input variables into variables passed to this Database Adapter, does a few more Transform operations for the DB result values to the reply values and sends the reply.
    However, one other sign that memory utilization could be contributing to this is that periodically, switching to the "Source" view of the composite.xml file or the BPEL process file will lock the GUI up for about 35 seconds with nothing happening. An obvious sign of garbage collection gettng triggered.
    Any suggestions?

    Oracle has identified a fix added to newer versions of JDeveloper which corrected these NullPointerException errors encountered using the 11.1.1.5 version of JDeveloper. That fix had not be propagated back to the 11.1.1.5 version but subsequently HAS been ported back. The fix is associated with patch ID 12670305 which can be downloaded from http://support.oracle.com by searching for that bug ID then downloading the associated ZIP file. I've applied the patch to JDeveloper 11.1.1.5 running on Windows7, Vista 32-bit and LINUX 64-bit and it works like a champ on all three platforms.

  • BPEL Database Adapter in SOA Suite10g

    Hi,
    I have couple of questions on bpel in SOA Suite 10g:
    1. When I defined the realtionships between tables in the database adapter and try to modify the generated query,I feel it is not considering the modified SQL.
    2. It is not allowing the CLOB datatype in the query.
    3. what should be the data type in target xsd for an input oracle table filed of CLOB datatype or how to convert the CLOB to string format?
    Could someone please answer me..?
    Thanks,
    Soni

    Hi Soni,
    Below are the answers to your query.
    1. When I defined the realtionships between tables in the database adapter and try to modify the generated query,I feel it is not considering the modified SQL. ---> I have tried it and the query is getting changed, can you try it again.
    2. It is not allowing the CLOB datatype in the query. --> CLOB datatype is converted into string in xsd
    3. what should be the data type in target xsd for an input oracle table filed of CLOB datatype or how to convert the CLOB to string format? --> CLOB datatype acts as String data type in XSD so no need to type cast.
    I hope this answers your query.
    Thanks,
    Ankit

  • BPEL Database Adapter "Faulted while invoking operation.." --where to look?

    Hi,
    I hope that someone can assist me. Occassionally in production a database adapter step will fault. On the BPEL Console flow diagram for the step I can see "Faulted while invoking operation XXXXX on provider YYYYY". The step retries, but the fault never appears to resolve.
    The database being accessed is available and I am able to perform the same query manually. Only a reboot appears to solve the problem.
    Where do I look to see the cause of this fault? I have looked in the following log but cannot see anything either related to the adapter, flow or flow id. Should I look anywhere else?
    Thanks - Anit

    Hi,
    Below is what the database adapt step shows in the flow diagram. The flow contains several other database adapter accesses prior to this, to the same database, and these completed correctly. I will look in the log file you suggested.
    Faulted while invoking operation "DB_ID_PETICION_MNP" on provider "DB_ID_PETICION_MNP".
    <messages>
    <input>
    <Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_InputVariable>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="DB_ID_PETICION_MNPInput_msg">
    <DB_ID_PETICION_MNPInput xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/DB_ID_PETICION_MNP">
    <id_pedido_crm>13485201</id_pedido_crm>
    </DB_ID_PETICION_MNPInput>
    </part>
    </Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_InputVariable>
    </input>
    <fault>
    <bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
    <part name="summary">
    <summary>null</summary>
    </part>
    </bindingFault>
    </fault>
    </messages>
    [FAULT RECOVERY] Schedule retry #1 at "Oct 23, 2009 11:28:39 AM".
    ...same as before. This repeated 4 times.
    Finally rebooted the server, and the adapter completed OK:
    <messages>
    <Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_InputVariable>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="DB_ID_PETICION_MNPInput_msg">
    <DB_ID_PETICION_MNPInput xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/DB_ID_PETICION_MNP">
    <id_pedido_crm>13485201</id_pedido_crm>
    </DB_ID_PETICION_MNPInput>
    </part>
    </Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_InputVariable>
    <Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_OutputVariable>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="response-headers">[]</part>
    <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="DB_ID_PETICION_MNPOutputCollection">
    <DB_ID_PETICION_MNPOutputCollection xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/DB_ID_PETICION_MNP">
    <DB_ID_PETICION_MNPOutput>
    <ID_PETICION_MNP>13485201-37491</ID_PETICION_MNP>
    </DB_ID_PETICION_MNPOutput>
    </DB_ID_PETICION_MNPOutputCollection>
    </part>
    </Invoke_Obtener_ID_PETICION_MNP_DB_ID_PETICION_MNP_OutputVariable>
    </messages>
    Thanks - Anit

  • BPEL Database Adapter data to B2B TP

    Hi SOA/BPEL Experts
    In BPEL How we are going to Map my Data base data ie which i got from Database Adapter to the Partner Link Adapter Service Trading Partner Data for ex EDI, X12 V4010 210's.
    My Database data which i want to send to the Partner <----to-----> .ecs (X12 V4010 210's) format data ??
    Any idea's is appreciated, any Examples are also helpful
    thanks
    Ravi
    Edited by: user598717 on Aug 24, 2009 6:48 AM

    Hi SOA/BPEL Experts
    In BPEL How we are going to Map my Data base data ie which i got from Database Adapter to the Partner Link Adapter Service Trading Partner Data for ex EDI, X12 V4010 210's.
    My Database data which i want to send to the Partner <----to-----> .ecs (X12 V4010 210's) format data ??
    Any idea's is appreciated, any Examples are also helpful
    thanks
    Ravi
    Edited by: user598717 on Aug 24, 2009 6:48 AM

  • BPEL database adapter pooling rooling back transaction

    Dear Forum Members,
    I made a quick example of BPEL retrieving data from DB adapter which is pooling a database, transforms the data and generate a file.
    The process executes, but at the end is throws the following fault: The transaction was rolled back. The work performed for bpel instance "X" was rolled back, but the audit trail has been saved for this instance.If this is a sync request, please resubmit the request from the client. If it is an async request, please recover from the recovery console by resubmitting the invoke message.
    Along with the fault, the adapters does not update the processed database rows.
    Did a miss any configuration?
    Regards.

    Hi,
    You have to investigate the reason it is rolling back... Is the process taking too long? Do the process have rights to update the database? Check SOA *diagnostic* log files...
    Cheers,
    Vlad

  • BPEL Database Adapter Issue

    I am using DB adapter in my bpel for polling purpose. so that if any new entry comes in the db in a specific table it will execute my bpel. and in DB adapter I made configuration for sequence file. but whatever value I enter in the table my sequence file is updated with value "32477". can any body help in this regards.

    Well this happened on the production so we don't really have the scope of testing this again. Also it has not happened before anywhere else. 
    This version is Oracle application Server 10g (10.1.3.5).

  • Parent-Child Join on tables in Database Adapter

    Hi,
    We are doing a join on two tables(T1 and T2) in Database adapter for an Insert operation. There is no Reference Integrity between these two tables in Database, but join is done through bpel database adapter.
    Here is a scenario - when we try to insert a record(parent-child), into these two tables, If there is any data issue in any of the child record, Adapter inserts parent-record, also inserts few child-records it processed before it encountered this data issue and terminates.
    Issue here is , We want this to be transactional, it means, If any of the child record fails adapter should rollback the entire insert operation both from parent and child tables and exit with an error. Instead BPEL inserting half records into child table.
    Is there any parameter I need to set or am I missing anything? Someone please suggest.
    Thanks,
    Phani

    There are a few options I guess.
    1. Add the referential key constraint.
    2. Add custom logic in your BPEL project to compensate for any errors you encounter in your BPEL processes.

  • Database Adapter Connection to EBusiness Suite Issue

    I have a process that creates records in the EBusiness Suite using the BPEL Database Adapter. The adapter calls a single wrapper procedure that internally calls 4 TCA APIs one after the other. There appears to be an USERENV LANG issue during the final api that is called. The LANG needs to be US but the SQL Worksheet in JDeveloper BPEL Designer returns GB which I suspect is the value the adapter has when it connects to the eBusiness Suite.
    How can the value of the LANG be set for the adapter ? My Environment variable for NLS_LANG is set to AMERICAN_AMERICA.WE8ISO8859P1. My various Oracle homes are also set to this value.
    I have also tried FND_GLOBAL.APPS_INITIALIZE procedure to effectively 'log on' to the EBS but this returns an error. The same wrapper package called directly from SQL*Plus works perfectly (where USERENV LANG is US). Solutions welcome !

    The issue was resolved by adding the following to the start of the wrapper procedure:
    EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_LANGUAGE = ''AMERICAN''';

  • Database adapter not returning all the records

    I've taken over a BPEL from a developer who left the organization and have been having an issue during our User Acceptance Testing. We are querying a table that will return the insurance enrollment information for employee's and their dependants. When an employee change plans, or adds people, the old plan is terminated and a new once is created. When this happens there will be two records on the database to show the old plan and the new plan.
    When we run the SQL thru JDEV or SQLDeveloper, the data comes out fine. When we run it through a BPEL Database Adapter we are only getting one of the rows returned.
    I have created a small tester BPEL that is easily modified and deployed to run the same query to try multiple configurations changes within the DBAdapter. What I have found is all the records are returned when the "Return single result set" box on the DBAdapter Wizard is unchecked. When it's checked then it only returns one record for the employees with an old and a new plan.
    Can someone explain what the "Return single result set" option does, and what the impact will be if it's unchecked?

    Hello,
    In same way i am using two parent-child(header-line) tables. they have one to many relationship.
    I want to generate XML which contains multiple line items under a child elements for header elements.
    I have tried it but i am getting only one line under that child item. i am using jdev10.0.3.3.0
    can u help me please.
    -regards
    satyendra

  • How to use Database Adapter in BPEL

    I want to use Database Adapter in BPEL to transfer data from one table to other table and the data is still hold in the read table?
    I can find a example from http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#BDCIGDCB.
    And the general design of my BPEL is as following:
    1. Add a "status" column to the read table. And alter the value of status column of all data in read table to "unreaded".
    2. Then create a empty BPEL (BPELAdapter) Project.
    3. Add a Database Adapter:
    (1) In step 1 of Adapter Configuration Wizard, configure the Service Name to datain.
    (2) In step 2, configure the database connection.
    (3) In step 3, choose "Poll for New or Changed Records in a Table".
    (4) Then click Import Tables button, and choose the read table.
    (5) In step 5, choose a column.
    (6) Don’t do anything in step 6 and 7.
    (7) In step 8, choose "Update a Field in the [Datain] Table (Logical Delete)".
    (8) In step 9, configure Logical Delete Field to STATUS, configure Read Value to readed and configure Unread Value to unreaded.
    (9) Don’t do anything in step 10 and 11.
    4. Add a receive activity to connect to above database adapter.
    5. Add another Database Adapter. Then configure this database adapter service WSDL:
    (1) In step 1 of Adapter Configuration Wizard, configure the Service Name to dataout.
    (2) In step 2, configure the database connection.
    (3) In step 3, choose Perform an Operation on a Table (and all items under it).
    (4) Then click Import Tables button, and choose the write table.
    (5) In step 5, choose a column.
    (6) Don’t do anything in step 6, 7 and 8.
    6. Add a invoke activity to connect to above database adapter.
    7. Add a assign activity between the receive activity and invoke activity. And configure the assign copy operation.
    But after I deploy this BPEL project to the BPEL server and invoke this project, I get following error. Meanwhile, this BPEL don't take effect.
    The following exception occured while processing this request:
    Can't find partnerLinkType 2.
    in
    "file:/D:/soft/SOASuite/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_BPELAdapter_1.0_e82210b05e4d3e997eed581d0d220293.tmp/_BPELAdapter.wsdl" WSDL to find PartnerLinkType "{http://xmlns.oracle.com/pcbpel/adapter/db/datain/datain_plt"。
    How to resolve?
    Thanks,
    Melody

    Now, I can insert data into the table through Database Adapter.
    But still can't select data from the table through Database Adapter.
    Above error still happen when invoke the read database table with Database Adapter project:
    Can't find partnerLinkType 2.
    in
    "file:/D:/soft/SOASuite/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_BPELAdapter_1.0_e82210b05e4d3e997eed581d0d220293.tmp/_BPELAdapter.wsdl" WSDL to find PartnerLinkType "{http://xmlns.oracle.com/pcbpel/adapter/db/datain/datain_plt"。

  • Dynamic JNDI name for database adapter in BPEL

    Hi All,
    I am having some major issues trying to make the JNDI location for the database adapter dynamic (10.1.3.4). I already went through the followin link, but that didnt work for me: http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html
    The below example works, but only the first run. Second time around the first runs JNDI value gets retained and connects to that database.
    This is what worked atleast the first time.
    I parameterized the JNDI with a variable defined in the partnerlink definition in the bpel.xml
    In Bpel. xml
    <partnerLinkBinding name="updatetbl">
    <property name="wsdlLocation">updatetbl.wsdl</property>
    <property name="CONN">eis/DB/na</property>
    <property name="retryInterval">60</property>
    </partnerLinkBinding>
    In the updatetbl.wsdl file
    <service name="updatetbl">
    <port name="updatetbl_pt" binding="tns:updatetbl_binding">
    <jca:address location="$CONN"/>
    </port>
    </service>
    At run time I change the partnerlink CONN variable in embedded Java.
    try
    Element targetAdapterElement =(Element)getVariableData("Invoke_getFromTbl_OutputVariable","getFromTblOutputCollection","/ns2:getFromTblOutputCollection/ns2:getFromTblOutput/ns2:SRC_JNDI");
    getLocator().lookupProcess("JndiIssueTest").getDescriptor().getPartnerLinkBindings().getPartnerLinkBinding ("updatetbl").setPropertyValue ("CONN",targetAdapterElement.getTextContent());
    ("updatetbl").getPropertyValue ("CONN"));
    catch(Exception ex)
    addAuditTrailEntry("Error is " + ex);
    This works fine the first time, but the second time I run it to look at a different CONN value, it somehow still connects using the first runs value!
    If I redeploy or clear the WSDL cache, it works. But we plan to run it multiple times from several environment so manually or programatically clearing WSDL is not the right solution.
    Can someone tell me what is the standard process of doing this so it works everytime?
    Thanks,
    Shaf

    Shaf,
    Please refer the mail thread for details. If you want I can send you(send me your email id) the sample BPEL process which uses Dynamic JNDI.
    Re: How to externalize JNDI name (setting JNDI name dynamically)
    Thanks,
    Sen

  • Oracle database Adapter starts up even before the BPEL services & errors

    Here is the scenario:
    We have an Oracle database adapter in an ESB service polling a table & then invokes a BPEL service.
    During startup, the database adapter is loaded first & polls data & immediately invokes the BPEL which is not even loaded still & errors.
    Is there a way to avoid this.
    Any help would be great.

    All three of your errors seem to be pointing to a configuration gap between
    * the JNDI name used by the SOA composite to obtain a JCA connection in the soa-infra engine
    * the ConnectionFactory configuration used by the DbAdapter process that then connects to the JDBC connection pool managed by the WebLogic server
    * the actual JDBC connection from WebLogic to your database
    You've indicated the JDBC connection layer from WebLogic to the database has been verified so the following things should be checked:
    * access the WebLogic console of your domain and verify the DbAdapter application is deployed and active on the server hosting your soa-infa SOA engine
    * click on the DbAdapter entry and go to the Configuration tab and the Outbound Connections sub-tab
    * expand the tree under javax.resource.cci.ConnectionFactory and verify your JNDI name within the SOA composite is listed (it probably looks something like eis/db/yourdbname)
    * click on that JDNI name and verify on the subsequent screen that the JDBC connection pool name is present under dataSourceName or xADataSourceName
    * verify your SOA composite is using eis/db/yourdbname as the reference in its database service --- it CANNOT use the JDNI name of the JDBC connection pool managed by WebLogic cuz composites run inside the soa-infra engine which uses JCA connections to get out of the soa-infra engine to the rest of the world
    Hope that helps

  • What kind of database driver should use for database adapter  in BPEL?

    what kind of database driver (XA or non-XA) should use for database adapter in BPEL? I have only one database adapter and no JMS.
    Thanks
    Jo
    Edited by: 799095 on Sep 30, 2010 8:35 AM

    Hi
    It depends on wheter you need XA transaction or not.
    See http://www.theserverside.com/discussions/thread.tss?thread_id=21385 third reply.
    If you only have one database and no synchronous dependency to the caller, non-XA should be OK.
    -Johan

  • BPEL process initiated by a database adapter causing problems in HA environ

    We are having a High Availability architecture configuration(active - active) for the BPEL System in our production environment.
    The BPEL servers are clustered in the middle tier of the architecture and RAC is used in the database tier of the architecture.
    We have a BPEL process which is initiated by a database adapter.
    This BPEL process polls a source database, reads the data, writes it into a JMS Topic and marks flag as read back to the table.
    A Message Driven Bean(MDB) listens to the JMS Topic, and writes the data in the destination database.
    We have the polling process and the MDB deployed to both the nodes of the BPEL server.
    We have noticed that some records are getting processed by both the nodes.
    This is resulting in duplicate records at the destination tables.
    Kindly advise how we can resolve this issue.

    The BPEL servers are configured with active - active topology and RAC is used in the database tier of the architecture.
    BPEL Servers is not clustered. Load Balancer is used in front of the two nodes of the BPEL servers.

Maybe you are looking for

  • White screen at reset.  Won't start up with install disk.

    White Screen persists on restart. Folder with ? appears after a few minutes. Tried safe start - nothing. Tried RAM reset (option, cmd, p, r) - nothing. Tried to restart with C key to use install disk, C drive powers and spins for awhile - nothing. Th

  • Infocube 0SD_C03 Installation problem

    Hi All, I am trying to install infocube 0SD_C03 (sales overview). When I click grouping and select 'In Data Flow Before' it goes on well and a pop up comes saying 'Remote activation in Source System' and when I click 'OK' my R/3 source system comes u

  • ITunes display freezes when minimized

    Hello, I posted several months ago about a Vista/Itunes bug, which causes the Itunes screen to freeze up when other screens are opened on top of Itunes. Until recently I have been unable to capture evidence of this freezing, but took this still today

  • Can PSP be used in Portals?

    Hi Portal Gurus, I understand PL/SQL Cartridges can be used in portal development. But, has Oracle started supporting use of PSP (PL/SQL Server Pages) for portal development? If so, is there any documentation out there for it? Any help will be greatl

  • Submitting data through API without exposing DB credentials

    Submitting transaction / master data through API without exposing DB credentials I am developing a scenario where I will submit transaction / master data like sales order / master item to Oracle apps (EBS) through MS Excel via API / interface table b