BPEL database cleanup

Hi all,
In our production system we're experiencing an unacceptable growth in the orabpel tablespace. We are willing to keep little or no instance data. There is a stored procedure named delete_ci in the collaxa package, however I've noticed that this procedure does not delete the blob message data in the xml_document table. I've seen that the document_ci_ref table keeps ci's versus dockeys. But it seems like that's not enough, the xml_document table keeps more data than that (about invoke and delivery messages I guess). So, can anybody show me the way to delete all the information, everything related to completed instances in the BPEL database?
Regards,
SerkanC

Thanks a lot Marc, I've checked your blog and finally I found the purge_instances_oracle.sql script in metalink which creates a stored procedure named purge_instances. But now we have another problem, which is that the cleanup operation takes a very long time. Although we've setup a cron job to do this at 3 AM (when there is almost no load on the system) the database becomes non-responsive because of this script and we begin to get the following exception in bpel:
<2008-03-26 04:07:07,114> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "cube delivery": Cannot fetch a datasource connection.
The process domain was unable to establish a connection with the datasource with the connection URL "jdbc/BPELServerDataSource". The exception reported is: javax.resource.spi.ResourceAllocationException: Unable to allocate new connect
ion - pool is full and timed out waiting for a connection to be freed up.
Please check that the machine hosting the datasource is physically connected to the network. Otherwise, check that the datasource connection parameters (user/password) is currently valid.
Moreover, these connections do not timeout and we have to restart the bpel server in order to make the system usable. Another interesting thing is, this happens only one of our two bpel servers, the second server is not affected by this.
In patch number 6501312 there's a script named upgrade_6501312_oracle.sql which creates an index on the dockey column of the document_dlv_msg_ref table. I will try this and I'm hoping that it will solve this problem. But I would appreciate any comments about this problem, because if creating the index does not solve it, then I will be in deep trouble :)
Best regards,
SerkanC

Similar Messages

  • BPEL Database Schema Configuration

    Hi,
    Where do i find BPEL database schema information? Please let me know. I use SOA Suite 10.1.3
    How can we find out what schema we are hitting for the BPEL instance ??
    Regards,
    Pradeep
    Edited by: pradeepr25 on Mar 11, 2010 10:45 PM

    Hi Pradeep,
    You can find the exact details of the schema creation etc in the sql file invoked from the soa_schemas\irca\irca.sh (irca.bat) from the install folders of SOA Suite.
    http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28980/appendixa.htm#CHDBIGIA
    In case you want to see the connection details for your install, they would be in data-sources.xml file under $ORACLE_HOME/j2ee/oc4j_soa/config directory.
    Regards,
    Shanmu.
    http://www.prshanmu.com/articles/

  • Theme database cleanup

    Hello folks,
    To help reduce confusion we have made public themes that had
    "copy" in their titles private. That's a first step to help reduce
    multiple versions of the same theme.If your theme was mistakenly
    moved when we ran the script, you can republish it or let me know
    and I'll restore it.
    Sami

    Hello, we've done a second pass at theme database cleanup. We
    looked at public themes with the same titles and tags as some of
    the "kuler classics" and made them private. If your own theme was
    mistakenly changed to private in the sweep, sorry! Send me a
    private message and I'll restore it, that way I'll know what
    happened.
    Sami

  • 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 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!

  • 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

  • Database Cleanup

    Hello Team:
    I maintain and manage a 5 regional databases which are by design a look alike. In reality it is not the case. I am assigned this project to make sure that these databases are in sync. Each database has atleast 8 application schemas that needs to be the same across all regions.
    I am seeing that these schemas are not the same. I am going to keep a region as reference and cleanup the other objects in other regions.
    I am sure that some of the objects are not never used for years. But there is no way for me to guarantee this.
    I have a list of objects that needs to be audited. What is the overhead involved in turning on Auditing for these objects?
    Regards,
    Bala

    Hi BMP,
    Auditing has an overhead and it depends on the type (what actions are you auditing, what is the audit_trail etc).
    I suggest that befire you turn on auditing for a big list of tables try to query v$segment_statistics, dba_hist_sqlstat and dba_hist_sql_plan to find out more about the access to the tables, maybe it will help you reduce the amount of tables you want to audit.
    Yuri

  • BPEL Database Connections

    Hi, if I have 2 parterner links (say insert statements) to a database in the same BPEL process, does BPEL keep the connection to the database open after the first partnerlink and use this connection for the second partner link? Or does it close the connection after the first partner link and then open a new connection for the 2nd partner link?

    That depends on you r configurations. But in general it will re-use the connection. If you configure the db-adapeter with JNDI entries, pointing to the data-source and to the data-source-connection-pool it will use this pool. In this connection pool you can set all kinds of parameters:
    min-connections
    max-connections
    used-connection-wait-timeout
    inactivity-timeout
    connection-retry-interval
    max-connect-attempts
    etc.

  • BPEL - Database Connection Pools, JNDI - How do you do it ?

    Scoured forum and BPEL developer and admin guides, and didn't find any good instructions on how to configure and use database pools for BPEL, except possibly this post nearly two years ago data-sources.xml and oc4j-ra.xml
    I suspect things may have changed some in two years ! Where can I find this info. Does anyone who has done it have step by step instructions ?

    You should have scoured better ;-)
    I had a problem that needed to be fixed with a connection pool. Check this post:
    Strange Toplink errors appearing
    It points to some documentation that will help you:
    http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#sthref528
    Basically you have to do the following:
    - look in the WSDL of your DB adapter. It will have a jca:address section. In this section you will see a jndi location, something like: eis/DB/<a_connection>. Make note of this location
    - on the server look for the file oc4j-ra.xml in <oracle_home>/j2ee/<oc4j_soa>/application-deployments/default/DbAdapter. Edit the file. In there are mappings that basically forward the object in location eis/DB/<a_connection> to jdbc/<connection>.
    E.g.:
    <connector-factory location="eis/DB/DBConnection1" connector-name="Database Adapter">
                    <config-property name="xADataSourceName" value="jdbc/DBConnection1DataSource"/>
                    <config-property name="dataSourceName" value="loc/DBConnection1DataSource"/>
                    <config-property name="platformClassName" value="oracle.toplink.platform.database.Oracle9Platform"/>
                    <config-property name="usesNativeSequencing" value="true"/>
                    <config-property name="sequencePreallocationSize" value="50"/>
                    <config-property name="defaultNChar" value="false"/>
                    <config-property name="usesBatchWriting" value="true"/>
                    <connection-pooling use="none">
                    </connection-pooling>
                    <security-config use="none">
                    </security-config>
            </connector-factory>Now copy one of these blocks and edit it so that the location matches your eis/DB/<a_connection> location. Map the dataSource and xaDataSource properties to jdbc/<connection> s (which you create in the next step)
    - go to the enterprise manager, click on the soa suite oc4j container, choose the 'administration' link. Click on the 'Go to task' icon for JDBC connections. Here you can create your connection pool, and db connection. Make sure the location of your JDBC connection matches what you have configured in the oc4j-ra.xml file.
    - restart your soasuite/bpel oc4j container
    - bob's your uncle ;-)
    HTH,
    Bas

  • MDS Database Cleanup and Truncation

    We're doing some cleanup on a large MDS database. We have deleted 20-30 models which represent close to 70 million transactions. However, tblTransaction has not reduced its record count, and the database has grown considerably after the model deletions (from
    50GB to ~120GB).
    Is there any method to remove the transactions from the deleted models and increase free space?
    We don't plan to shrink the DB file due to fragmentation issues, but think that performance will increase with less extraneous records in the database and some index rebuilds.

    Hi Ed,
    Using the LogFlag = 0 effectively prevents more entries from being added to the transaction log, but the previous transactions on that specific code remain however. This is not an expected behavior based on:
    http://msdn.microsoft.com/en-us/library/ee633854(v=sql.110).aspx
    wherein it is stated under Import Type:
    6: Permanently delete the member, based on the Code value. All attributes, hierarchy and collection memberships,
    and transactions are permanently deleted.
    During a user test a very large amount of data was inserted into an entity. I can "hard-delete" them with the staging table functionality, but the transactions from insert remains which is very annoying.
    How do I get rid of these?
    Best Regards,
            Per

  • 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).

  • BPEL DataBase Question

    I have the following problem.
    If a change the name of a table in a database but maintaining the same fields I have to configure the BD partner link for the new table name.
    When I do that the variable inside the invoking DB partner link doesn't corresponds to the new update of the partner link.
    Now imagine that I have a huge flow, that I´am using that variable and that a simple table in the database is rename. All the things that have to do with that invoke varible will have to be done all over again????
    Does anyone have this problem? what I'm a doing wrong?
    thanks
    Gonçalo Ribeiro

    I have the same problem that is described, so i have to conclue that if in a flow with use of Db Adapter we chage anything in the connection, we have to redo all the work related with that connection...
    It is not only the variables that are afected, also the connection.
    You think that we can change everything about the connections in the toplink-mappings.xml file ??
    Hope that 10.1.3 version resolve this.
    thanks

Maybe you are looking for