Wait Time Bug in Advanced Queuing ?

Hello.
I'm working with oracle 8.1 db and i have oracle odp.net driver 9.2.
I have the following problem in AQ, I hope someone can help me.
I made this stored procedure for enqueuing:
pMessageID OUT RAW,
     pMessage     IN     varchar2,
     pTicket IN varchar2
IS
l_enqueue_options DBMS_AQ.enqueue_options_t;
l_message_properties DBMS_AQ.message_properties_t;
l_message_handle RAW(16);
l_msg TESTES.WORK_MESSAGE;
BEGIN
l_msg := TESTES.WORK_MESSAGE(pMessage, pTicket);
DBMS_AQ.enqueue(queue_name => 'TESTES.WORK',
enqueue_options => l_enqueue_options,
message_properties => l_message_properties,
payload => l_msg,
msgid => l_message_handle);
COMMIT;
END;
and i have made this procedured for dequeuing:
pInformation OUT varchar2,
pTicket OUT varchar2
IS
l_dequeue_options DBMS_AQ.dequeue_options_t;
l_message_properties DBMS_AQ.message_properties_t;
l_message_handle RAW(16);
l_message0 WORK_MESSAGE;
BEGIN
l_dequeue_options.wait := 1;
DBMS_AQ.dequeue(queue_name => 'TESTES.WORK',
dequeue_options => l_dequeue_options,
message_properties => l_message_properties,
payload => l_message0,
msgid => l_message_handle);
COMMIT;
pInformation := l_message0.information;
pTicket := l_message0.ticket;
END;
I have one thread that continuously checks the queue for new messages, with 5 seconds interval. this thread can see and process all messages that are in the queue previously... when it connects it processes all the messages. After that it will begin checking the queue in every 5 seconds. Then I put some new messages in the queue and it SHOULD see them and process them. The problem is that if the wait time in dequeue options is 0 (like I would wanted to) the thread doesn't see any message, although there are the ones I put there. If the wait time is > 0 then...it goes ok, it sees the messages and process them.
Anyone can help me understanding the why of this strange behaviour ?
I would realy like to use 0 seconds wait time.
Thanks

I do not have an answer at the moment but I have unsuffited the file so that others can look at the program.
Jeremy Braden
Attachments:
Queue.vi ‏77 KB

Similar Messages

  • Advanced queues are waiting in ready status and do not process

    Advanced queues are waiting in ready status and do not process.
    There are no Db locks.
    DB 11.2.0.2.0

    Hi,
    With this information it is not possible to get appropriate answer in the forum.
    By the way you checked alert log file.
    Check the below link also:
    http://www.cs.umbc.edu/portal/help/oracle8/server.815/a68005/03_adq2f.htm
    Best regards,
    Rafi.
    http://rafioracledba.blogspot.com/

  • Advanced queue taking a lot of CPU time

    hi ,
    My application has a workflow which dequeues messages from an advanced queue.The message is simple text message. But i am facing CPU time problems. when the workflow( one of the steps is to dequeue) runs it uses 100% of a particular CPU.
    can somebody throw some light on the things to implement to reduce CPU time and why i am having this problem.
    also , i am using the TOP command on UNIX to trace the process.Does it give us the correct CPU usage measure?suggest some more specific measures , if any.
    Thanks in Advance

    Hi,
    I came across tip for speeding up OpenLdap a while ago, I have never tested it as I have never found the need to but here it is :-
    Stop the OpenLdap service
    Open slapd.conf which is under SharedServices\openLDAP\
    Locate
    *# Indices to maintain*
    index objectClass eq
    index cn,ou,cssIdentity,member,cssRoleDN,cssProductCode,cssVersion eq
    index cssDisplayNameDefault eq,sub
    and add
    index uniqueMember eq
    Save/Close
    run slapindex.exe -f c:\<location to slapd.conf>\slapd.conf
    Start up OpenLdap service again.
    Though this doesn't explain the reason why you are suddenly getting performance issues, do you have a large amount of native users/groups ?
    If you are on 9.3.1 have you tried Sync Native Directory from Shared Services.
    Cheers
    John
    http://john-goodwin.blogspot.com/

  • Queue Messages initiated by Wait Time?

    Hi, within ICM Script Editor, Release, 8.5.4.0. Via script, Is there any way to automatically play/initiate a message based on the longest wait time or a time value?  For example, if a customer called us and entered our queue, if there was a current queue wait time (or longest call waiting value) of over 5 minutes, could we initiate a message to say "There is currently a wiat time of over 5 minutes, if you would like to call us back please call.....etc"
    Thanks!

    Hi, within ICM Script Editor, Release, 8.5.4.0. Via script, Is there any way to automatically play/initiate a message based on the longest wait time or a time value?  For example, if a customer called us and entered our queue, if there was a current queue wait time (or longest call waiting value) of over 5 minutes, could we initiate a message to say "There is currently a wiat time of over 5 minutes, if you would like to call us back please call.....etc"
    Thanks!

  • How to keep waiting time between processed messages !!

    Hi Folks,
    I have got one scenario required waiting time between processed messages. The problem as follows !!
    File --> Proxy scenario. I receive 15 messages from sender side (same messages structure) so working with one interfaces. File picking and transforming this message and split into 2 messages. messages are receiving to receiver. I am using BPM with 7,8 steps like receiving step, block , message transformation step , internal block 1 for sender 1, internal block 2 for sender 2.
    All things are working fine, messages are going to receiver properly. But customer requirement is , wait step required between processed messages before sender1. I have put wait step still, PI picks all messages in one shot processing and waiting for 2 minutes, after 2 minutes sending all messages at the same time, this process is not working.
    I have tried with wait step in mapping (Sarvesh) given excellent idea, still PI works the same way.
    Can someone please explain a bit why the messages or not waiting message by message. I am using EOIO with Queue name and file process mode "BY NAME" and I have tried "BY TIME" as well. I have given priority to this Queue. On BPM Queue assignment : One Queue.
    Please I am expecting positive answer !!
    Many Thanks in Advance
    San

    Hi Rudolf Yaskorski ,
    Not sure about your PI release and BPM model, do you create separate process instance for each file, or do you process files collecting them in one single instance? Are you using parallelization within your ccBPM ?
    I am using serialization, I don't think bpm can do Parallization until PI 7.0, but PI 7.11 has got has queue assignment. But I am using one queue. This must be serialization.
    To me it looks like your issue is not in ccBPM but rather more in polling files (as per your post file CC polls all 15 files in one shot). So if you wish to poll the files not at the same time some workaround is required. Possible options you could check out:
    A. Either implement "wait" in your mapping based on file name or other criteria (e.g. directory name). Check out if respective BPM instances are really created at different times.
    I have used wait step in mapping. These 15 messages has to go through one interface. So I am using one interface. But I have checked mapping process time in all messages on receiver system. Shows same timing, even though I put 40000 ms waiting time in mapping.
    B. Try polling different files (or use different directories) with different channels and coordinate starting / stopping of your channels by scheduling availability for each CC in RWB. E.g. you poll file 1 with CC 1. You start 2 minutes later CC 2 and poll file 2. And so on.
    I am not clear about this . On BPM waiting step is working and it keeps wait all messages, which are coming through one interface. Then it releases all messages at the same time.
    I don't know how to resolve this. I have tried with Transport acknowledgment, but all messages are going to reciver system waiting at receiver system in priority queue and processing in EOIO, but taking so long. Rather all messages go and sits in queue, I want to stop messages by message with 2 minutes time gap. How please?
    Kind Regards
    San

  • Uccx 9.0 expected wait time returns a -1 value

    Guys I am trying to use the expected wait time feature in UCCX, however the value returned is -1 each time this step is executed. All the other feature such as average wait time etc all works, its just the expected wait time that doesnt. Any ideas please?

    During your tests, the call activating the script you are debugging is actually in queue and with a real wait time?
    I could find any related bug, can you check this links:
    Link1 -- Link2
    I will try to find additional information.
    Rolando Valenzuela

  • UCCX 9 Script wait time`

    Is there a way in UCCX to let callers know that if the estimated wait time is more than 5 minutes or less than 5 minutes to prompt? I'm being asked that the caller only be told if their place in queue is less than 5 or more than 5 minutes; not exact times. I realize this could be frustrating to hear as a call if you've been on hold for 35 minutes to hear, "Your estimated wait time is greater than 5 minutes." But that's what I'm being asked....
    Thanks in advance!

    Yes you can, first, only play the prompt once when the caller first gets into the queue. Then dont play the estimated time after that.
    Ues the Get Reporting Statisic and put in on an INT.
    Then use an IF Statement for more or less than 5 minutes.
    Let me know if you need more help, I am out of the office right now, but can post a sample latter.

  • How to stop listening on advanced queue

    hi,
    i created a java application that listens to an oracle advanced queue then automatically dequeues a messsage after listening. I've set my listen time-out to be the maximum integer value because i don't know when exactly when other applications will enqueue messages.
    the problem is when i attempt to shutdown the server, my application is still listening to the advanced queue.
    i want to find a way to for the LISTEN to stop whenever i perform a certain event, for example, i want shutdown my server. does oracle advance queue have that kind of functionality? stopping the LISTEN?
    Thanks very much
    Chesca

    Hi Chesca,
    we recently experienced the same problem.
    Instead of "resolve" it, we tried to "avoid" it.
    Our solution is based on 2 legs:
    1) a "not-infinite" wait time, let's say 300 secs (5 mins)
    2) an (outer) "infinite-loop" that relaunch the (inner) LISTEN method, catching the appropriate exceptions, and testing for the "state" of the queue
    Hope this could help you.
    Bye
    Paolo

  • MMP 5.2p2 'waiting for connection; X on queue' errors, X increasing

    Shortly after manually upgrading our standalone POP/IMAP multiplexors to 5.2 Patch 2, we started experiencing problems where the CPU utilization of the AService process would drop to almost nothing, and this message would begin to appear in the logs:
    20060328 161950 PopProxyAService.cfg (ldap 0x4bb0d8) (uid=redacted) waiting for connection; 10 on queue
    20060328 161952 PopProxyAService.cfg (ldap 0x819c50) (uid=another.redacted) waiting for connection; 11 on queue
    20060328 161952 PopProxyAService.cfg (ldap 0x817918) (uid=redacted3) waiting for connection; 12 on queueThis message continues with the value increasing:
    20060328 163719 PopProxyAService.cfg (ldap 0xcae928) (uid=redacted4) waiting for connection; 235 on queue
    20060328 163733 PopProxyAService.cfg (ldap 0xcb13c8) (uid=redacted5) waiting for connection; 236 on queue
    20060328 163809 PopProxyAService.cfg (ldap 0xcb5250) (uid=redacted6) waiting for connection; 237 on queue... until AService is restarted.
    At first blush, it looks like something is making the LDAP connection wedge, and it's not timing out for some reason, but that's a guess.
    I see that someone on the Info-iMS list had the same problem shortly after installing 6.1 back in September 2004:
    http://lists.balius.com/pipermail/info-ims-archive/2004-September/019517.html
    Has anyone else seen this or know if this has been identified as a specific bug ... or is a symptom of something else?
    Royce

    That's the problem. THere IS no timeout for the
    situation you've gotten into, where MMP (or messaging
    server itself) believes a connection exists, and is
    active, but gets no response.That's unfortunate. It sounds like a useful timeout for a number of circumstances.
    The solution is to refresh all connections so you
    don't get into this situation.Unfortunately, the LdapRefreshInterval doesn't appear to be a documented option for 5.2p2, but only for 6. Can you confirm this?
    The overhead of binding and unbinding once every 10
    minutes or so is very, very minimal.Fair enough.
    The latter, if it exists, would be a much more
    precise way of handling our symptom. Well, actually, the real problem is that the
    connection between MMP and LDAP is getting silently
    severed by the load balancer. That's something
    that's BAD for both LDAP and for MMP.
    Causes fd leaks in ldap, as it never knows when to
    close what it beleives is an active connection. It
    will attempt to close, but, since it can never get an
    ack back after the load balancer severs the
    connection, it can't fully close it.
    This is truly a bad situation, and it's easy to fix.
    recycle the connections before the LB cuts you off.It looks like our LB has an idle timeout of 1 hour, with any traffic at all resetting the timer. In other words, it doesn't look like the LB that's causing the wedge. There is also no internal LB probing going on.
    From ulimit/plimit/pfiles output, I've also learned that the slapd user currently has a 65536 FD cap. I've been monitoring the FD usage of the slapd process for the past couple of days, and our LDAP servers have not been getting above 1000. We've also had multiple lockups in that period of time. So running out of FDs may not be causing our problem.
    You're very clear about what you want.
    Unfortunately, you are not correct about what is
    s possible.Perhaps our definitions of 'possible' need some negotiation. :) You're saying that the MMP can't do this today, which I accept as fact. But the pieces are all there, as far as I can see.
    The MMP keep close track of how many queries have been served by a particular LDAP connection, how many are on queue without being serviced, and the age of the existing connection. In other words, the app has all the information necessary to do what I'm describing: notice that a connection hasn't actually gotten a response back in X seconds, and terminate it.
    Since the app doesn't support what I'm yearning for, this is academic at this point, so I agree that it's time to take a different tack. I don't want to appear ungrateful for your responses. I appreciate the time you've spent on this issue with me. I'm just trying to understand the underlying issues.
    So I find myself in these unfortunate circumstances:
    1. 5.2 doesn't lock up.
    2. No other applications using our LDAP are experiencing any hung LDAP connections (neither at the TCP level nor at the LDAP application level), even though they're using the same LB front-end.
    3. From the output of plimit/pfiles, our LDAP servers are configured to handle far more file descriptors than they're consuming. The FD theory appears to not apply.
    4. Our LB is configured to time out after 1 hour of inactivity.
    5. It seems unlikely that any of the LDAP connections coming from the MMPs are reaching the 1-hour threshold, considering how high-volume they are for POP, unless they are distributing queries across connections very asymmetrically. Even at 3am, there are enough people who leave their computers on all night who check every 1 minutes that the connections are almost never idle for more than a few tens of seconds.
    Based on the above, it's hard for me to not conclude that 5.2.p2 appears to either have a regression bug that's causing the wedge itself, or has changed the way that it handles some types of timeouts.
    We cannot use 5.2 because we need a bugfix that is in 5.2p2. We appear to not be able to use 5.2p2 because it has this lockup problem that 5.2 does not.
    My 'strings' search for LdapRefreshInterval on the AService binary and Pop/IMAP libraries turns up nothing. Can you confirm that 5.2p2 does or does not support this feature?
    If not, and the only solution is to use LdapRefreshInterval, do you know if II can run 6.x MMP on our multiplexor boxes and leave 5.2 running on our back-end systems?

  • Nested Tables and Advanced Queues- Please Help.

    How do i work with NestedTable type and Advanced Queue.
    I have done the following
    I have Oracle 8.1.7 enterprise edition.
    create type myType as TABLE OF varchar(32);
    create type myObject as OBJECT (
    id int,
    myt myType);
    DECLARE
    BEGIN
    dbms_aqadm.create_queue_table(
    queue_table => 'my_queue_table',
    multiple_consumers => TRUE,
    queue_payload_type => 'myObject',
    compatible => '8.1.3'
    END;
    The Nested Table and Object are created successfully.
    but the queue is not created.
    I get the following message.
    DECLARE
    ERROR at line 1:
    ORA-22913: must specify table name for nested table column or
    attribute
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2012
    ORA-06512: at "SYS.DBMS_AQADM", line 55
    ORA-06512: at line 3
    I know how to specify the nested table storage clause for
    create table statement, but there is no provision for
    it in the create_queue_table procedure.
    Any help will be greately appriciated.
    i have already created and tested aqs with simple data types,
    also i have created simple tables with nested table type
    elements.
    but the combo of Nested tables and AQ is not working.
    thanks in advance.

    Hi Francois. Thank you very much for your reply, but it seems that i still get errors. So let me tell what i have done.
    As you suggested me: i have done a block based on a sub-query for the nested-table:
    'select courses from department where name= :department.name'.
    In the master block(department) i have the when-new-record-instance trigger:
    Declare
    LC$Req varchar2(256);
    Begin
    LC$Req := '(select ns.courses from table
    ( select courses from department where name = ''' || :DEPARTMENT.name || ''' ) ns )';
    Go_block('block11');
    Clear_Block ;
    Set_Block_Property( 'block11', QUERY_DATA_SOURCE_NAME, LC$Req ) ;
    Execute_query ;
    End ;
    Now the errors i receive, this time in the runtime mode are:
    - FRM-41380: Cannot set the blocks query data source
    -FRM-41003: This function cannot be performed here.
    Since it seems that you know how to work with the nested table i would really appreaciate your help. I am new in the nested table and if you could give an ex with my tables it would be great.
    Thank you in advance.

  • Propagation between queues in Oracle Advanced Queuing

    We would like to connect two queues that reside in different database schemas/instances.
    We try to use the propagation feature of Oracle to achieve this.
    The queue-type is the same for both queues.
    Enqueuing is done with a recipient list in order to set multiple local subscribers for the messages that are put onto the queue.
    We would like to propagate between queues without changing the applications that write to originating queue and the other applications that read from the target queue.
    During our research we only found ways where we need to change the application that writes onto the queue, which is not acceptable for us. Also the list of subscribers needs to be different based on the message.
    Therefore I have the following question:
    - is there a way to set up propagation between queues in a way where we don't need to modify the sending application?
    - if not, is there a different way to connect two queues via a subscriber/consumer?

    Oracle8i for Linux does have AQ, although I haven't evaluated it
    yet. If you're still having trouble with the install, make sure
    you get the patch. A quicker and easier way to get Oracle8i up
    cheaply for evaluation is to download the NT version. I'm
    evaluating Oracle8i for both Linux and NT and the NT version is
    more stable.
    I would really appreciate hearing about your experiences with AQ
    on Oracle8 (8.0.4.3). I have several projects that we have been
    considering using AQ with. Please send me an email and tell me
    what problems / work-arounds you found.
    Christian Schroeder (guest) wrote:
    : Hello,
    : I still haven't managed to install 8i completely
    : (files with zero-length, wrong permissions, wrong JVM, ...),
    : anyway... -))
    : We are using Oracle Advanced Queuing under 8.0.4.3 on AIX in
    : a project at my company and I wondered if AQ is in 8i for
    Linux?
    : I really would like to evaluate it at home, since the AIX
    : AQ version has some bugs and restrictions which I really need
    to
    : get around.
    : My idea is to get 8i for AIX, but I wouldn't buy it if the
    : queuing is still unstable.
    : The 8.0.4 documentation states that one will get AQ in the
    : Enterprise Edition with message-type 'RAW' and the Objects
    Option
    : will add full functionality if also purchased. I didn't find
    : any comments on AQ in the installation guide.
    : Regards,
    : Christian
    null

  • Query identified as OracleOEM reporting a lot of CPU wait time

    We use "Ignite" by Confio to monitor the wait time on our database and I have been watching a query for a while now and it seems to be consuming a lot of resources for what it is doing.
    This is the query:
    /* OracleOEM */
    SELECT m.tablespace_name,
    m.used_percent,
    (m.tablespace_size - m.used_space)*t.block_size/1024/1024 mb_free
    FROM dba_tablespace_usage_metrics m,
    dba_tablespaces t,
    v$parameter p
    WHERE p.name='statistics_level'
    AND p.value!='BASIC'
    AND t.tablespace_name = m.tablespace_name
    And this is the execution plan:
    SELECT STATEMENT Optimizer=ALL_ROWS (Cost=152 Cardinality=17 Bytes=2193)
    NESTED LOOPS (Cost=152 Cardinality=17 Bytes=2193)
    NESTED LOOPS (Cost=152 Cardinality=17 Bytes=2125)
    MERGE JOIN (CARTESIAN) (Cost=149 Cardinality=17 Bytes=1785)
    HASH JOIN (Cost=2 Cardinality=1 Bytes=49)
    FIXED TABLE (FULL) OF X$KSPPI (TABLE (FIXED)) (Cost=1 Cardinality=1 Bytes=31)
    FIXED TABLE (FULL) OF X$KSPPCV (TABLE (FIXED)) (Cost=1 Cardinality=1897 Bytes=34146)
    BUFFER (SORT) (Cost=148 Cardinality=502 Bytes=28112)
    VIEW OF DBA_TABLESPACE_USAGE_METRICS (VIEW) (Cost=147 Cardinality=502 Bytes=28112)
    SORT (UNIQUE) (Cost=147 Cardinality=502 Bytes=19122)
    UNION-ALL
    SORT (AGGREGATE) (Cardinality=1 Bytes=8)
    TABLE ACCESS (BY INDEX ROWID) OF RECYCLEBIN$ (TABLE) (Cost=4 Cardinality=389 Bytes=3112)
    INDEX (RANGE SCAN) OF RECYCLEBIN$_TS (INDEX) (Cost=1 Cardinality=388)
    SORT (AGGREGATE) (Cardinality=1 Bytes=14)
    FIXED TABLE (FULL) OF X$KTFBHC (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=14)
    SORT (AGGREGATE) (Cardinality=1 Bytes=8)
    TABLE ACCESS (BY INDEX ROWID) OF RECYCLEBIN$ (TABLE) (Cost=4 Cardinality=389 Bytes=3112)
    INDEX (RANGE SCAN) OF RECYCLEBIN$_TS (INDEX) (Cost=1 Cardinality=388)
    SORT (AGGREGATE) (Cardinality=1 Bytes=14)
    FIXED TABLE (FULL) OF X$KTFBHC (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=14)
    HASH (GROUP BY) (Cost=89 Cardinality=500 Bytes=19000)
    MERGE JOIN (Cost=87 Cardinality=500 Bytes=19000)
    TABLE ACCESS (CLUSTER) OF TS$ (CLUSTER) (Cost=86 Cardinality=426 Bytes=9372)
    INDEX (FULL SCAN) OF I_TS# (INDEX (CLUSTER)) (Cost=1 Cardinality=1)
    SORT (JOIN) (Cost=1 Cardinality=501 Bytes=8016)
    FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=501 Bytes=8016)
    HASH (GROUP BY) (Cost=52 Cardinality=1 Bytes=38)
    NESTED LOOPS (Cost=50 Cardinality=1 Bytes=38)
    FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=251 Bytes=4769)
    TABLE ACCESS (CLUSTER) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=19)
    INDEX (UNIQUE SCAN) OF I_TS# (INDEX (CLUSTER)) (Cost=1 Cardinality=1)
    HASH (GROUP BY) (Cost=5 Cardinality=1 Bytes=84)
    HASH JOIN (Cost=3 Cardinality=1 Bytes=84)
    NESTED LOOPS
    NESTED LOOPS (Cost=3 Cardinality=1 Bytes=65)
    HASH JOIN (Cost=2 Cardinality=1 Bytes=49)
    FIXED TABLE (FULL) OF X$KSPPI (TABLE (FIXED)) (Cost=1 Cardinality=1 Bytes=31)
    FIXED TABLE (FULL) OF X$KSPPCV (TABLE (FIXED)) (Cost=1 Cardinality=1899 Bytes=34182)
    INDEX (UNIQUE SCAN) OF I_TS1 (INDEX (UNIQUE)) (Cost=1 Cardinality=1)
    TABLE ACCESS (BY INDEX ROWID) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=16)
    FIXED TABLE (FULL) OF X$KTTEFINFO (TABLE (FIXED)) (Cost=0 Cardinality=251 Bytes=4769)
    TABLE ACCESS (BY INDEX ROWID) OF TS$ (CLUSTER) (Cost=1 Cardinality=1 Bytes=20)
    INDEX (UNIQUE SCAN) OF I_TS1 (INDEX (UNIQUE)) (Cost=1 Cardinality=1)
    FIXED TABLE (FIXED INDEX) OF X$KCFISTSA (ind:1) (TABLE (FIXED)) (Cost=0 Cardinality=1 Bytes=4)
    My question is two fold... does anybody know where in OEM you can control the execution of this query? I would like to reduce the frequency it is run, or if that is not a good idea does anybody have any ideas from a tuning perspective?
    Ignite is reporting 1,440 executions, 621,776,455 buffer gets, and 2 hours of CPU wait time per day.
    Thanks in advance,
    Zack

    A typical question for this forum.
    We use Oracle, we can't remember which version, and we can't be bothered to post it.
    We don't know Oracle, so we use a third party product (Ignite from Confio) to perform redundant monitoring on our databases, which is already being performed by Oracle Enterprise Manager, for free.
    Instead of trying to use the products which come with Oracle, we would like to wreck functionality, by tampering with things like frequency, and/or even adjusting Oracle provided queries, consequently invalidating our support contract for Oracle.
    And, no, we are not aware, provided the database is doing nothing, queries like this one will automatically surface in the list of top <n> queries.
    I would suggest you start to learn Oracle and dump Ignite. It is of no use to monitor your database with two tools, and OEM is fully integrated in Oracle.
    Sybrand Bakker
    Senior Oracle DBA

  • Query performance analysis in RSRT --- event text 'Wait Time, User'  means?

    Hi All,
    I am running some queries in RSRT in 'execute + debug' mode.
    selecting 'statistics data for query' option.
    Statistics says that most of the time is taken by the event 'Wait Time, User' (event text).
    handler type is OLAP or DFLT depending on the query.
    This is taking around 90% of the query run time.
    Can any one tell me what it means ? Where is it actualy taking time?
    What does it mean by :
    Event text --> 'waiting time, User'
    Handler type DFLT
    Handler type OLAP.
    A sample record of the statistics:
    4A2Z2CFA1GLIRPIK9O2Z18GK1     4A2Z2SN22IFE3AKOL50W9DQZ5     BEX3     2     ZS233BIWDEV     11.06.2008  19:29:08          DFLT               2     1     Wait Time, User     98.467887     0     1
    Thanks in advance.
    rgds,
    Raghu.
    Edited by: Raghu tej harish reddy on Jun 11, 2008 4:19 PM

    Thank you for your immediate response.
    But i won't think it is the time taken to enter the values in the variable screen because of two reasons:
    1.There are some events starting before these events(i can say by seeing the starting time of the events)
    2.For some queries this time is around 3 minutes; and i hardly take 30 seconds to enter the variable values.
    Thanks,
    Raghu

  • Advanced Queues Snapshot too old error

    I am using the advanced queues to submit work for parallel processes running through the Oracle Job Queue.
    I have attempted running anywhere from 1 to 5 simultaneous processes (in addition the the process which submits them to the Oracle job queue and populates the advanced queues) and I am getting sporadic Snapshot too old errors when the other processes are attempting to dequeue. The Advanced queues are populated before the other processes are submitted to the job queue, so I don't see that there could be conflicts between one process enqueuing while another is dequeuing.
    The reason I am attempting this is to try and gain some performance by running processes in parallel.
    Has anyone else had problems like this? Is this a bug in Oracle 8.1.6? Is there a parameter setting I need to adjust? Are there any suggestions for getting around this problem?

    I don't know what version of the database you are running? I'm only using 8.1.7.4. But where I come from, you add datafiles to the tablespace, not the rollback segment.
    alter tablespace rollback
    add datafile '&lt;blah, blah&gt;'
    size 147m
    autoextend on next 100m maxsize 2047m;
    Make sure that you have a suitable number of rollback segments that are well-sized extents. But mostly, listen the Tom Best, and try and introduce some best practices (no pun intended) to reduce the likelihood of this situation arising.

  • Extending wait times in Workflow (items that have already started)

    We have Order Mgt order line workflow that has multiple wait and loop activities. A number of these timeout in 2 minutes. We think that this is causing the WF BG process to run extremely long times because a processed item key times out before the process ends, causing the item to process through multiple times.
    We have an initiative open to increase the wait times for the wait nodes. However, we need to figure out a way to extend the waits for the order lines that are IN PROCESS. We tried updating the due date field on the wf_item_activity_statuses and also updated the number_value in wf_activity_attr_values. But that did not do the trick. We then found another table WF_ITEM_ACTIVITY_STATUSES_H which also holds the due date.
    I would like to find out if someone has ideas on what tables to update in order to get all the existing wait times extended from the current value to a different value.
    Thanks in advance.

    You need to update WF_ACTIVITY_ATTR_VALUES for the specific process activity id that is in wf_item_activity_statuses.
    But why do want to do that. Let them complete with the old default_days and the new ones can use the new value. Are there too many item keys (order lines) that are open and require processing using WBG?
    Thanks
    Nagamohan

Maybe you are looking for