Pending message in Queue

          All,
          During a load test, there are lots of pending messages in a queue. How can I speed
          up the message processing? Configure a session pool or increase poll interval?
          Any suggestion is welcome. I am new to this. Thanks.
          Regards,
          Wen
          

Hi Rick
          I recommend starting with the JMS Performance Guide
          white-paper on dev2dev.bea.com. You can find it on
          the main JMS technology page:
          http://dev2dev.bea.com/technologies/jms/index.jsp
          Tom
          Rick Chang wrote:
          > All,
          >
          > During a load test, there are lots of pending messages in a queue. How can I speed
          > up the message processing? Configure a session pool or increase poll interval?
          >
          > Any suggestion is welcome. I am new to this. Thanks.
          >
          > Regards,
          > Wen
          

Similar Messages

  • Pending messages in queue consume cache and result slow processing

    Hi All
              I have one stand alone java application which is consumer of one weblogic JMS queue.
              What my application does, it take big messages in to xml format and convert it in to small chunk of xml using XSLT.
              Here I am struggling with one major problem when I sent 10 messages all together all messages went in to pending queue and as application process only one messages at a time, there for other messages waste the cache and processing become slow.
              If I send same 10 messages one by one after completion of last messages total time to process 10 messages is very less then compare to if I sent all together.
              Is there any web logic setting I can do so only one messages goes in to pending queue.

    Ali,
    How about this:
    142# imsimta qm dir | grep '^ *[0-9]' | wc -l
          14I don't know that it's significantly better, but "qm" generates only a single line of output per message whereas "cache" provides like 10/message.
    Bill

  • How to find the number of pending messages in a Queue

    All,
    Is there a way to find the number of pending messages in a given QUEUE to be picked by the queue reader?
    My reader is not picking all the messages as many sent by my writer, i am not sure where they are getting lost? or if the JMS implementation is buffering them and does not flush until it does not have enough to throw out ( which any way does not make sense!!).
    Please help.
    Chandra

    You're right in thinking that the behaviour you describe looks wrong.
    Take a look at the QueueBrowser interface which can be used to inspect a queue. You get one using QueueSession.createBrowser(Queue). The QueueBrowser allows you to scan a queue without consuming the messages. However note that the state of the queue may change while you're observing it through the QueueBrowser so what you see might not always be a 100% accurate representation of the queue at any given time.
    Other things to check:
    - message selectors - are you setting a message selector on your queue receiver which is resulting in not all of the messages 'matching'.
    - expired messages - are you setting a time-to-live on the messages that you publish.
    Hope this helps,
    David Ingham
    http://www.arjuna.com

  • Re: Find the Pending Messages in an Queue

    How can i read the PENDING Message in an Queue..actually I used MDB ..from MDM i rolled back when an Exception occured.. in Weblogic Console it Shows "1" message is in pending..but i used QueueBrowser.getEmumeration()..it gives empty.. any other way to find PENDING Messages in an Queue

    I use selector by example
    selection ="JMSCorrelationID = 'ID:" + msg.getJMSMessageID().toLowerCase()+"'"
    or another property.
    eceiver = session.createReceiver(inqueue, selection);     
    Message msg = receiver.receive(timeout);

  • Pending Messages in Dispatcher Queues

    We have a jpd that calls a couple of "helper" jpd's while handling a request.
    I noticed for every request to the main jpd the total number of JMS messages in the dispatcher queue goes up by 6, but half (3) are in the pending state.
    The pending messages just grow and grow as the application is used until the server runs out of memory. It appears these pending messages are kept in memory.
    I have read about the conditions that cause messages to stay in pending, but I'm not sure which of these conditions applies in my case. Any ideas why I'm getting pending messages, or how I could find out?
    Thanks.

    I found my problem and thought I would post it in case anyone else has the same problem.
    I created synchronous stateless processes in the beginning. Later on I added clean up methods to the end of my processes, after the response node. I didn't think it would work after the response node but it did so I left. Unbeknownst to me, the processes had been changed to stateful processes by adding this cleanup node AFTER the response. This for some reason would leave messages in the pending state.
    When I moved the cleanup method before the return, it went back to stateless and no pending messages.

  • Receive activity pending when trying to consume message from Queue

    Hi ,
    I'm using a BPEL process to publish and subscribe message into a queue using JMS adapter.The messages in Queue are produced and consumed properly . But the BPEL process is still running, with a receive activity used to consume that queue, in pending state. The schema used throughout the BPEL and JMS adapter are the same.
    Edited by: user13829970 on May 8, 2012 2:07 AM

    Make sure you use the same schema and same queue name while configuring the Producer JMS Adapter and also the Consumer JMS Adapter
    And in the JMS Consumer Composite, define the interface of the BPEL based on the WSDL of the JMS Adapter (service) and then wire the BPEL and the JMS Adapter. Make sure under the receive activity, the create instance checkbox is checked.
    Hope this helps
    N

  • Why are there pending messages that can't be consumed?

    Hi all,
    I am using Glassfish with a self made monitoring/stress-testing application.
    In this app I can define consumers and producers, so I can somehow see the behavior of the system under many different conditions.
    But something odd is happening: there are always 1000~2500 messages that I can see that they are there but I can't consume them. I have checked in my admin console and they are shown in the
    "Number of Messages Pending Acknowledgment - Current number of messages being held in memory and persistent store pending acknowledgment".
    Why they are pending acknowledgment? I sent them in the same way I did all others, and they all worked.
    I found this link, they are all having similar problems, but they are using ActiveMQ. http://fusesource.com/forums/thread.jspa?threadID=1060
    Could anyone help me to find out why this can be happening?
    Edit: Could it be that the acknowledgement of a consumer is not getting back to the queue and the queue is reserving the message to that consumer, so nobody else can consume it?
    Tks,
    Oscar
    Edited by: 808621 on 6/Jan/2011 2:02
    Edited by: 808621 on 6/Jan/2011 2:47

    Hi!
    Thanks you both for the answer. I just figure it out with help of your replies: I was using many threads to consume the messages, but these threads were sharing the same "MessageConsumer" object, what was causing the pending messages. Once I changed to have one MessageConsumer per thread, it worked.
    Thanks you both for the help :)
    Oscar

  • Pending Messages Resulting in Application halt.

    We developed a JPD which subscribes to a JMS Event. While another application sends messages to this application, we saw the messages getting stuck in queue and we also saw that count of pending messages going high and then at one point the application halted.
              Has anyone face similar problem or know something about it. Please reply.

    I found my problem and thought I would post it in case anyone else has the same problem.
    I created synchronous stateless processes in the beginning. Later on I added clean up methods to the end of my processes, after the response node. I didn't think it would work after the response node but it did so I left. Unbeknownst to me, the processes had been changed to stateful processes by adding this cleanup node AFTER the response. This for some reason would leave messages in the pending state.
    When I moved the cleanup method before the return, it went back to stateless and no pending messages.

  • JMS messages stuck as Pending messages

              Hi.
              I am trying to write an application to process huge amounts of data. I try to
              process around 1,000, 000 messages [java objects] using a single queue and 8 MDB.
              The strange thing is that in the end there are always 10 messages stuck in the
              pending message category.
              I can also observe that a weblogic thread is stuck. [can see it in the console]
              The stuck thread current description is something like "Connectio27.Session28".
              I have tried to use the QueueConnectionFactory from a EJB using resource reference
              instead of fetching it directly. Even this has not helped. I guess the problem
              is that while loading the messages onto the queues, one of the threads gets stuck
              somewhere.
              I am sing MDB's for processing. There doesnot seem to be any problems on the MDB
              side.
              If I reboot the server the 10 messages get processed successfully.
              Any ideas will be highly appreciated.
              -Sharma
              

    if you waited for a minute or so between each threaddump, it definitly
              sounds like an issue around the database query not returning or there is too
              much data being returned.
              sree
              "Ghanshyam Sharma" <[email protected]> wrote in message
              news:40e2d9d6$1@mktnews1...
              >
              > Hmm, I didnt wait too much between thread dumps. Probably a minute or two.
              >
              > Let me check the oracle stuff.
              >
              > Thanks a Lot.
              >
              > -Sharma
              >
              > "sree bodapati" <iwillreply@thenewsgroups> wrote:
              > >Threaddumps dont seem to show much except for it looks like both execute
              > >thread 13 and 12 are stuck reading from oracle , you may want to see
              > >what
              > >query is being sent to oracle by instrumenting you MDB code see that
              > >query
              > >properly returns. The threads are runnable but they dont seem to move
              > >, what
              > >was the duration between each thread dump ?
              > >
              > >/
              > >sree
              > >
              > >
              > >"Ghanshyam Sharma" <[email protected]> wrote in message
              > >news:40e2ce39$1@mktnews1...
              > >>
              > >> Hi Tom.
              > >>
              > >> I am attaching a thread dump of the server on windows, when I have
              > >20
              > >messages
              > >> stuck as pending with MDB's having not-supported transaction attribute.
              > >>
              > >> I hope this helps in debugging the problem. Please let me know if
              > >something is
              > >> needed.
              > >>
              > >> Thanks everyone.
              > >> -Sharma
              > >>
              > >>
              > >> Tom Barnes
              >
              ><[email protected].bea.com>
              > >> wrote:
              > >> >As I wrote below, a thread-dump of the WL Server that hosts
              > >> >the stuck MDB might help explain things.
              > >> >
              > >> >Sharma wrote:
              > >> >
              > >> >> Hm, this is confirmed. I pumped in one million messages a few time
              > >> >with and without
              > >> >> file stores to differe the performance, but every time I get a clean
              > >> >slate :)
              > >> >>
              > >> >> Looks like having required transaction attribute somehow removes
              > >this
              > >> >problem.
              > >> >>
              > >> >>
              > >> >> But still I do not understand why messages were getting stuck with
              > >> >not-supported
              > >> >> attribute. Tom is it possible to understand this. The
              > >phenomenon/Reason
              > >> >behind
              > >> >> this may show up somewhere else :)
              > >> >>
              > >> >> -Sharma
              > >> >>
              > >> >> Tom Barnes
              >
              ><[email protected].bea.com>
              > >> >> wrote:
              > >> >>
              > >> >>>The default is no transactions. I also find it curious
              > >> >>>that this helps. I wonder if tx timeouts are helping here...
              > >> >>>
              > >> >>>Sharma wrote:
              > >> >>>
              > >> >>>
              > >> >>>>Surprisingly I could process all one million messages if I
              configure
              > >> >>>
              > >> >>>the MDB's
              > >> >>>
              > >> >>>>as folowing.
              > >> >>>>
              > >> >>>>Default-transaction=required
              > >> >>>>Transaction-typr=container
              > >> >>>>
              > >> >>>>When I was getting the problem, I had nothing for these settings.
              > >> >I
              > >> >>>
              > >> >>>do not know
              > >> >>>
              > >> >>>>what is the default, probably Not-supported ???
              > >> >>>>
              > >> >>>>Let me try my testing a few times and than confirm to you guys.
              > >> >>>>
              > >> >>>>Tom Barnes
              >
              ><[email protected].bea.com>
              > >> >>>>wrote:
              > >> >>>>
              > >> >>>>
              > >> >>>>>Since you narrowed the problem down to the MDB side, can
              > >> >>>>>post a thread dump of the server when it is stuck? That
              > >> >>>>>might help diagnose the problem.
              > >> >>>>>
              > >> >>>>>Ghanshyam Sharma wrote:
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>>Infact The thread which is stuck is not the loader/message
              producer
              > >> >>>>>
              > >> >>>>>thread. It
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>>is a thread handling message driven beans. My producers end up
              > >populating
              > >> >>>>>
              > >> >>>>>the
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>>JMS correctly.
              > >> >>>>>>
              > >> >>>>>>This is 81sp02.
              > >> >>>>>>-Sharma
              > >> >>>>>>
              > >> >>>>>>"Ghanshyam Sharma" <[email protected]> wrote:
              > >> >>>>>>
              > >> >>>>>>
              > >> >>>>>>
              > >> >>>>>>>Hi.
              > >> >>>>>>>
              > >> >>>>>>>I am trying to write an application to process huge amounts
              > >of
              > >> >data.
              > >> >>>>>>>I try to
              > >> >>>>>>>process around 1,000, 000 messages [java objects] using a single
              > >> >>>
              > >> >>>queue
              > >> >>>
              > >> >>>>>>>and 8 MDB.
              > >> >>>>>>>The strange thing is that in the end there are always 10
              messages
              > >> >>>
              > >> >>>stuck
              > >> >>>
              > >> >>>>>>>in the
              > >> >>>>>>>pending message category.
              > >> >>>>>>>
              > >> >>>>>>>I can also observe that a weblogic thread is stuck. [can see
              > >it
              > >> >in
              > >> >>>>>
              > >> >>>>>the
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>>>console]
              > >> >>>>>>>The stuck thread current description is something like
              > >"Connectio27.Session28".
              > >> >>>>>>>
              > >> >>>>>>>I have tried to use the QueueConnectionFactory from a EJB using
              > >> >resource
              > >> >>>>>>>reference
              > >> >>>>>>>instead of fetching it directly. Even this has not helped. I
              > >guess
              > >> >>>>>
              > >> >>>>>the
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>>>problem
              > >> >>>>>>>is that while loading the messages onto the queues, one of the
              > >> >threads
              > >> >>>>>>>gets stuck
              > >> >>>>>>>somewhere.
              > >> >>>>>>>
              > >> >>>>>>>I am sing MDB's for processing. There doesnot seem to be any
              > >problems
              > >> >>>>>>>on the MDB
              > >> >>>>>>>side.
              > >> >>>>>>>
              > >> >>>>>>>If I reboot the server the 10 messages get processed
              successfully.
              > >> >>>>>>>
              > >> >>>>>>>Any ideas will be highly appreciated.
              > >> >>>>>>>-Sharma
              > >> >>>>>>
              > >> >>>>>>
              > >> >>
              > >> >
              > >>
              > >
              > >
              >
              

  • Pending Messages waiting for Client Acknowledgement

              Hi,
              I have tried to search the Internet for an answer to this question but failed.
              Any clue???
              I have setup a queue on BEA WLS 7.4. I have four consumers which connect concurrently
              to dequeue messages. Each of the consumers serve as a proxy to other clients
              waiting for the messages.
              The proxy application (consumer) is developed such that it will send the client_acknowledge
              to the Q manager after it finishes processing the received message and sends it
              successfully to the external client.
              I noticed that in some exceptional cases which I cannot reproduce, the proxy application
              would fail to send the message to client and therefore wouldn't send the client_acknowldege.
              Although I tried to catch all possible exceptions, i cannot catch this single
              exception that causes my proxy to continue processing the messages in a proper
              way. The problem is that I end up with some Pending Messages on the queue which
              cannot be available to other consumers and would stay that way till the consumer
              that was attempting to dequeue it is killed.
              Isn't there any way to configure an expiry period for this client_acknowledge
              wait state??? In other words, is it possible to configure a time after which
              the JMS provider would no longer be waiting for the client_acknowledge and sends
              the pending message back to the Q in a state that makes it available to other
              consumers.
              

    Sorry. Once a message has been received in "CLIENT_ACKNOWLEDGE" mode, it
              remains pending and unavailable to other consumers until either the consumer
              is closed, acknowledge is called, or the client disconnects.
              Have you tried using a transacted session? In that case, the transaction
              will time out eventually, which will roll back the transaction and make the
              message visible again. You can control the length of this timeout using the
              "TransactionTimeout" parameter on the JMS connection factory.
              greg
              "Muhannad" <[email protected]> wrote in message
              news:[email protected]...
              >
              > Hi,
              > I have tried to search the Internet for an answer to this question but
              failed.
              > Any clue???
              >
              > I have setup a queue on BEA WLS 7.4. I have four consumers which connect
              concurrently
              > to dequeue messages. Each of the consumers serve as a proxy to other
              clients
              > waiting for the messages.
              >
              > The proxy application (consumer) is developed such that it will send the
              client_acknowledge
              > to the Q manager after it finishes processing the received message and
              sends it
              > successfully to the external client.
              >
              > I noticed that in some exceptional cases which I cannot reproduce, the
              proxy application
              > would fail to send the message to client and therefore wouldn't send the
              client_acknowldege.
              > Although I tried to catch all possible exceptions, i cannot catch this
              single
              > exception that causes my proxy to continue processing the messages in a
              proper
              > way. The problem is that I end up with some Pending Messages on the queue
              which
              > cannot be available to other consumers and would stay that way till the
              consumer
              > that was attempting to dequeue it is killed.
              >
              > Isn't there any way to configure an expiry period for this
              client_acknowledge
              > wait state??? In other words, is it possible to configure a time after
              which
              > the JMS provider would no longer be waiting for the client_acknowledge and
              sends
              > the pending message back to the Q in a state that makes it available to
              other
              > consumers.
              

  • Messages moving to Pending message state

              Hi
              Using: Weblogic 7.0 with SP2
              1. We have an Application server communicating with a JMS Hub that has a two server
              cluster. This server has an MDB configured dually - one MDB definition listening
              to each of the two physical queues of a virtual queue.
              2. A client writes a message to the virtual queue (causing it to be picked up
              by one of the physical queues). The client exits. I verify that the message actually
              lands up in one of the physical queues using console.
              3. I start the App server, and immediately the message moves to 'Messages Pending'
              column.
              4. The onMessage() of my MDB does not get called at all - I have a log in the
              first line of onMessage() that I do not see.
              5. Any further attempt by the client to put messages into the queue causes it
              to move over to the pending message state as long as the app server is up.
              Any ideas? Thanks bunch in advance.
              Here are the relevant ejb-jar and weblogic-ejb-jar.xml snippets:
              ejb-jar.xml:
                   <message-driven>
                        <ejb-name>AcqPoolClosingResponseMDB</ejb-name>
                        <ejb-class>com.fanniemae.core.sec.packetization.acq.ejb.AcqPoolClosingResponseMDB</ejb-class>
                        <transaction-type>Container</transaction-type>
                        <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
                        <message-driven-destination>
                             <destination-type>javax.jms.Queue</destination-type>
                        </message-driven-destination>
                   </message-driven>
                   <container-transaction>
                   <method>
                   <ejb-name>AcqValidationResponseMDB.OOPSResponseQueue</ejb-name>
                   <method-name>*</method-name>
                   </method>
                   <trans-attribute>NotSupported</trans-attribute>
                   </container-transaction>
              weblogic-ejbjar.xml:
                   <weblogic-enterprise-bean>
                        <ejb-name>AcqPoolClosingResponseMDB.LoanSetupQueue</ejb-name>
                        <message-driven-descriptor>
                             <pool>
                             <max-beans-in-free-pool>10</max-beans-in-free-pool>
                             <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
                             </pool>
                        <destination-jndi-name>LoanSetupQueue@SecJmsHub-jms04-1</destination-jndi-name>
                        <initial-context-factory>weblogic.jndi.WLInitialContextFactory</initial-context-factory>
                        <provider-url>t3://dcore-ap04:7159</provider-url>
                        </message-driven-descriptor>
                        <jndi-name>ejb/AcqPoolClosingResponseMDB</jndi-name>
                   </weblogic-enterprise-bean>
              

    Hi Srikant,
              I'm somewhat familiar with "core". The "ejb-class" gives
              you away. :-) I'm not sure what the problem is, but here
              are some things you can try:
              Item number one. The conflicting
              descriptor combo of "container" managed transaction and
              "not-supported" may be the issue. For container
              managed transactions in an MDB, I think the assembly-descriptor
              for the onMessage method should be set to "Required" in
              addition to setting the transaction type to "Container":
              <container-transaction>
              <method>
              <ejb-name>......</ejb-name>
              <method-name>onMessage()</method-name>
              </method>
              <trans-attribute>Required</trans-attribute>
              </container-transaction>
              If you don't want container managed transactions, do not
              specify a "transaction-type" of "Container".
              Item number two. The ejb-name field in container-transaction
              does not match the the ejb-name field in message-driven.
              Furthermore, with container managed transactions
              the acknowledge-mode is ignored so it need not be set.
              Item number three. It is possible that your MDB app
              is throwing a runtime exception before it hits your
              onMessage trace statement. This would cause the MDB container
              to roll-back the tx. The message will then remain
              in a pending state if it is immediately redelivered
              or if there is a redelivery delay configured.
              Hope this helps,
              Tom, BEA
              Srikanth Meenakshi wrote:
              > Hi
              >
              > Using: Weblogic 7.0 with SP2
              >
              > 1. We have an Application server communicating with a JMS Hub that has a two server
              > cluster. This server has an MDB configured dually - one MDB definition listening
              > to each of the two physical queues of a virtual queue.
              >
              > 2. A client writes a message to the virtual queue (causing it to be picked up
              > by one of the physical queues). The client exits. I verify that the message actually
              > lands up in one of the physical queues using console.
              >
              > 3. I start the App server, and immediately the message moves to 'Messages Pending'
              > column.
              >
              > 4. The onMessage() of my MDB does not get called at all - I have a log in the
              > first line of onMessage() that I do not see.
              >
              > 5. Any further attempt by the client to put messages into the queue causes it
              > to move over to the pending message state as long as the app server is up.
              >
              > Any ideas? Thanks bunch in advance.
              >
              > Here are the relevant ejb-jar and weblogic-ejb-jar.xml snippets:
              >
              > ejb-jar.xml:
              >      <message-driven>
              >           <ejb-name>AcqPoolClosingResponseMDB</ejb-name>
              >           <ejb-class>com.fanniemae.core.sec.packetization.acq.ejb.AcqPoolClosingResponseMDB</ejb-class>
              >           <transaction-type>Container</transaction-type>
              >           <acknowledge-mode>Auto-acknowledge</acknowledge-mode>
              >           <message-driven-destination>
              >                <destination-type>javax.jms.Queue</destination-type>
              >           </message-driven-destination>
              >      </message-driven>
              >
              >
              >      <container-transaction>
              >      <method>
              >      <ejb-name>AcqValidationResponseMDB.OOPSResponseQueue</ejb-name>
              >      <method-name>*</method-name>
              >      </method>
              >      <trans-attribute>NotSupported</trans-attribute>
              >      </container-transaction>
              >
              > weblogic-ejbjar.xml:
              >
              >      <weblogic-enterprise-bean>
              >           <ejb-name>AcqPoolClosingResponseMDB.LoanSetupQueue</ejb-name>
              >           <message-driven-descriptor>
              >                <pool>
              >                <max-beans-in-free-pool>10</max-beans-in-free-pool>
              >                <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
              >                </pool>
              >           <destination-jndi-name>LoanSetupQueue@SecJmsHub-jms04-1</destination-jndi-name>
              >
              >           <initial-context-factory>weblogic.jndi.WLInitialContextFactory</initial-context-factory>
              >           <provider-url>t3://dcore-ap04:7159</provider-url>
              >           </message-driven-descriptor>
              >           <jndi-name>ejb/AcqPoolClosingResponseMDB</jndi-name>
              >      </weblogic-enterprise-bean>
              >
              >      
              

  • QueueBrowser enumeration and Pending Messages

              I've flooded a Queue with messages. When I use a QueueBrowser to look at the contents
              of the queue, the number of items I get back from QueueBrowser.getEnumeration()
              is nowhere near the number of Pending Messages shown in the WebLogic admin console.
              For instance, the WL admin console shows 33 PendingMessages, but the number of
              messages in the QueueBrowser enumeration is 7. This is a non-distributed queue
              and I'm running WL non-clustered. I do have an MDB listening to the queue, but
              I only have 5 instances of the MDB available in the pool, which is not enough
              to immeditely process all of the messages I've sent to the queue.
              Is using a QueueBrowser the proper way to determine how many messages are pending
              in a queue, or is there another method of determining this (short of accessing
              the admin console MBeans)?
              Thanks
              

    Hi Jeff,
              The QueueBrowser browses only those messages that are
              available for dequeue. Messages are not available if they are
              awaiting action by a particular consumer, producer, or
              delivery timer. In addition, JMS server's push
              messages up to 10 at a time to asynchronous
              consumers, so 5 MDBs may have a backlog
              of 50 messages that are unavailable to QueueBrowsers
              (or other consumers.) The maximum backlog is configurable
              via the connection factory "MessagesMaximum" setting.
              Tom
              Jeff wrote:
              > I've flooded a Queue with messages. When I use a QueueBrowser to look at the contents
              > of the queue, the number of items I get back from QueueBrowser.getEnumeration()
              > is nowhere near the number of Pending Messages shown in the WebLogic admin console.
              > For instance, the WL admin console shows 33 PendingMessages, but the number of
              > messages in the QueueBrowser enumeration is 7. This is a non-distributed queue
              > and I'm running WL non-clustered. I do have an MDB listening to the queue, but
              > I only have 5 instances of the MDB available in the pool, which is not enough
              > to immeditely process all of the messages I've sent to the queue.
              >
              > Is using a QueueBrowser the proper way to determine how many messages are pending
              > in a queue, or is there another method of determining this (short of accessing
              > the admin console MBeans)?
              >
              > Thanks
              >
              >
              

  • Re: Pending messages

    Those messages are not "lost" since they got delivered later (server
              restart).
              Since MDB is using async consumer so that there could have messages in the
              delivery pipeline and
              those messages are considered "pending" too. You can reduce the pipeline
              down to 1 so if the MDB doesn't
              consumer message fast enough some other consumer still can get those
              messages.
              "Igor Sidorin" <[email protected]> wrote in message
              news:[email protected]..
              > We are having a problem with some messages being stuck in the queue.
              > They show as "pending" in the console and, in fact, get delivered to
              > the listeners (MDBs) on server restart. The code of MDBs is beyond our
              > control (the messages are actually sent to Weblogic Business Process
              > Manager, part of WLI). The transaction attribute of the listeners is
              > "Not Supported". Any ideas what's going on? It could be related to
              > spikes in volume, but would not one expect the messages just sit in
              > the queue and be picked up when the volume of incoming messages drops?
              > Our biggest concern is finding a way to process these "lost" messages
              > without having to restart the server. Any thoughts? Thanks!
              >
              > Igor
              

    We are having the same problem, which messages stuck in the Pending mode even after restarting. Is there any way to retrieve those pending messages?
              Thanks,
              Jun Xiao
              Sogeti-USA
              

  • Issue while posting message to queue

    Hi ,
    I am getting following exception while posting message into queue.For every new build I am getting this exception and after 2 or 3 times of restart of corresponding OBPM related weblogic server,Issue is getting resolved
    A component failed while executing activity '/COM/OU/UserlProcess#Default-3.0/ComponentExecution[PreProcessor]' (BP-method preProcessor) over instance '/COM/OU/UserlProcess#Default-3.0/15141/0'.
    Details:
    The task could not be successfully executed.
    Reason: 'fuego.connector.ConnectorException: Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Detail:Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Caused by: Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Detail:Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Caused by: Connector [MAIN_Q:null:JMS] returned the wrong class [com.tibco.tibjms.naming.TibjmsConnectionFactoryAttributes] for a resource of type [2].
    Detail:Connector [MAIN_Q:null:JMS] returned the wrong class [com.tibco.tibjms.naming.TibjmsConnectionFactoryAttributes] for a resource of type [2].
    fuego.lang.ComponentExecutionException: The task could not be successfully executed.
    Reason: 'fuego.connector.ConnectorException: Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Detail:Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1091)
         at fuego.server.execution.EngineExecutionContext.runCil(EngineExecutionContext.java:1277)
         at fuego.server.execution.microactivity.ComponentExecutionMicroActivity.runCil(ComponentExecutionMicroActivity.java:126)
         at fuego.server.execution.microactivity.ComponentExecutionMicroActivity.execute(ComponentExecutionMicroActivity.java:84)
         at fuego.server.execution.microactivity.MicroActivityEngineExecutionHandler.executeActivity(MicroActivityEngineExecutionHandler.java:57)
         at fuego.server.execution.ImmediateActivity.execute(ImmediateActivity.java:42)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startNestedTransaction(TransactionAction.java:527)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:548)
    at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.DefaultEngineExecution.executeAutomaticWork(DefaultEngineExecution.java:62)
         at fuego.server.execution.EngineExecution.executeAutomaticWork(EngineExecution.java:42)
         at fuego.server.execution.ToDoItem.executeAutomaticWork(ToDoItem.java:251)
         at fuego.ejbengine.ItemExecutionBean$1.execute(ItemExecutionBean.java:217)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.ejbengine.ItemExecutionBean.processMessage(ItemExecutionBean.java:203)
         at fuego.ejbengine.ItemExecutionBean.onMessage(ItemExecutionBean.java:115)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:327)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4123)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4013)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4541)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    Caused by: fuego.connector.ConnectorException: Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    Detail:Connector [MAIN_Q:null:JMS] caused an exception when getting a resource of type [7].
    at fuego.connector.ConnectorException.exceptionOnGetResource(ConnectorException.java:95)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:324)
         at fuego.connector.ConnectorTransaction.getResource(ConnectorTransaction.java:298)
         at fuego.connector.JMSHelper.getSession(JMSHelper.java:75)
         at fuegoblock.msg.DynamicJMS.sendMessage(DynamicJMS.java:145)
         at xobject.Utility.JMSService.writeToAppQueue(JMSService.xcdl:11)
         at xobject.Utility.Notification.sendAuditNotification(Notification.xcdl:19)
         at XXX.ManualProcess.Default_3_0.Instance.CIL_preProcessor(Instance.xcdl:20)
         at XXX.ManualProcess.Default_3_0.Instance.CIL_preProcessor(Instance.xcdl)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at fuego.server.execution.EngineExecutionContext.invokeMethodAsCil(EngineExecutionContext.java:1082)
         ... 31 more
    Please help how can I resolve this issue
    Thanks
    Sailendra

    I am also getting the same issue. Sailendra, did you resolve the issue?
    If not could anyone help us to resolve this issue.
    I am using Tibco JMS for queue and I have set 'ConnectionFactory' as Connection Factory Lookup Name value in the external resourse.
    Thanks in advance.
    Regards,
    Ramanan

  • NOT PRINTING FROM WINDOWS 7 TO MY PHOTOSMART c7180 ALL-IN-ONE (I CAN SEE MESSAGES IN QUEUE)?

    CANNOT PRINTING FROM WINDOWS 7 TO MY PHOTOSMART c7180 ALL-IN-ONE (I CAN SEE MESSAGES IN QUEUE)?

    Hi,
    I think you need to remove the queue. Please try:
        hold down the Windows key and press R.
        from the Run window, type services.msc and hit enter.
        if the machine asks for Admin you have to accept this,
        look down to the print spooler service, right click it and select properties
        click on the Stop button,
        browse to C:\Windows\System32\Spool\printers
        delete the job inside this folder
        reboot the machine
    Regards.
    BH
    **Click the KUDOS thumb up on the left to say 'Thanks'**
    Make it easier for other people to find solutions by marking a Reply 'Accept as Solution' if it solves your problem.

Maybe you are looking for

  • The light on my charger doesn't work

    So the light on my charger cord no longer lights up at all. it'll momentarily stay on when i plug it in then i goes out - i know it is charging but idk what is causing the light to dim. is it a comp issue or a charger issue. should i take them in to

  • PO 7.4: NW BPM: HTTP Error response for SOAP request or invalid content-type.HTTP 200 OK

    Hi Experts I am trying to call NW BPM scenario(File to BPM) from PI, and using below adapter config. I am getting below error. Failed to call the endpoint: Error in call over HTTP: HTTP 200 OK SOAP: Call failed: java.io.IOException: HTTP Error respon

  • URL to Specific Page in PDF

    I have to create a web page that has links to various pages within a single PDF. Links to PDFs open the document at page 1 by default. I have read that if you create a hyperlink like this, you can link to a specific page: http://www.somewebsite.com/s

  • Retrieving user and group information from LDAP using j_securrity_check

    Hi I am using j_security_check to authenticate users against LDAP. I have made all necessary configuration for the server to perform LDAP group search as well as mentioned in the WAS documentation of LDAP settings. Now, how can I retrieve the user an

  • Is there a Mail alternative with Outlook functionality?

    Can anyone suggest a good alternative to Mail (which is just pathetic in my opinion)?  I am looking for a program that has, all on the same screen, just like Outlook, my mail, calendar and appointments/reminders.