Dequeue

Hello
I have a dequeue method, which only dequeues for Objects. I have 100 toys. How would I be able to put the 100 toys, of type toy into an array. My problem is the casting, since the dequeue only works on Objects while I want to put in type Toy
Thanks..........

It seems like you have declared your Toys like this:
Object toy1 = new Toy();
dequeue(toy1);
wont work then!
But you can cast your toy explicitely:
Object toy1 = new Toy();
dequeue( (Toy)toy1);

Similar Messages

  • JMS Dequeue not working after upgrade from 11gR1 to 11gR2

    Our database was migrated to a new database with new hardware running 11gR2
    enqueue appears to be working as the queue table just grows and grows
    However, my JMS async subscriber is never getting messaged.
    Is there any logical reason for this?
    in select * from all_queues my queue does show ENQUEUE and DEQUEUE enabled
    also
    the user that makes the subscription has DEQUEUE grant priviledge
    Is there anything else that is needed for this to work?
    I have already recreated the queue and queue table and ended up in the same place with no JMS consumer being able to consume.
    when enabling trace on JMS I see
    Caused by: oracle.jms.AQjmsException: JMS-122: Internal error Corrupted message
         at oracle.jms.AQjmsError.throwEx(AQjmsError.java:334)
         at oracle.jms.AQjmsUtil.getTextData(AQjmsUtil.java:718)
         at oracle.jms.AQjmsTextMessage.readGenMessageContainer(AQjmsTextMessage.java:322)
         at oracle.jms.AQjmsTextMessage.<init>(AQjmsTextMessage.java:172)
         at oracle.jms.AQjmsConsumer.dequeue(AQjmsConsumer.java:2481)
    What incompatibilities exist b/w 11gR1 and 11gR2 ... my client is using aqapi 11.1
    Edited by: steffi on Jan 14, 2013 3:14 PM

    It's looking like it was a missing jar in this case the orai18n.jar
    Is there any kind of release notes for how to move working AQ from 11gR1 to 11gR2?

  • Dataflow problem, queuing in subvi dequeuing in main vi

    ive stuck on a very simple data flow problem here, I'd like to pass data being enqueue in the subvi and dequeue in the main vi consumer loop. Ive attached the vi, since im already stuck on this problem, i was hoping i could learn a few things, specially implementing action engine in this situation  
    thanks.
    Solved!
    Go to Solution.
    Attachments:
    Counter Main.vi ‏16 KB
    counter subvi.vi ‏11 KB

    Your subVI doesn't make any sense since your loop will always exit after the first iteration and you always initialize your counter to 0 every time you execute it. That is one issue.
    Your code also suffers from multiple places that are dequeueing data from the queue. You will get undeterministic behavior since you don't know which dequeue will get the data first. Generally for a producer/consumer architecture using queues one or more loops loops should be enqueueing data to the queue. One and only one loop should be dequeueing data. These loops shuold run in parallel to each other. In your code you will only run your subVI whenever you press the start button and as stated you will always post a value of 1 to the queue. What you would need to do is have your subVI run independently once it is started. Use the "Start Asychronous CAll" to start your subVI when the Start button is presed and then let it simply run. Have it post the counter to the queue. Your lower loop in the main VI should dequeue the values and display them. You do not need the Wait in that lower loop since that is the purpose of the dequeue. That loop will be idle if there is no data present and will only run when data is in the queue.
    In the upper loop of your main VI remove the dequeue and enqueue. You don't need them since the subVI is all that is needed to post the data to the queue.
    Try this:
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot

  • How to use property object with dequeue

    I tried to do following steps in Labview7.1 and Teststand3.1:
    - Create a named Queue in Teststand
    - Get the named Queue reference in Labview (GetQueue)
    - Enqueue an property of type NI_BatchControllerRequest into the Queue in Teststand
    - Dequeue the element in Labview by using a Fileglobal of type NI_BatchControllerRequest as destination property object
    At the first Enqueue, the object is correctly dequeued and stored in the Fileglobal. But at the next enqueue, I get the error -17300 (Exception occured in TSSync, Unable to set a top-level property object to another object) at the dequeue operation.
    When I use flat datatypes like string or bool, there are no errors, also at multiple enqueue operations.
    Can anyone help?

    LVFan -
    I did not realize that you are using the SyncManager low level API. The low-level API has a few restrictions that the step type does more work to hide from the user.
    If you look at the dequeue API function it takes an input parameter which is the destination object. Internally the dequeue operation uses the SetPropertyObject method to do the assignment. This method requires that the object that you assign a value to has a parent so that the engine can go to the parent, delete the child, and add the new child in its place. Even if the destination property object that you supplied had a parent, your reference to the "destination" would not be the new object because your reference is pointing to the old property a
    nd not the new one. You would be required to go to the parent and ask for the child again.
    A simple change to make this work for you is to use a reference object as the destination and then use GetValInterface on it to get the element from the queue. I have updated your VI to illustrate this.
    Scott Richardson (NI)
    Scott Richardson
    National Instruments
    Attachments:
    Queue.vi ‏93 KB

  • Dequeue messages one at a time

    We have a scenario where we have to send messages to a server(on a TCP/IP port).
    However since we are expecting huge volumes and the server cannot handle such huge volumes, we are dumping all the messages into an AQ.
    We want to dequeue these messages one at a time and send them to this server.
    The AQ Adapter however seems to dequeue all the messages in the queue in one shot. It then creates separate instances for each message and bombards the server with these messages.
    The whole purpose of using the queue is not served.
    Is there anyway we can throttle this dequeuing?
    The AQ Adapter gives 2 options:
    1) Polling : In this case however each time it polls it picks up all the messages in the queue that are ready to be dequeued.
    2) Notification : Havent seen much documentation around this? Am not sure if this will solve our problem.
    Any possible alternatives/solutions are welcome.
    Thanks,
    Vinod.

    Hi Vinod,
    To follow up on Lili's reply, you can refer to the solution I posted in the following thread:
    Re: About AQ ADT example functionality
    Scroll down to the section "How to make AQ process synchronous" and follow the outlines steps.
    Thanks.

  • Dequeue (using a AQ Adapter) based on a "Variable" condition

    Hi,
    I use an AQ Adapter to dequeue messages from an AQ and send it to an BPEL process. I have setup the adapter for conditional dequeuing as follows:
    My message object has a field called "title" so in my adapter i use the Dequeue condition as below and it works perfectly:
    <jca:operation
    ActivationSpec="oracle.tip.adapter.aq.inbound.AQDequeueActivationSpec"
    QueueName="DETPAYLOAD_QUEUE"
    DatabaseSchema="APPS"
    DequeueCondition="tab.user_data.title='Test Case'"
    OpaqueSchema="false" >
    </jca:operation>
    My question is : Is it possible to configure the adapter based on a Variable in the BPEL process?
    For example: Can i use the DequeueCondition as : DequeueCondition="tab.user_data.title=Process_Variable" (where Process_Variable is a BPEL process variable that has been populated in the previous activity)
    I have tried some of the below ways to get this working but have not been successful so far. Has anyone tried this before?
    - DequeueCondition="tab.user_data.title=(String)getVariableData("Process_Variable")"
    - DequeueCondition="tab.user_data.title=:Process_Variable"
    - DequeueCondition="tab.user_data.title=@Process_Variable"
    Thanks,
    Amol

    That's the way.

  • Issue in dequeuing messages on Linux using AQjmsTextMessage_C.getFactory().

    Hi All,
    This is regarding issue related to Dequeuing of message from AQ on Linux platform using JAVA API. Our appliaction is sending message on AQ which has queue payload type of type 'SYS.AQ$_JMS_TEXT_MESSAGE'. For dequeuing of this message we are using method AQjmsTextMessage_C.getFactory() that returns CustomDatumFactory.
    The code snippet is as follows:
    AQDequeueOption dequeueOption = new AQDequeueOption();
    message = ((AQOracleQueue)l_queue).dequeue(dequeueOption,AQjmsTextMessage_C.getFactory());
    The code is working fine on Windows environment. I ran the code from JDev IDE and also from batch file which was hitting the Oracle AQ installed on Linux environment. In both the case either through IDE or through batch file the code is running properly.
    The same code on Linux is not working properly i.e. when the method AQjmsTextMessage_C.getFactory() is called we are not able to get the CustomDatumFactory. We are not getting any errors/exceptions and the control is directly going to finally block of our method and we are not getting the message from AQ. We tried with different jar files that contain the AQjmsTextMessage_C class but still not able to figure out the issue(The jar files used are viz. aqapi.jar,aqapi12.jar,aqapi13.jar,aqapi_g.jar,aqapi12_g.jar,aqapi13_g.jar).
    The script that we used for creating the queue is as follows:
    BEGIN
    dbms_aqadm.create_queue_table(
    queue_table=>'SAMPLE_T',
    queue_payload_type=>'SYS.AQ$_JMS_TEXT_MESSAGE',
    multiple_consumers => false,
    comment => 'Queue Table For Text Message'
    END;
    BEGIN
    dbms_aqadm.create_queue (
    queue_name => 'SAMPLE_Q',
    queue_table => 'SAMPLE_T');
    END;
    BEGIN
    dbms_aqadm.start_queue (queue_name=>'SAMPLE_Q');
    END;
    Please let me know if you have faced such issue on Linux environment or have any pointers about the same.
    Regards,
    Abhishek

    If "control is directly going to finally block" there must be some (unchecked) runtime exception. Catch it.
    try{
      AQDequeueOption dequeueOption = new AQDequeueOption();
      message = ((AQOracleQueue)l_queue).dequeue(dequeueOption,AQjmsTextMessage_C.getFactory());
    } catch (Throwable t) {
      t.printStackTrace()
    }You probably just don't have native code in the library path.

  • How to dequeue messages that were enqueued when app was offline

    I have 2 question. The following is the scenario -
    I have 2 different process. Process A and Process B.
    Process A enqueue's the message in the message queue.
    Process B dequeue's the message from the message queue.
    1) Process B shuts down for some time but Process A continues to enqueue the message in the queue. When Process B comes back live how to dequeue the messages in the message queue that were posted by Process A when Process B was offline?
    2) The queue that I am using is multiple consumer queue as there needs to be more than 1 Process B to dequeue the message. The logic behind the design is if one of the process B dies the other process B can still continue to process. At the same time if 1 instance of Process B has picked up a message it should notify other Process B to not process the message.
    I coudn't find any samples. Any help is greatly appreciated.

    Hello,
    The messages that process A enqueues and are not consumed while process B is down will remain in the queue until process B restarts.
    It sounds as though you don't need to use a multi-consumer queue as all you appear to want to do is consume the messages as quickly as possible. Is that correct? If it is you could have multiple process Bs consuming messages from the same single consumer queue. Messages that one process is consuming will not be available to another and this is handled internally.
    You can also have multiple processes consuming messages associated with the same consumer on a multi-cosnumer queue and the same applied.
    Or you could have multiple processes on a multi-consumer queue associated with different subscribers which are all interested in the same message.
    What you use depends on what your design requires but each message will be consumed only once in the case of a single consumer queue and only once per subscriber/recipient in a multi-consumer queue.
    Thanks
    Peter

  • AQ Adapter dequeue of xmltype payload with opaque schema doesn't work

    I am using 10.1.3.4 of SOA suite. I have a AQ with xmltype payload. In the dequeue operation I don't want to specify the xsd, so using opaque schema option.
    then the variable created will have opaque as part name and opaqueElement for the body of the payload. But during runtime I only see the variable with part.
    Design Time(JDEV):
    Has the following structure-
    'Receive_Dequeue_InputVariable','opaque','/ns2:opaqueElement'
    RunTime:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <Receive_Dequeue_InputVariable>
    - <part>
    - <programUpdate xmlns="http://apollo/soa/internal/student">
    <ns1:finAidCertified xmlns:ns1="http://apollo/soa/internal/student">Y</ns1:finAidCertified>
    <ns1:programVersion xmlns:ns1="http://apollo/soa/internal/student">v1</ns1:programVersion>
    <ns1:program xmlns:ns1="http://apollo/soa/internal/student">m10</ns1:program>
    </programUpdate>
    </part>
    </Receive_Dequeue_InputVariable>
    Looks to me as bug.
    The question is whether there is any workaround. Or a better way to handle this ?
    Thanks

    I don't think so, I think you are getting mixed up between what is defined in the DB, and what is defined in the BPEL process.
    On the DB it is defined as xmltype, not Opaque therefore when it is read into BPEL it shows this. The question here is are the types compatible, was any error generated here.
    cheers
    James

  • How to dequeue/delete/remove a message with delay?

    I've enqueued a message with dbms_aq.enqueue
    using
    l_message_properties.delay := 24*60*60*x
    where x is calculated so that the message should normally be dequeued on a given date, but not before next midnight. So that if nothing happens, the message can be consumed by another system in the right time. But now, when "something happens", i'd like to cancel the message, to delete it from the queue, as if it weren't there
    dbms_aq.dequeue(
    queue_name => 'MY_QUEUE',
    dequeue_options => dequeue_options,
    message_properties => message_properties,
    payload => my_queue_type_variable,
    msgid => right_msgid
    gives ORA-25228: timeout or end-of-fetch during message dequeue from MY_QUEUE, although documentation says delay is not considered when msgid is given.
    Is there a way to remove this message - should i update the delay date to null and try to dequeue the message? Or can i just delete from the queue table? Or is there a nicer way how things should be done?
    (soon going from 9.2.0.6 => 10.2.0.3)
    Thanks,
    Andres

    Hi Martien,
    thank you very much for your response.
    I am (very) new to AQ. And from your response it seems i have to get used to some new concepts. Can you please confirm.
    A service will be ended .. say 30. september. The decision is made today, on sept 18. I send it right away to AQ for other systems to be consumed, and put the delay date 01 october, so they will receive the message just in time. And ... everything is fine until some one changes its mind and decides (before 01 october) that "no, this service will not be ended". Now i need to cancel the message in AQ. So that the other systems will not be notified about the end of the service. And you say i can't. And, i can't set the expire date at enqueue time, because it is not known, whether the ending of the service will be cancelled or not ( and 99.9% it will not be cancelled, it is a very rare exception. But happens sometimes. Everybody makes mistakes).
    Now, do i have to make my own queue table, log all the ending services there, delete from that table when ending is cancelled and make a job frequently scanning that table to transport all ended dates to the original AQ for other systems to read and consume? Ok, i see, i can make this just another queue, but this one i'll consume myself, and the consuming from this queue means to check whether the actual end date on the service is in place, and when it is, put it to original queue, else just ignore. Right? I have to make two queues (on the same structure) to make this work?
    What does the "Only messages in the READY state are dequeued unless a msgid is specified." mean then (http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96587/qopface.htm#63943)? I do read it in the way that when a msgid is specified, i can dequeue a message even when it's not ready?
    Many thanks,
    Andres

  • Dequeue same message twice in topic mode.

    I have written a concurrent consumer program to consume AQ's message. The queue is a multiple consumer queue, and i just created one subscriber on it. Then i started 10 threads to dequeue messages from that queue. when all messages are consumed I found that some messages are consumed twice. Is there any tips for this problem?
    Thanks very much.
    The dequeue log is as follows:
    First:
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsListenerWorker.run: Before dispatchOneMsg to dispatch a message to the listener
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsListenerWorker.dispatchOneMsg: entry
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] [Thread-10] getLock (OJMS.MessageConsumer.-4ab69733:132fd95ca2e:-8000.37) : after sync, timeout=0
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] [Thread-10] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : after sync, timeout=0
    AQ deliveryMode: 1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] [Thread-10] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : acquired session lock, usecount=1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] [Thread-10] getLock (OJMS.MessageConsumer.-4ab69733:132fd95ca2e:-8000.37) : acquired consumer lock, usecount=1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsListenerWorker.dispatchOneMsg: lockReceive returns, got the lock
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.receiveForListener: entry
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: entry
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: visibility : 2
    AQ deliveryMode: 1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: sec_timeout: 0 close_check_interval: 120
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: After getDbConnection
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: q_name: DEV1_TRANSACTION.UNIT_TEST_Q p_data_type: DEV1_TRANSACTION.GC_NOTIFY_T
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: Payload type-1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: use_ociaq_lib = false
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsSession.getDequeueStmt: dequeue statement: begin dbms_aqin.aq$_dequeue_in(queue_name => ?, subscriber => ?, msgid => ?, correlation => ?, dequeue_mode => ?, navigation => ?, visibility => ?, wait => ?, enqueue_time => ?, state => ?, out_msgid => ?, out_correlation => ?, priority => ?, delay => ?, expiration => ?, attempts => ?, exception_queue => ?, remote_recipients => ?, sender_name => ?, sender_addr => ?, sender_protocol => ?, original_msgid => ?, payload_type => ?, raw_user_data => ?, object_user_data => ?, deq_cond => ?, signature => ?, out_sign => ?, transformation => ?, delivery_mode => ?, out_delivery_mode => ?); end;
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: consumer_name: SUBSCRIBER1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: dq_mode: 3navig: 1visibility: 2
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: adt_message retrieved
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: set AQ enqueue_time as 1318514224000
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: msg_id: AEDE32CF4AAEB32EE040010A1AD76B10 corrid: null priority: 1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: msg_delay(secs): 0
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: exptime(secs): -1
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: attempts: 0
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: excp_q: null
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: recv_time: Thu Oct 13 22:01:20 CST 2011
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.dequeue: exit-2
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsConsumer.receiveForListener: exit
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsListenerWorker.dispatchOneMsg: Received the message: AEDE32CF4AAEB32EE040010A1AD76B10
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsSimpleScheduler.feedData: Got a non null message, the sleep time is reset to 0
    Thread-10 [Thu Oct 13 22:01:20 CST 2011] AQjmsListenerWorker.dispatchOneMsg: Before calling onMessage method
    2011-10-13 22:01:21 INFO (MockAqListener.java:49)[Thread-10] - Thread-10:3Message ID:AEDE32CF4AAEB32EE040010A1AD76B10 Message :AEDE32CF4AADB32EE040010A1AD76B10
    Thread-10 [Thu Oct 13 22:01:21 CST 2011] [Thread-10] getLock (OJMS.Session..-4ab69733:132fd95ca2e:-8000.28) : after sync, timeout=0
    Thread-10 [Thu Oct 13 22:01:21 CST 2011] [Thread-10] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : Thread Thread-10 try to require lock mulitple times, grant it again.
    Thread-10 [Thu Oct 13 22:01:21 CST 2011] [Thread-10] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : acquired session lock, usecount=2
    2011-10-13 22:01:21 INFO (MockAqListener.java:49)[Thread-19] - Thread-19:2Message ID:AEDE32CF4A86B32EE040010A1AD76B10 Message :AEDE32CF4A85B32EE040010A1AD76B10
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] AQjmsSession.restartConsumers: entry
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] [Thread-10] releaseLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : after sync
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] [Thread-10] unLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : released session lock, EXIT, usecount=1
    2011-10-13 22:01:22 INFO (MockAqListener.java:55)[Thread-10] - Thread-10:3Message ID:AEDE32CF4AAEB32EE040010A1AD76B10 Message :AEDE32CF4AADB32EE040010A1AD76B10Commit
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] AQjmsListenerWorker.dispatchOneMsg: After calling onMessage method
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] [Thread-10] unLock (OJMS.MessageConsumer.-4ab69733:12e:-8000.67) : released session lock, EXIT, usecount=1
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] [Thread-10] releaseLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : after sync
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] [Thread-10] unLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.28) : released session lock, EXIT, usecount=0
    Thread-10 [Thu Oct 13 22:01:22 CST 2011] AQjmsListenerWorker.dispatchOneMsg: unlock the session and EXIT
    Second:
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsListenerWorker.dispatchOneMsg: lockReceive returns, got the lock
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.receiveForListener: entry
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: entry
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: visibility : 2
    AQ deliveryMode: 1
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: sec_timeout: 0 close_check_interval: 120
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: After getDbConnection
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: q_name: DEV1_TRANSACTION.UNIT_TEST_Q p_data_type: DEV1_TRANSACTION.GC_NOTIFY_T
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: Payload type-1
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: use_ociaq_lib = false
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsSession.getDequeueStmt: dequeue statement: begin dbms_aqin.aq$_dequeue_in(queue_name => ?, subscriber => ?, msgid => ?, correlation => ?, dequeue_mode => ?, navigation => ?, visibility => ?, wait => ?, enqueue_time => ?, state => ?, out_msgid => ?, out_correlation => ?, priority => ?, delay => ?, expiration => ?, attempts => ?, exception_queue => ?, remote_recipients => ?, sender_name => ?, sender_addr => ?, sender_protocol => ?, original_msgid => ?, payload_type => ?, raw_user_data => ?, object_user_data => ?, deq_cond => ?, signature => ?, out_sign => ?, transformation => ?, delivery_mode => ?, out_delivery_mode => ?); end;
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: consumer_name: SUBSCRIBER1
    Thread-11 [Thu Oct 13 22:01:28 CST 2011] AQjmsConsumer.dequeue: dq_mode: 3navig: 1visibility: 2
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: adt_message retrieved
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: set AQ enqueue_time as 1318514224000
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: msg_id: AEDE32CF4AAEB32EE040010A1AD76B10 corrid: null priority: 1
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: msg_delay(secs): 0
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: exptime(secs): -1
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: attempts: 0
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: excp_q: null
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: recv_time: Thu Oct 13 22:01:29 CST 2011
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.dequeue: exit-2
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsConsumer.receiveForListener: exit
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsListenerWorker.dispatchOneMsg: Received the message: AEDE32CF4AAEB32EE040010A1AD76B10
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsSimpleScheduler.feedData: Got a non null message, the sleep time is reset to 0
    Thread-11 [Thu Oct 13 22:01:29 CST 2011] AQjmsListenerWorker.dispatchOneMsg: Before calling onMessage method
    2011-10-13 22:01:30 INFO (MockAqListener.java:49)[Thread-11] - Thread-11:5Message ID:AEDE32CF4AAEB32EE040010A1AD76B10 Message :AEDE32CF4AADB32EE040010A1AD76B10
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : after sync, timeout=0
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : Thread Thread-11 try to require lock mulitple times, grant it again.
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] getLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : acquired session lock, usecount=2
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] AQjmsSession.restartConsumers: entry
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] releaseLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : after sync
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] unLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : released session lock, EXIT, usecount=1
    2011-10-13 22:01:30 INFO (MockAqListener.java:55)[Thread-11] - Thread-11:5Message ID:AEDE32CF4AAEB32EE040010A1AD76B10 Message :AEDE32CF4AADB32EE040010A1AD76B10Commit
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] AQjmsListenerWorker.dispatchOneMsg: After calling onMessage method
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] unLock (OJMS.MessageConsumer.-4ab69733:132fd95ca2e:-8000.43) : released consumer lock, usecount=0
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] releaseLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : after sync
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] [Thread-11] unLock (OJMS.Session.-4ab69733:132fd95ca2e:-8000.26) : released session lock, EXIT, usecount=0
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] AQjmsListenerWorker.dispatchOneMsg: unlock the session and EXIT
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] AQjmsListenerWorker.run: After dispatchOneMsg, Before get the next sleep time
    Thread-11 [Thu Oct 13 22:01:30 CST 2011] AQjmsListenerWorker.run: sleep 0 millisecond.

    This issue looks like Bug: 13729601
    (from http://www.oracle.com/technetwork/middleware/docs/aiasoarelnotesps5-1455925.html)
    The dequeuer returns the same message in multiple threads in high concurrency environments when Oracle database 11.2 is used. This means that some messages are dequeued more than once. For example, in Oracle SOA Suite, if Service 1 suddenly raises a large number of business events that are subscribed to by Service 2, duplicate instances of Service 2 triggered by the same event may be seen in an intermittent fashion. The same behavior is not observed with a 10.2.0.5 database or in an 11.2 database with event10852 level 16384 set to disable the 11.2 dequeue optimizations.
    Workaround: Perform the following steps:
    Log in to the 11.2 database:
    CONNECT /AS SYSDBA
    Specify the following SQL command in SQL*Plus to disable the 11.2 dequeue optimizations:
    SQL> alter system set event='10852 trace name context forever,
    level 16384'scope=spfile;
    Restart the database.
    Edited by: Maarten Smeets on Jan 28, 2013 2:10 PM

  • Dequeue method hangs

    All,
    on our sun solaris OS 5.6 we run oracle database server 8.1.6 and AQ server 8.1.6. We use jdbc thin (classes12.zip) oracle8i 8.1.6.2.0 JDBC Driver for jdk 1.2.x .
    We use the AQ api from our java backend to dequeue messages from the AQ server. It happens time to time that this method hangs. The error is hard to reproduce and does happen after the backend has been running for a while, usually a few hours.
    Any hints for the reason of this are greatly appreciated.
    Thanks Ben: [email protected]
    Below is the stack thrace of the thread that hangs:
    Thread-2:
    [1] java.net.SocketInputStream.socketRead (native method)
    [2] java.net.SocketInputStream.read (SocketInputStream:90)
    [3] oracle.net.ns.Packet.receive (pc 32)
    [4] oracle.net.ns.NetInputStream.getNextPacket (pc 48)
    [5] oracle.net.ns.NetInputStream.read (pc 21)
    [6] oracle.net.ns.NetInputStream.read (pc 5)
    [7] oracle.net.ns.NetInputStream.read (pc 6)
    [8] oracle.jdbc.ttc7.MAREngine.unmarshalUB1 (MAREngine:718)
    [9] oracle.jdbc.ttc7.MAREngine.unmarshalSB1 (MAREngine:690)
    [10] oracle.jdbc.ttc7.Oall7.receive (Oall7:372)
    [11] oracle.jdbc.ttc7.TTC7Protocol.doOall7 (TTC7Protocol:1330)
    [12] oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch (TTC7Protocol:757)
    [13] oracle.jdbc.driver.OracleStatement.executeNonQuery (OracleStatement:1313)
    [14] oracle.jdbc.driver.OracleStatement.doExecuteOther (OracleStatement:1232)
    [15] oracle.jdbc.driver.OracleStatement.doExecuteWithBatch (OracleStatement:1353)
    [16] oracle.jdbc.driver.OracleStatement.doExecute (OracleStatement:1760)
    [17] oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout (OracleStatement:1807)
    [18] oracle.jdbc.driver.OraclePreparedStatement.executeUpdate (OraclePreparedStatement:332)
    [19] oracle.jdbc.driver.OraclePreparedStatement.executeQuery (OraclePreparedStatement:283)
    [20] oracle.AQ.AQOracleQueue.dequeue (AQOracleQueue:1356)
    [21] oracle.AQ.AQOracleQueue.dequeue (AQOracleQueue:1132)

    Folks,
    I have read this post with great interest related to the AQ dequeue problems reported. We got the same problem and I am wondering that whether you have found the solution to the problem.
    Your help is highly appreciated.
    Thanks,
    Yibing

  • Getting DOM Parsing Exception in translator while Dequeuing the message from JMS topic

    Hi All,
    Hope you all doing good.
    I have an issue.
    I am running on 11.1.1.5 SOA suite version on Linux.
    In my aplication I have 4 projects which are connected by with topic/queue.
    But in one of the communication, the JMS topic throws me the below error in the log, but dequeue happend perfectly fine and the application runs smoothly.
    [ERROR] [] [oracle.soa.adapter] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@530c530c] [userId: <anonymous>
    ] [ecid: 5552564bd7cf9140:-117a2347:142149c715a:-8000-00000000069dd133,0] [APP: soa-infra] JMSAdapter <project1>
    JmsConsumer_sendInboundMessage:[des
    tination = <TOPIC NAME>  subscriber = <Consumer project name>
    Error (DOM Parsing Exception in translator.[[
    DOM parsing exception in inbound XSD translator while parsing InputStream.
    Please make sure that the xml data is valid.
    ) while preparing to send XMLRecord JmsXMLRecord
    [ERROR] [] [oracle.soa.adapter] [tid: weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@530c530c] [userId: <anonymous>
    ] [ecid: 5552564bd7cf9140:-117a2347:142149c715a:-8000-00000000069dd133,0] [APP: soa-infra] JMSAdapter <project name>
    java.lang.Exception: DOM Parsing Exception in translator.
    DOM parsing exception in inbound XSD translator while parsing InputStream.
    Please make sure that the xml data is valid.
            at oracle.tip.adapter.jms.inbound.JmsConsumer.translateFromNative(JmsConsumer.java:603)
            at oracle.tip.adapter.jms.inbound.JmsConsumer.sendInboundMessage(JmsConsumer.java:403)
            at oracle.tip.adapter.jms.inbound.JmsConsumer.send(JmsConsumer.java:1161)
            at oracle.tip.adapter.jms.inbound.JmsConsumer.run(JmsConsumer.java:1048)
            at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
            at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:184)
            at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
    But when I try putting the archived data on this topic, it throws me the same error but even dequeuing doesnt happen.
    I have extracted the payload and validated against the xsd, it looks fine and even the validator doesnt throw me any error.
    But I guess I am missing something, which I am immediately not getting.
    Please let me know, if I am soemthing here which is causing this erro.
    Thanks,
    Chandru

    I searched about this error, but no luck.
    First time when the message dequeues, the consumer can consume the message but throws the error in the log.
    But when I put the message back into queue from archive directory, the consumer doesnt consume message and throws me the same error.
    Does anyone faced this sort of issue.
    I checked my xsd throughly, and validated it externally. but didnt fine any error.
    if anyone knows, suggest me how to resolve this issue.
    thanks & regards
    Chandru

  • Dequeue issue with MQ adapter but can enqueue

    I was trying to do a POC for MQ adapter. Even though I was able to write messages into a MQ queue, I could not read from MQ queue. I got the message below in the domain.log.
    <2009-06-05 16:57:48,343> <ERROR> <default.collaxa.cube.activation> <MQSeries Adapter::Inbound>
    ORABPEL-13080
    Error.
    "[QueueProcessor] could not get message from Queue :TEST.EPOS.QUEUE"
    Contact oracle support if error is not fixable.
    at oracle.tip.adapter.mq.inbound.QueueProcessor.dequeueMessage(QueueProcessor.java:598)
    at oracle.tip.adapter.mq.inbound.QueueProcessor.run(QueueProcessor.java:172)
    at oracle.tip.adapter.fw.jca.work.WorkerJob.go(WorkerJob.java:51)
    at oracle.tip.adapter.fw.common.ThreadPool.run(ThreadPool.java:272)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2394
    at com.ibm.mq.MQQueue.get(MQQueue.java:1012)
    at oracle.tip.adapter.mq.inbound.QueueProcessor.dequeueMessage(QueueProcessor.java:587)
    ... 4 more
    The steps I have done are
    1.     Created a JNDI entry for MQ Adapter in oc4j_ra.xml (Channel, Queue Manager, Host are all correct)
    2.     Restarted the oc4j_soa only from front end.
    3.     Created a BPEL process to write message to a particular MQ. This was working. I checked the message using a java client.
    4.     Created a BPEL process to receive the message from the same queue (all details were same as earlier one). No instance of the BPEL process instantiated.
    I tried to dequeue the message using a java client and it was working. I was getting MQ reason number 2394. I am not sure about the reason. May be you have faced the same problem. Do you have any idea or suggestion?

    Can you increase the logging? I just wonder if you can get any more information.
    On the surface it looks like you are sending duplicate messges to the adapter? SOA Suite likes the group id / correlation id to be unique every time, otherwise it thinks it has processed that message.
    If you restart SOA Suite does one message get read then stop, if so then this looks to be the issue.
    What you need to do is populate the group id and correclation id with unique values every time.
    To increase the logging, in BPEL Configuration increase the default.collaxa.cube.activation to debug.
    cheers
    James

  • Any changes to DBMS_aq.dequeue in 9.2.0.8 ?

    Hi,
    We had upgraded our oracle from 9.2.0.5 to 9.2.0.8 recently.
    We have been using DBMS_aq.dequeue to get the first message from the queue. When we were in 9.2.0.5 version, we used to get the oldest entry in the queue first (dequeue_options.navigation := dbms_aq.FIRST_MESSAGE). After the install of 9.2.0.8 we either get the latest entry into the queue or the ones just before that but not the oldest entry. This is causing us a big problem as we are suppose to process in the FIFO manner.
    Can you please thow some light on this change in behaviour. Was there any changes to the AQ Queue processing modules in 9.2.0.8 which is causing this ?
    How can we fix this problem and get the oldest entry first (which is having min(WF_DEFFERED_TABLE.ENQUEUE_TIME)) ?
    Edited by: user11799047 on 18-Aug-2009 05:16

    we have not made changes in the values being passed to dbms_aq.dequeue_options_t for months. I have given the data we pass and the ones which are left to default values.
    TYPE DEQUEUE_OPTIONS_T IS RECORD (
    consumer_name VARCHAR2(30) DEFAULT NULL,
    dequeue_mode BINARY_INTEGER := dbms_aq.LOCKED
    navigation BINARY_INTEGER := dbms_aq.FIRST_MESSAGE
    visibility BINARY_INTEGER DEFAULT ON_COMMIT
    wait BINARY_INTEGER := dbms_aq.NO_WAIT
    msgid RAW(16) DEFAULT NULL
    correlation VARCHAR2(128) := 'PAYROLL'
    deq_condition VARCHAR2(4000) DEFAULT NULL,
    transformation VARCHAR2(60) DEFAULT NULL);
    Since we have given the navigation as dbms_aq.FIRST_MESSAGE it should be return the oldest entry in the queue (min(ENQ TIME)). But its not the case now. Do you see any other issues which causes this ?

  • Can not dequeue JMS message of type SYS.AQ$_JMS_TEXT_MESSAGE using DBMS_AQ

    I'm having a problem using DBMS_AQ package to dequeue a JMS message of type SYS.AQ$_JMS_TEXT_MESSAGE that was put on the queue using Java JMS API.
    Both JMS header and payload return empty but if I do "select user_data" from the queue table, I can see the message.
    Appreciate any helps or tips.
    Kim

    This has been asked a lot of times - I'm not sure how my initial searching missed all of the other questions/answers related to this topic.
    In our case, the solution was to:
    1) Leave the queue as a sys.aq$_jms_text_message type
    2) Construct a sys.xmltype object with our desired payload
    3) Do a getStringVal() on the xmltype object and use that string as the payload for our queue message
    - Nathan

Maybe you are looking for

  • Problem with Versions/Auto Save

    Something is awfully wrong with Versions on my system. To note, this happened AFTER the 10.7.1 update, but I can't say whether it happened DIRECTLY after the update. I've already repaired disk permissions using the Recovery Disk. Here's the problem:

  • IMPORT FROM MEMORY ERROR

    When ever i run a driver program of Sap-Scrip i get an abend msg statin IMPORT FROM MEMORY ERROR: Program canceled. what should i do to get over this error...???

  • How to change the database in Crystal reports

    To give an overview there is one project going on where the oracle database is getting migrated from 10g to 11g. All the details of database like IP, port etc are changing as part of this. I can see the driver name configured as crdb_ado (Custom driv

  • VMWare guest OS no internet using DHCP, OK with static

    My 3801HGV gateway is working fine providing DHCP to devices on my network, but I have a Macbook with VMWare Fusion installed and have a Windows 7 Pro running as a guest and when it obtains an address from the gateway it has no internet access. The D

  • IPhone not activated.. can I update it?

    I bought the iPhone 3G recently and was wanting to use the original iPhone in the same manner one would use an iPod Touch. Can I update it without it being actively on AT&T or will something happen like it not working anymore..