[jboss-jira] [JBoss JIRA] Commented: (JBMESSAGING-1693) Unable to consume more than 777, 000 messages

Abdel Dridi (JIRA) jira-events at lists.jboss.org
Thu Aug 6 15:26:29 EDT 2009


    [ https://jira.jboss.org/jira/browse/JBMESSAGING-1693?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12479352#action_12479352 ] 

Abdel Dridi commented on JBMESSAGING-1693:
------------------------------------------

Hello Andy,
I took a build from the trunk today and I still see the problem happening.
In my case I need to ack (CLIENT_ACK) for each consumed message.

I am using a Linux-64bits for testing.
Any comments are highly appreciated.

Thanks.



-------------------------------------------------------------------------------------------------------------
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger warn
WARNING: Connection failure has been detected: Did not receive ping from server for org.jboss.messaging.integration.transports.netty.NettyConnection at 10f102d3[local= /192.168.1.35:46762, remote=c1/192.168.1.35:5445] [code=3]
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger warn
WARNING: Connection failure has been detected: Did not receive ping from server for org.jboss.messaging.integration.transports.netty.NettyConnection at d24111a[local= /192.168.1.35:46764, remote=c1/192.168.1.35:5445] [code=3]
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger warn
WARNING: Connection failure has been detected: Did not receive ping from server for org.jboss.messaging.integration.transports.netty.NettyConnection at 58e41bc3[local= /192.168.1.35:46763, remote=c1/192.168.1.35:5445] [code=3]
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger warn
WARNING: Connection failure has been detected: Did not receive ping from server for org.jboss.messaging.integration.transports.netty.NettyConnection at 178aab40[local= /192.168.1.35:46761, remote=c1/192.168.1.35:5445] [code=3]
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger error
SEVERE: Failed to handle failover
MessagingException[errorCode=0 message=null]
	at org.jboss.messaging.core.remoting.impl.wireformat.MessagingExceptionMessage.decodeBody(MessagingExceptionMessage.java:88)
	at org.jboss.messaging.core.remoting.impl.wireformat.PacketImpl.decode(PacketImpl.java:213)
	at org.jboss.messaging.core.remoting.impl.PacketDecoder.decode(PacketDecoder.java:444)
	at org.jboss.messaging.core.remoting.impl.RemotingConnectionImpl.bufferReceived(RemotingConnectionImpl.java:332)
	at org.jboss.messaging.core.client.impl.ConnectionManagerImpl$DelegatingBufferHandler.bufferReceived(ConnectionManagerImpl.java:1180)
	at org.jboss.messaging.integration.transports.netty.MessagingChannelHandler.messageReceived(MessagingChannelHandler.java:75)
	at org.jboss.netty.channel.SimpleChannelHandler.handleUpstream(SimpleChannelHandler.java:105)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:567)
	at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:803)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:385)
	at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:324)
	at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:306)
	at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:223)
	at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:87)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:567)
	at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:562)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:342)
	at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:329)
	at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:330)
	at org.jboss.netty.channel.socket.nio.NioWorker.processSelectedKeys(NioWorker.java:282)
	at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:203)
	at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:113)
	at org.jboss.netty.util.internal.IoWorkerRunnable.run(IoWorkerRunnable.java:53)
	at org.jboss.messaging.integration.transports.netty.VirtualExecutorService$ChildExecutorRunnable.run(VirtualExecutorService.java:184)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)
Aug 6, 2009 12:17:02 PM org.jboss.messaging.core.logging.Logger error
SEVERE: Failed to handle failover

> Unable to consume more than  777,000 messages
> ---------------------------------------------
>
>                 Key: JBMESSAGING-1693
>                 URL: https://jira.jboss.org/jira/browse/JBMESSAGING-1693
>             Project: JBoss Messaging
>          Issue Type: Bug
>    Affects Versions: 2.0.0.beta4
>         Environment: Windows Vista, 32 bit, 2GB RAM
>            Reporter: Bijith Kumar
>            Assignee: Andy Taylor
>             Fix For: 2.0.0
>
>         Attachments: JMSBase.java, JMSConsumer.java, JMSSender.java, src.rar, TestCunsumer.java, TestSender.java
>
>
> Using messaging-2.0.0.BETA3 stand alone non-clustered
> -------------------------------------------------------------------------------
> I am trying to consume 1 Million messages from a Queue using 10 concurrent consumers (Threads) . Consumption hangs after consuming 777,000 messages.  i.e. even though I am able to see the messages from JConsole, Consumers does not read any. Below given are the memory settings for the Queue
>  <global-page-size>10485760</global-page-size>
> <paging-max-global-size-bytes>104857600</paging-max-global-size-bytes> 
> Also, I have added the following JVM parameters in run.bat script to enable JMX. Rest of the configuration files are untouched (i.e. they are with default settings)
> -Dcom.sun.management.jmxremote.port=3000 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false
> Please find the attached java files. Test instructions are given below
> 1) Execute "TestSender.java" and let it complete. This will send 1 million messages to Queue "myQQ".
> 2) Observe the Queue "myQQ" from JConsole. It can be seen that there are 23745 messages in Queue (means rest are paged).
> 3) Execute "TestCunsumer.java". This will spawn 10 consumer threads to read from "myQQ"
> 4) Observe from JConsole that the messages are getting consumed. i.e. values of MessageCount and MessageAdded attributes keeps on changing
> 5) Observe that after a while, consumption hangs (i.e.values of MessageCount and MessageAdded attributes does not change). I calculated the number of messages consumed by subtracting MessageCount  from messagesAdded. Following are the values I got for last three runs
> Messages Consumed = messagesAdded -  MessageCount  
>  a) 800246 - 23246 = 777000
>  b) 799037 - 22037 = 777000
>  c)  799037 - 22037 = 777000
> It seems the number of messages consumed (777000 in above case) is driven by message size (and Queue size).  Because, when I tried another message, the consumption hanged after 780,000 messages.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list