UDM for long running sql

Hi
I am planning to use enterprise manager grid control to create a UDM for the following sql that would alert me for the sql that is running for more then a hour for all databases any ideas on how to do this
SELECT
        substr(swn.sql_text,40),
        ||'SQL is Running on Instance ' ||s.inst_id || 'Since '|| ROUND(sl.elapsed_seconds/60) elapsed_mins,      
FROM   gv$session_longops sl,
gv$session s ,
gv$sql swn
WHERE  s.sid     = sl.sid
AND    s.inst_id = sl.inst_id
AND    s.serial# = sl.serial#
AND    s.inst_id = swn.inst_id
AND    s.sql_address = swn.address
AND    s.sql_hash_value = swn.hash_value
AND    sl.sofar  <> sl.totalwork
AND    sl.totalwork <> 0
AND    round((sl.elapsed_seconds)/60,0) > 60
order by 7Edited by: user9243284 on Jun 7, 2010 3:48 AM

I think you should specify:
SQL query output: two columns
Metric Type: String
and the following query:
SELECT 'NA',0
from dual
union
SELECT distinct '( ' ||i.instance_name ||','|| sl.sid ||','|| sl.serial# ||', ) ' || substr(s.sql_text,1,1000) sql, ROUND(sl.elapsed_seconds/60) mins
FROM gv$session_longops sl,
gv$sql s,
gv$instance i
WHERE sl.sofar = sl.totalwork
AND sl.totalwork = 0
AND sl.inst_id = s.inst_id (+)
AND sl.sql_address = s.address (+)
AND sl.sql_hash_value = s.hash_value (+)
AND sl.inst_id = i.inst_id
use the select from dual, to make sure your query allways returns at least one row.
BTW, you will find some examples of UDM creation on my blog.
Regards
Rob
http://oemgc.wordpress.com

Similar Messages

  • Long running sql

    Hi All,
    I have a long running sql which I am tuning for oltp environment.
    Here is the sql
    explain plan for
    SELECT a.* ,rownum as rnm
    FROM ( SELECT /*+ FIRST_ROWS(100) STAR_TRANSFORMATION PARALLEL(PLS,2) */
    /* End of Hint in Query Builder */
    PLD.PRVDR_LCTN_IID AS "ProviderLocationIid", PLD.PRVDR_LCTN_DTL_SID AS "ProviderLocationDetailSid",
    PLD.ENRLMNT_TYPE_CID AS "EnrollMentTypeCid", PLD.PRVDR_TYPE_CODE AS "ProviderTypeCode",
    PLD.MAINECARE_ID AS "Provider Id", PLD.PRVDR_NAME AS "Provider Name",
    PLD.PRVDR_TYPE_CODE || '-' || PLD.PRVDR_TYPE_NAME AS "Provider Type",
    TO_CHAR(PLS.FROM_DATE,'MM/dd/yyyy') AS "Start Date",
    TO_CHAR(PLS.TO_DATE,'MM/dd/yyyy') AS "End Date", PLD.COUNTY_NAME AS "County",
    PLD.CITY_TOWN_NAME AS "Town", PLD.ENRLMNT_TYPE_NAME AS "Enrollment Type",
    PLS.STATUS_CID AS "StatusCid", STSBS.STATUS_NAME AS "Business Status",
    PLD.LCTN_PHONE_NMBR AS "Phone Number", PLD.PRVDR_TYPE_NAME AS "PrvdrTypeName",
    SP.SPCLTY_CODE||'-'||SP.SPCLTY_NAME ||'/'|| SP1.SPCLTY_CODE||'-'||
    SP1.SPCLTY_NAME AS "Specialty/Subspecialty",
    UPPER(SP1.SPCLTY_CODE) AS "SubSpclty", UPPER(SP.SPCLTY_CODE) AS "Spclty"
    FROM /*Query Builder Clause*/
    STATUS STS,
    STATUS STSBS,
    SPECIALTY_SUBSPECIALTY SSP,
    (SELECT PRVDR_LCTN_STATUS_SID, PRVDR_LCTN_IID, PRVDR_LCTN_DTL_SID, FROM_DATE, TO_DATE,
    STATUS_TYPE_CID, STATUS_CID, OPRTNL_FLAG,
    FN_GETANCHORDT(FROM_DATE,TO_DATE) AS ANCHOR_DATE
    FROM PRVDR_LCTN_STATUS
    WHERE STATUS_TYPE_CID = 1
    AND OPRTNL_FLAG = 'A'
    ) PLS,
    PRVDR_LCTN_X_SPCLTY_SUBSPCLTY PXSP,
    PRVDR_LCTN_STATUS PLSBS,
    PROVIDER_LOCATION_DETAIL PLD,
    SPECIALTY SP1,
    SPECIALTY SP
    WHERE
    STS.STATUS_TYPE_CID = 1
    AND STS.STATUS_CID = 2
    AND STSBS.STATUS_TYPE_CID = 15
    AND PLSBS.OPRTNL_FLAG = 'A'
    --          UPPER(UPPER(SP1.SPCLTY_CODE)) LIKE UPPER('1%')
              AND SP1.SPCLTY_CODE LIKE '1%'
    -- AND UPPER(UPPER(SP.SPCLTY_CODE)) LIKE UPPER('1%')
    AND SP.SPCLTY_CODE LIKE '1%'
    AND PLS.OPRTNL_FLAG = 'A'
    AND SP1.OPRTNL_FLAG = 'A'
    AND PXSP.OPRTNL_FLAG = 'A'
    AND PXSP.STATUS_CID = 2
    AND SSP.OPRTNL_FLAG = 'A'
    AND SP.OPRTNL_FLAG = 'A'
    AND PLS.ANCHOR_DATE >= PLSBS.FROM_DATE
    AND PLS.ANCHOR_DATE <= PLSBS.TO_DATE
    AND PLS.STATUS_TYPE_CID = STS.STATUS_TYPE_CID
    AND PLS.STATUS_CID = STS.STATUS_CID
    AND PLD.PRVDR_LCTN_DTL_SID = PLS.PRVDR_LCTN_DTL_SID
    AND PLSBS.PRVDR_LCTN_IID = PLS.PRVDR_LCTN_IID
    AND PLSBS.STATUS_TYPE_CID = STSBS.STATUS_TYPE_CID
    AND PLSBS.STATUS_CID = STSBS.STATUS_CID
    AND PLS.ANCHOR_DATE >= SP1.FROM_DATE
    AND PLS.ANCHOR_DATE <= SP1.TO_DATE
    AND PXSP.PRVDR_LCTN_IID = PLS.PRVDR_LCTN_IID
    AND PXSP.SPCLTY_SUBSPCLTY_SID = SSP.SPCLTY_SUBSPCLTY_SID
    AND PLS.ANCHOR_DATE >= PXSP.FROM_DATE
    AND PLS.ANCHOR_DATE <= PXSP.TO_DATE
    AND SSP.SPCLTY_CODE = SP.SPCLTY_CODE
    -- AND SSP.SUBSPCLTY_CODE = SP1.SPCLTY_CODE
    AND SSP.SUBSPCLTY_CODE = SP1.SPCLTY_CODE
    AND PLS.ANCHOR_DATE >= SSP.FROM_DATE
    AND PLS.ANCHOR_DATE <= SSP.TO_DATE
    AND PLS.ANCHOR_DATE >= SP.FROM_DATE
    AND PLS.ANCHOR_DATE <= SP.TO_DATE
    ORDER BY /*Query Builder Clause*/
    "Provider Id" DESC
    ) A
    WHERE rownum < 101
    Here is the Emplain plan
    SQL> @c:\mohammed\tune\UTLXPLS
    Plan Table
    | Operation | Name | Rows | Bytes| Cost | Pstart| Pstop |
    | SELECT STATEMENT | | | | | | |
    | COUNT STOPKEY | | | | | | |
    | VIEW | | | | | | |
    | SORT ORDER BY STOPKEY | | 1 | 358 | 120 | | |
    | SORT ORDER BY STOPKEY | | | | | | |
    | NESTED LOOPS | | 1 | 358 | 117 | | |
    | NESTED LOOPS | | 1 | 313 | 116 | | |
    | NESTED LOOPS | | 1 | 268 | 115 | | |
    | NESTED LOOPS | | 1 | 240 | 114 | | |
    Plan Table
    | NESTED LOOPS | | 1 | 209 | 112 | | |
    | NESTED LOOPS | | 1 | 95 | 111 | | |
    | NESTED LOOPS | | 1 | 74 | 110 | | |
    | NESTED LOOPS | | 7 | 294 | 103 | | |
    | INDEX UNIQUE SCAN |SYS_C00489936 | 1 | 7 | | | |
    | TABLE ACCESS FULL |PRVDR_LCTN_STATUS | 1K| 53K| 102 | | |
    | TABLE ACCESS BY INDEX ROWID |PRVDR_LCTN_STATUS | 57K| 1M| 2 | | |
    | INDEX RANGE SCAN |TUNE_PNBS2_1 | 57K| | 1 | | |
    | TABLE ACCESS BY INDEX ROWID |STATUS | 5 | 105 | 1 | | |
    | INDEX UNIQUE SCAN |SYS_C00489936 | 5 | | | | |
    | TABLE ACCESS BY INDEX ROWID |PROVIDER_LOCATION_D | 40K| 4M| 1 | | |
    Plan Table
    | INDEX UNIQUE SCAN |XPKPROVIDER_LOCATIO | 40K| | | | |
    | TABLE ACCESS BY INDEX ROWID |PRVDR_LCTN_X_SPCLTY | 1M| 39M| 3 | | |
    | INDEX RANGE SCAN |TUNE_SARWAR_0503200 | 1M| | 2 | | |
    | TABLE ACCESS BY INDEX ROWID |SPECIALTY_SUBSPECIA | 549 | 15K| 1 | | |
    | INDEX UNIQUE SCAN |SYS_C00489888 | 549 | | | | |
    | TABLE ACCESS BY INDEX ROWID |SPECIALTY | 11 | 495 | 1 | | |
    | INDEX UNIQUE SCAN |SYS_C00489875 | 11 | | | | |
    | TABLE ACCESS BY INDEX ROWID |SPECIALTY | 11 | 495 | 1 | | |
    | INDEX UNIQUE SCAN |SYS_C00489875 | 11 | | | | |
    32 rows selected.
    I have tried with several hints and several driving tables and tires. Any help in this regard will be highly appreciated.
    Thanks a lot,
    Mohammed Sarwar
    ocp dba
    Email: [email protected]
    [email protected]
    Phone : 301-944-2029 w
    913-484-9204 cell

    This should be better. Any help on tuning the above sql statement using the following explain plan will be highly appreciated.
    Plan Table
    | Operation ------------------| Name -------------| Rows | Bytes| Cost | Pstart| Pstop |
    | SELECT STATEMENT -----------| ------------------| -----| -------|------| | |
    | COUNT STOPKEY --------------|-------------------|------|--------|------| | |
    | VIEW -----------------------|-------------------|----- | -------| -----| | |
    | SORT ORDER BY STOPKEY ------|------------------ |--- 1 | ---358 | 120 -| | |
    | SORT ORDER BY STOPKEY ------| ------------------|----- |------- | -----| | |
    | NESTED LOOPS ---------------|-------------------|--- 1 |--358 -|- 117 | | |
    | NESTED LOOPS ---------------|----------------- -|--- 1 | -313 -| -116 | | |
    | NESTED LOOPS ---------------|----------------- -|--- 1 | 268-- | 115 -| | |
    | NESTED LOOPS--------------- |-------------------| --1- | -240 -| -114 | | |
    Plan Table
    | NESTED LOOPS--------------- |------------------ | ---1 |- 209 -|- 112 | | |
    | NESTED LOOPS--------------- | ------------------|--- 1 |-- 95- | -111 | | |
    | NESTED LOOPS ---------------|----- -------------|--- 1 |-- 74 -| -110 | | |
    | NESTED LOOPS ---------------|----------------- -|--- 7 | -294- |- 103| | |
    | INDEX UNIQUE SCAN ----------|SYS_C00489936------| ---1 |--- 7--|-----| | |
    | TABLE ACCESS FULL ----------|PRVDR_LCTN_STATUS -| --1K | 53K-- | 102 | | |
    | TABLE ACCESS BY INDEX ROWID |PRVDR_LCTN_STATUS- | 57K -|---- 1M|-- 2 | | |
    | INDEX RANGE SCAN -----------|TUNE_PNBS2_1 ------| 57K- |------ |-- 1 | | |
    | TABLE ACCESS BY INDEX ROWID |STATUS------------ | 5 |105----|-- 1 | | |
    | INDEX UNIQUE SCAN---------- |SYS_C00489936 -----| 5--- | ------|-----| | |
    | TABLE ACCESS BY INDEX ROWID-|PROVIDER_LOCATION_D| 40K | 4M----|-- 1 | | |
    Plan Table
    | INDEX UNIQUE SCAN ----------|XPKPROVIDER_LOCATIO| 40K |----- |----- | | |
    | TABLE ACCESS BY INDEX ROWID-|PRVDR_LCTN_X_SPCLTY| 1M -|---39M|--- 3 | | |
    | INDEX RANGE SCAN -----------|TUNE_SARWAR_0503200| 1M -| -----|--- 2 | | |
    |TABLE ACCESS BY INDEX ROWID- |SPECIALTY_SUBSPECIA| 549 |---15K| ---1 | | |
    | INDEX UNIQUE SCAN ----------|SYS_C00489888 -----| 549 |----- | -----| | |
    |TABLE ACCESS BY INDEX ROWID- |SPECIALTY ---------| 11- |---495|--- 1 | | |
    | INDEX UNIQUE SCAN ----------|SYS_C00489875----- | 11 -|----- |----- | | |
    |TABLE ACCESS BY INDEX ROWID -|SPECIALTY ---------| 11- |---495|----1 | | |
    | INDEX UNIQUE SCAN-----------|SYS_C00489875----- | 11 -|----- |----- | | |
    --------------------------------------------------------------------------------

  • Long Running SQL and ORDS Spawns Multiple Database Sessions

    Hi all.
    We have a strange situation when accessing a long running SQL Report (a single APEX Page).
    The SQL takes about 15 mins to run but when I monitor what database sessions are spawned by the APEX Listener, I see multiple sessions all executing the same SQL. It appears that after 6 minutes, the APEX Listener spawns a new database session to execute the same SQL.
    Has anyone seen this before and if so, is there a key setting I am missing as I don't want this to happen. I am new to the APEX Listener and WebLogic so apologies if this is the way it's meant to work but it seems odd that after a certain amount of time (6 minutes in my case) a new database session is spawned to do the same work.
    We are running:
    WebLogic: 10.3.0.6
    APEX_LISTENER_VERSION 2.0.0.354.17.06
    Datadate: 11.2.0.3.0 Production
    APEX: 4.2.1.00.08
    Cheers for any help.
    Duncs

    Hi Duncan,
    With all respect, you should please rethink your interface.  I would never consider writing a Web application with a request that knowingly takes 15 minutes to return the results.  You can consider doing this asynchronously via DBMS_SCHEDULER and then alerting the user (via email, perhaps) that their results are ready.  Or if you can precompute this in advance, consider using materialized views so that the user's response time is sub-second.
    In an era where the patience of the average end-user is measured in single-digit seconds, it is impractical to ever expect an end-user to wait 15 minutes for their resultant Web page.
    Joel

  • Is there a way to get long running SQL Agent jobs information using powershell?

    Hi All,
    Is there a way to get long running SQL Agent jobs information using powershell for multiple SQL servers in the environment?
    Thanks in Advance.
    --Hunt

    I'm running SQL's to fetch the required details and store it in centralized table. 
    foreach ($svr in get-content "f:\PowerSQL\Input\LongRunningJobsPowerSQLServers.txt"){
    $dt = new-object "System.Data.DataTable"
    $cn = new-object System.Data.SqlClient.SqlConnection "server=$svr;database=master;Integrated Security=sspi"
    $cn.Open()
    $sql = $cn.CreateCommand()
    $sql.CommandText = "SELECT
    @@SERVERNAME servername,
    j.job_id AS 'JobId',
    name AS 'JobName',
    max(start_execution_date) AS 'StartTime',
    max(stop_execution_date)AS 'StopTime',
    max(avgruntimeonsucceed),
    max(DATEDIFF(s,start_execution_date,GETDATE())) AS 'CurrentRunTime',
    max(CASE WHEN stop_execution_date IS NULL THEN
    DATEDIFF(ss,start_execution_date,stop_execution_date) ELSE 0 END) 'ActualRunTime',
    max(CASE
    WHEN stop_execution_date IS NULL THEN 'JobRunning'
    WHEN DATEDIFF(ss,start_execution_date,stop_execution_date)
    > (AvgRunTimeOnSucceed + AvgRunTimeOnSucceed * .05) THEN 'LongRunning-History'
    ELSE 'NormalRunning-History'
    END) 'JobRun',
    max(CASE
    WHEN stop_execution_date IS NULL THEN
    CASE WHEN DATEDIFF(ss,start_execution_date,GETDATE())
    > (AvgRunTimeOnSucceed + AvgRunTimeOnSucceed * .05) THEN 'LongRunning-NOW'
    ELSE 'NormalRunning-NOW'
    END
    ELSE 'JobAlreadyDone'
    END)AS 'JobRunning'
    FROM msdb.dbo.sysjobactivity ja
    INNER JOIN msdb.dbo.sysjobs j ON ja.job_id = j.job_id
    INNER JOIN (
    SELECT job_id,
    AVG
    ((run_duration/10000 * 3600) + ((run_duration%10000)/100*60) + (run_duration%10000)%100)
    +
    STDEV
    ((run_duration/10000 * 3600) + ((run_duration%10000)/100*60) + (run_duration%10000)%100) AS 'AvgRuntimeOnSucceed'
    FROM msdb.dbo.sysjobhistory
    WHERE step_id = 0 AND run_status = 1
    GROUP BY job_id) art
    ON j.job_id = art.job_id
    WHERE
    (stop_execution_date IS NULL and start_execution_date is NOT NULL) OR
    (DATEDIFF(ss,start_execution_date,stop_execution_date) > 60 and DATEDIFF(MINUTE,start_execution_date,GETDATE())>60
    AND
    CAST(LEFT(start_execution_date,11) AS DATETIME) = CAST(LEFT(GETDATE(),11) AS DATETIME) )
    --ORDER BY start_execution_date DESC
    group by j.job_id,name
    $rdr = $sql.ExecuteReader()
    $dt.Load($rdr)
    $cn.Close()
    $dt|out-Datatable
    Write-DataTable -ServerInstance 'test124' -Database "PowerSQL" -TableName "TLOG_JobLongRunning" -Data $dt}
    You can refer the below link to refer out-datatable and write-dataTable function.
    http://blogs.technet.com/b/heyscriptingguy/archive/2010/11/01/use-powershell-to-collect-server-data-and-write-to-sql.aspx
    Once we've the table details, I'm sending one consolidated email to automatically.
    --Prashanth

  • Long Running SQL Queries

    We have a customer that runs our Crystal Reports and they have complained that some of the reports cause long running sql queries and they have to kill these queries manually from SQL Management tools. We have changed the code so that we now dispose the report source and viewer objects as we call .dispose() function on them;
    reportSource.dispose();
    viewer.dispose();
    At first this seemed work but customer later complained that the issue still occurs. Can anyone help with why some of these CR queries are still running way after report is generated (with correct set of data), and based on the customer some of them running for more than 2 hours? What else can we do to make sure that all CR related queries cease to exist once report is generated? Appreciate all the help.

    1. Run the report from with Crystal designer. You should see the query being sent to DB server. After the report is viewed and you close it in designer, do you see the DB connection being dropped? If not, this may not be a SDK\ API related issue.
    2. Try using latest set of CRJ Jars [here|http://downloads.businessobjects.com/akdlm/crystalreportsforeclipse/2_0/crjava-runtime_12.2.213.zip] in your application. Also update the crystalreportviewers folder with the new viewer found at this link.
    3. Make sure that you are calling reportClientDocument.close() at the end when user is done viewing the report.
    4. When you say logn running queries are seen in DB, are you referring to a DB connection left open? or is it actually running any query and returning results?

  • Is there any time out defined for long running transaction?

    hi, 
    i have to make one big data transferring script , though transaction is not required here, but i was planning to,
    please tel me is there any time out for long running transactions.i have to run the script from database it self
    yours sincerley

    Can you show us an example of your script? You can divide the transaction into small chunks to reduce time and locking/blocking as well.
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Alert monitor for long running background jobs

    Hello,
    I have to configure an alert moniter for long running background jobs which are running more than 20000 secs using rule based. I have created a rule based MTE and assigend MTE class CCMS_GET_MTE_BY_CLASS to virtual node but i dont find a node to specify the time.
    could any one guide me how can i do this.
    Thanks,
    Kasi

    Hi *,
    I think the missing bit is where to set the maximum runtime. The runtime is set in the collection method and not the MTE class.
    process:  rz20 --> SAP CCMS Technical Expert Monitors --> All Contexts on local application server --> background --> long-running jobs. Click on 'Jobs over Runtime Limits' then properties, click the methods tab then double click 'CCMS_LONGRUNNING_JOB_COLLECT', in the parameters tab you can then set the maximum runtime.
    If you need to monitor specific jobs, follow the process (http://help.sap.com/saphelp_nw70/helpdata/en/1d/ab3207b610e3408fff44d6b1de15e6/content.htm) to create the rule based monitor, then follow this process to set the runtime.
    Hope this helps.
    Regards,
    Riyaan.
    Edited by: Riyaan Mahri on Oct 22, 2009 5:07 PM
    Edited by: Riyaan Mahri on Oct 22, 2009 5:08 PM

  • Profiler execution plan ONLY for long running queries

    The duration only applies to specific profiler events however I'd like to capture the execution plan ONLY for queries over 10 minutes.
    Is there a way to do this using Xevents?
    Anyone knows?
    Thanks!
    Paula

    I've wanted that too but could not find a way to get it from profiler.
    But it may be possible with xevents (or without xevents!) to watch for long-running queries and then get the plan from the cache,where it will probably stick for some time, using DMVs.
    Josh

  • RZ20 - Is there an alert for long running transactions?

    In RZ20 is there an alert for long running transactions?

    http://help.sap.com/saphelp_nw04s/helpdata/en/9c/f78b3ba19dfe47e10000000a11402f/content.htm
    This document clearly explains your problem.
    "Reward points if useful"

  • Considerations for long running publication extensions

    We are considering implementing a post processing publication extension which may take several minutes to execute.   One of our concerns with this strategy is that the publication extension may bog down the Adaptive Processing Server.  
    Are there any general considerations / recommendations for long running post processing publication extensions?  
    Thanks!

    Generally creating a new thread is an expensive process. Well, everything is relative. My laptop can create & run & stop 7,000+ threads per second, test program below, YMMV. If you are dealing with thousands of thread creations per second, pooling may be sensible; if not, premature optimization is the root of all evil, etc.
    public class ThreadSpeed
        public static void main(String args[])
         throws Exception
            System.out.println("Ignore the first few timings.");
            System.out.println("They may include Hotspot compilation time.");
            System.out.println("I hope you are running me with \"java -server\"!");
         for (int n = 0; n < 5; n++)
             doit();
            System.out.println("Did you run me with \"java -server\"?  You should!");
        public static void doit()
         throws Exception
            long start = System.currentTimeMillis();
            for (int n = 0; n < 10000; n++) {
             Thread thread = new Thread(new MyRunnable());
             thread.start();
             thread.join();
            long end = System.currentTimeMillis();
            System.out.println("thread time " + (end - start) + " ms");
        static class MyRunnable
         implements Runnable
         public void run()
    }Edited by: sjasja on Jan 14, 2010 2:20 AM

  • Tracking completion status for long running DML operations

    Does anybody know:
    Is there any possibility to track a completion status for long running DML operations (for example how many rows is inserted)?
    For example if I execute an INSERT statement which is working for several hours it is very important to estimate the total time for this operation.
    Thanks forward

    I'm working with Oracle8 in present, and unfortunately this solution (V$SESSION_LONGOPS)cannot help me.
    On Oracle8 it works, but with some restrictions:
    - You must be using the cost-based optimizer
    - Set the TIMED_STATISTICS or SQL_TRACE parameter to TRUE
    - Gather statistics for your objects with the ANALYZE statement or the DBMS_STATS package.

  • ADF page times out for long running backend procedure

    Dear gurus,
    I have an ADF 10g web page that invokes a long running backend PL/SQL procedure.
    After some time, and while the web page awaits for the completion of the PL/SQL procedure, I get an *'Oops! This page appears broken'* from my browser (either IE or Firefox).
    Does anybody know what setting to use to make my application endure long running backend procedures without timing out ?

    What is the Application Server you are deploying to? In WebLogic for example, there are options to configure the server stuck thread timeout for instance.
    Edited by: Nick Haralabidis on Jun 20, 2011 4:57 PM
    Also, consider trying to figure out the exact exception or error message. For instance, if your are using a software load balancer solution it may be that this layer times out.

  • Creating wrapper procedures for Long running procedures

    In SQL server, we can create a wrapper procedure to call long running procedure. Wrapper procedure calls long running procedure and returns to its calling application and give message "your request has been received and being processed. result will sent to your email-id." So user need not wait for complete execution for his request. From long running stored procedure we can send email to user stating all execution result he wants.
    Is there any way to implement it in Oracle9i? Or any other technique to call such long running procedures asynchronously through wrapper procedure sothat user need not to wait and also avoid "request time out" error.

    This question would be better off posed in the Oracle Data Provider for .NET forum.
    Christian

  • ORABPEL-05002 for long running process

    Hi everybody,
    My question is related with a long running process I have designed and which, after running for a couple of days, ends by reporting the ORABPEL-05002 error:
    ===============================================================
    ORABPEL-05002
    Message handle error.
    An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.instance.PerformMessage"; the exception is: Transaction was rolled back: timed out; nested exception is: java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:152)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    ===============================================================
    Looking in the Manual Recovery screen, I can see an Activity I can recover. It's about an assign Activity where I'm doing a single boolean assignation.
    Of course, together with the ORABPEL-05002 error I got also the 'Transaction was rolled back: time out' message. Note that I have modified the transaction-timeout value to 180000. The error occurs during the night, with no heavy load of the server.
    Recovering the assign activity brings back the process in the running state.
    My process pattern:
    while (1 == 1) {
    do activity;
    wait_timeout();
    So, I have the following questions:
    1. Which is cause of this error?
    2. How may I automatically recover this lost activity? RecoveryAgent?
    Any suggestion is appreciated.
    Regards,
    amo
    P.S: the full stack of error messages reported in domain.log:
    ===============================================================
    <2006-09-18 08:08:34,101> <ERROR> <SRH.collaxa.cube.engine.dispatch> <DispatchHelper::handleMessage> failed to handle message
    javax.ejb.EJBException: Transaction was rolled back: timed out; nested exception is: java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
    java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
         at com.evermind.server.ejb.EJBUtils.makeException(EJBUtils.java:873)
         at ICubeEngineLocalBean_StatelessSessionBeanWrapper0.handleWorkItem(ICubeEngineLocalBean_StatelessSessionBeanWrapper0.java:1479)
         at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handle(PerformMessageHandler.java:45)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    Caused by: java.lang.Exception: No Exception - originate from:
         at com.evermind.server.ejb.EJBUtils.makeException(EJBUtils.java:871)
         ... 10 more
    javax.ejb.EJBException: Transaction was rolled back: timed out; nested exception is: java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
         at ICubeEngineLocalBean_StatelessSessionBeanWrapper0.handleWorkItem(ICubeEngineLocalBean_StatelessSessionBeanWrapper0.java:1479)
         at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handle(PerformMessageHandler.java:45)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    <2006-09-18 08:08:34,129> <ERROR> <SRH.collaxa.cube.engine.dispatch> <BaseScheduledWorker::process> Failed to handle dispatch message ... exception ORABPEL-05002
    Message handle error.
    An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.instance.PerformMessage"; the exception is: Transaction was rolled back: timed out; nested exception is: java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
    ORABPEL-05002
    Message handle error.
    An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.instance.PerformMessage"; the exception is: Transaction was rolled back: timed out; nested exception is: java.rmi.RemoteException: No Exception - originate from:java.lang.Exception: No Exception - originate from:; nested exception is:
         java.lang.Exception: No Exception - originate from:
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:152)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    <2006-09-18 08:09:05,236> <ERROR> <SRH.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "activity manager": Scope not found.
    The scope "BpSwt2.30995" has not been defined in the current instance.
    ORABPEL-02094
    Scope not found.
    The scope "BpSwt2.30995" has not been defined in the current instance.
         at com.collaxa.cube.engine.core.ScopeContext.getScope(ScopeContext.java:213)
         at com.collaxa.cube.engine.core.WorkItem.setCubeInstance(WorkItem.java:259)
         at com.collaxa.cube.engine.core.WorkItemFactory.init(WorkItemFactory.java:68)
         at com.collaxa.cube.engine.core.WorkItemFactory.create(WorkItemFactory.java:58)
         at com.collaxa.cube.engine.adaptors.common.BaseWorkItemPersistenceAdaptor.load(BaseWorkItemPersistenceAdaptor.java:147)
         at com.collaxa.cube.engine.data.WorkItemPersistenceMgr.load(WorkItemPersistenceMgr.java:75)
         at com.collaxa.cube.engine.CubeEngine.load(CubeEngine.java:5185)
         at com.collaxa.cube.engine.CubeEngine.load(CubeEngine.java:5173)
         at com.collaxa.cube.engine.CubeEngine.expireActivity(CubeEngine.java:2136)
         at com.collaxa.cube.ejb.impl.ActivityManagerBean.expireActivity(ActivityManagerBean.java:145)
         at com.collaxa.cube.ejb.impl.ActivityManagerBean.expireActivity(ActivityManagerBean.java:116)
         at IActivityManagerLocalBean_StatelessSessionBeanWrapper52.expireActivity(IActivityManagerLocalBean_StatelessSessionBeanWrapper52.java:645)
         at com.collaxa.cube.engine.dispatch.message.instance.ExpirationMessageHandler.handle(ExpirationMessageHandler.java:43)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    <2006-09-18 08:09:05,274> <ERROR> <SRH.collaxa.cube.engine.dispatch> <DispatchHelper::handleMessage> failed to handle message
    ORABPEL-02094
    Scope not found.
    The scope "BpSwt2.30995" has not been defined in the current instance.
         at com.collaxa.cube.engine.core.ScopeContext.getScope(ScopeContext.java:213)
         at com.collaxa.cube.engine.core.WorkItem.setCubeInstance(WorkItem.java:259)
         at com.collaxa.cube.engine.core.WorkItemFactory.init(WorkItemFactory.java:68)
         at com.collaxa.cube.engine.core.WorkItemFactory.create(WorkItemFactory.java:58)
         at com.collaxa.cube.engine.adaptors.common.BaseWorkItemPersistenceAdaptor.load(BaseWorkItemPersistenceAdaptor.java:147)
         at com.collaxa.cube.engine.data.WorkItemPersistenceMgr.load(WorkItemPersistenceMgr.java:75)
         at com.collaxa.cube.engine.CubeEngine.load(CubeEngine.java:5185)
         at com.collaxa.cube.engine.CubeEngine.load(CubeEngine.java:5173)
         at com.collaxa.cube.engine.CubeEngine.expireActivity(CubeEngine.java:2136)
         at com.collaxa.cube.ejb.impl.ActivityManagerBean.expireActivity(ActivityManagerBean.java:145)
         at com.collaxa.cube.ejb.impl.ActivityManagerBean.expireActivity(ActivityManagerBean.java:116)
         at IActivityManagerLocalBean_StatelessSessionBeanWrapper52.expireActivity(IActivityManagerLocalBean_StatelessSessionBeanWrapper52.java:645)
         at com.collaxa.cube.engine.dispatch.message.instance.ExpirationMessageHandler.handle(ExpirationMessageHandler.java:43)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    <2006-09-18 08:09:05,275> <ERROR> <SRH.collaxa.cube.engine.dispatch> <BaseScheduledWorker::process> Failed to handle dispatch message ... exception ORABPEL-05002
    Message handle error.
    An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.instance.ExpirationMessage"; the exception is: Scope not found.
    The scope "BpSwt2.30995" has not been defined in the current instance.
    ORABPEL-05002
    Message handle error.
    An exception occurred while attempting to process the message "com.collaxa.cube.engine.dispatch.message.instance.ExpirationMessage"; the exception is: Scope not found.
    The scope "BpSwt2.30995" has not been defined in the current instance.
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:152)
         at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
         at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
         at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
         at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
         at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)
    ===============================================================

    These are the possible cause to the problem and their solutions:
    Poor performance of the dehydration database If you are using Oracle Lite as dehydration store, please switch to use Oracle 9i or 10g. If Oracle 9i/10g is already in use, check the database parameter 'process' and 'session' to make sure it can handle the expected throughput.
    OC4J has too few available connections to the dehydration database. Increase the maxConnection number of the BPELServerDataSource at the BPEL_HOME/integration/orabpel/system/appserver/oc4j/j2ee/home/config/data-sources.xml (for developer edition) or IAS_HOME/j2ee/OC4J_BPEL/config/data-sources.xml (mid-tier installation).
    Size of message is too big Two ways to deal with this problem:
    Increase the transaction timeout at PEL_HOME/integration/orabpel/system/appserver/oc4j/j2ee/home/config/server.xml (developer edition) or IAS_HOME/j2ee/OC4J_BPEL/config/server.xml (mid-tier installation)
    Decrease the auditLevel from BPELConsole -> Manage BPEL Domain -> Configurations tab. Doing so will reduce the amount of data saved to the dehydration store.
    Cheers
    Anirudh Pucha

  • Using MDBs for long running transactions

    Although MDBs are not the best vehicles for running long transactions, I am
              forced to use them for one such scenario (let's say for lack of a better
              pattern). In order to let my long running MDB (with Container Managed Tx)
              do it's chores I increased the time-out value to a higher number rather than
              using the default of 30 secs. Strangely, I was seeing
              IllegalStateExceptions in stdout. So I created a brand new test MDB with a
              Thread.sleep for 60 seconds, increased my MDBs timeout value to 120 secs,
              made sure there was only one MDB in the pool and ran the test again. I
              still see the below error after 30 seconds.
              I guess I should probably open a support case, but I thought I'll post here
              as well in case there's something I am missing.
              <May 27, 2003 5:26:31 PM PDT> <Notice> <EJB> <Error marking transaction for
              rollback: java.lang.IllegalStateException: Cannot m
              ark the transaction for rollback. xid=64:bea55f200db2c786, status=Rolled
              back. [Reason=weblogic.transaction.internal.TimedOutEx
              ception: Transaction timed out after 34 seconds
              Xid=64:bea55f200db2c786(-33600248),Status=Active,numRepliesOwedMe=0,numRepli
              esOwedOthers=0,seconds since begin=34,seconds left=
              30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread
              Group for Queue: 'default'],ServerResourceInfo[JMS_hmJD
              BCStore]=(state=started,assigned=none),SCInfo[wlcsDomain+wlcsServer]=(state=
              active),OwnerTransactionManager=ServerTM[ServerCoor
              dinatorDescriptor=(CoordinatorURL=wlcsServer+155.14.3.140:7501+wlcsDomain+,
              Resources={})],CoordinatorURL=wlcsServer+155.14.3.1
              40:7501+wlcsDomain+)]
              java.lang.IllegalStateException: Cannot mark the transaction for rollback.
              xid=64:bea55f200db2c786, status=Rolled back. [Reason
              =weblogic.transaction.internal.TimedOutException: Transaction timed out
              after 34 seconds
              Xid=64:bea55f200db2c786(-33600248),Status=Active,numRepliesOwedMe=0,numRepli
              esOwedOthers=0,seconds since begin=34,seconds left=
              30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread
              Group for Queue: 'default'],ServerResourceInfo[JMS_hmJD
              BCStore]=(state=started,assigned=none),SCInfo[wlcsDomain+wlcsServer]=(state=
              active),OwnerTransactionManager=ServerTM[ServerCoor
              dinatorDescriptor=(CoordinatorURL=wlcsServer+155.14.3.140:7501+wlcsDomain+,
              Resources={})],CoordinatorURL=wlcsServer+155.14.3.1
              40:7501+wlcsDomain+)]
              at
              weblogic.transaction.internal.TransactionImpl.throwIllegalStateException(Tra
              nsactionImpl.java:1486)
              at
              weblogic.transaction.internal.TransactionImpl.setRollbackOnly(TransactionImp
              l.java:466)
              at
              weblogic.ejb20.manager.BaseEJBManager.handleSystemException(BaseEJBManager.j
              ava:255)
              at
              weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:21
              5)
              at
              weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:153)
              at
              weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:117)
              at
              weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java
              :63)
              at
              com.xoriant.hm.ejb.session.HierarchyManagerBean_fzysig_EOImpl.getHierarchyId
              (HierarchyManagerBean_fzysig_EOImpl.java
              :1477)
              at
              com.ebiz.application.customerprofile.hm.CPXHMController.SynchronizeMHTH(Unkn
              own Source)
              at
              com.ebiz.application.customerprofile.hm.CPHMOrgGroupMsgBean.onMessage(Unknow
              n Source)
              at weblogic.ejb20.internal.MDListener.execute(MDListener.java:254)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              

    Hi Adarsh,
              It may be that the transaction time-out setting in the descriptor
              is not taking effect. The tx is still timing out after
              the default 30 seconds, so the later attempt to call
              "setRollbackOnly" fails as the transaction has already
              rolled back The ignored descriptor setting is a known issue
              in some earlier SPs, but I'm not sure when and where it
              was fixed - so yes, contact customer support. The work-around
              is to set the default transaction time-out for the entire server to a
              higher value. (I'm not sure where to set this on the console,
              but the relevant JTA MBean field is "TimeoutSeconds".)
              Tom
              Adarsh Dattani wrote:
              > Although MDBs are not the best vehicles for running long transactions, I am
              > forced to use them for one such scenario (let's say for lack of a better
              > pattern). In order to let my long running MDB (with Container Managed Tx)
              > do it's chores I increased the time-out value to a higher number rather than
              > using the default of 30 secs. Strangely, I was seeing
              > IllegalStateExceptions in stdout. So I created a brand new test MDB with a
              > Thread.sleep for 60 seconds, increased my MDBs timeout value to 120 secs,
              > made sure there was only one MDB in the pool and ran the test again. I
              > still see the below error after 30 seconds.
              > I guess I should probably open a support case, but I thought I'll post here
              > as well in case there's something I am missing.
              >
              > <May 27, 2003 5:26:31 PM PDT> <Notice> <EJB> <Error marking transaction for
              > rollback: java.lang.IllegalStateException: Cannot m
              >
              > ark the transaction for rollback. xid=64:bea55f200db2c786, status=Rolled
              > back. [Reason=weblogic.transaction.internal.TimedOutEx
              >
              > ception: Transaction timed out after 34 seconds
              >
              > Xid=64:bea55f200db2c786(-33600248),Status=Active,numRepliesOwedMe=0,numRepli
              > esOwedOthers=0,seconds since begin=34,seconds left=
              >
              > 30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread
              > Group for Queue: 'default'],ServerResourceInfo[JMS_hmJD
              >
              > BCStore]=(state=started,assigned=none),SCInfo[wlcsDomain+wlcsServer]=(state=
              > active),OwnerTransactionManager=ServerTM[ServerCoor
              >
              > dinatorDescriptor=(CoordinatorURL=wlcsServer+155.14.3.140:7501+wlcsDomain+,
              > Resources={})],CoordinatorURL=wlcsServer+155.14.3.1
              >
              > 40:7501+wlcsDomain+)]
              >
              > java.lang.IllegalStateException: Cannot mark the transaction for rollback.
              > xid=64:bea55f200db2c786, status=Rolled back. [Reason
              >
              > =weblogic.transaction.internal.TimedOutException: Transaction timed out
              > after 34 seconds
              >
              > Xid=64:bea55f200db2c786(-33600248),Status=Active,numRepliesOwedMe=0,numRepli
              > esOwedOthers=0,seconds since begin=34,seconds left=
              >
              > 30,activeThread=Thread[ExecuteThread: '9' for queue: 'default',5,Thread
              > Group for Queue: 'default'],ServerResourceInfo[JMS_hmJD
              >
              > BCStore]=(state=started,assigned=none),SCInfo[wlcsDomain+wlcsServer]=(state=
              > active),OwnerTransactionManager=ServerTM[ServerCoor
              >
              > dinatorDescriptor=(CoordinatorURL=wlcsServer+155.14.3.140:7501+wlcsDomain+,
              > Resources={})],CoordinatorURL=wlcsServer+155.14.3.1
              >
              > 40:7501+wlcsDomain+)]
              >
              > at
              > weblogic.transaction.internal.TransactionImpl.throwIllegalStateException(Tra
              > nsactionImpl.java:1486)
              >
              > at
              > weblogic.transaction.internal.TransactionImpl.setRollbackOnly(TransactionImp
              > l.java:466)
              >
              > at
              > weblogic.ejb20.manager.BaseEJBManager.handleSystemException(BaseEJBManager.j
              > ava:255)
              >
              > at
              > weblogic.ejb20.manager.BaseEJBManager.setupTxListener(BaseEJBManager.java:21
              > 5)
              >
              > at
              > weblogic.ejb20.manager.StatelessManager.preInvoke(StatelessManager.java:153)
              >
              > at
              > weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:117)
              >
              > at
              > weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java
              > :63)
              >
              > at
              > com.xoriant.hm.ejb.session.HierarchyManagerBean_fzysig_EOImpl.getHierarchyId
              > (HierarchyManagerBean_fzysig_EOImpl.java
              >
              > :1477)
              >
              > at
              > com.ebiz.application.customerprofile.hm.CPXHMController.SynchronizeMHTH(Unkn
              > own Source)
              >
              > at
              > com.ebiz.application.customerprofile.hm.CPHMOrgGroupMsgBean.onMessage(Unknow
              > n Source)
              >
              > at weblogic.ejb20.internal.MDListener.execute(MDListener.java:254)
              >
              > at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
              >
              > at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
              >
              >
              >
              >
              

Maybe you are looking for