Return-Path: X-Original-To: apmail-activemq-dev-archive@www.apache.org Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4923F72D9 for ; Wed, 14 Sep 2011 15:50:34 +0000 (UTC) Received: (qmail 57201 invoked by uid 500); 14 Sep 2011 15:50:34 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 57173 invoked by uid 500); 14 Sep 2011 15:50:34 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 57164 invoked by uid 99); 14 Sep 2011 15:50:34 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 14 Sep 2011 15:50:34 +0000 X-ASF-Spam-Status: No, hits=-2000.5 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 14 Sep 2011 15:50:30 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id CD9D698E52 for ; Wed, 14 Sep 2011 15:50:08 +0000 (UTC) Date: Wed, 14 Sep 2011 15:50:08 +0000 (UTC) From: "john richartz (JIRA)" To: dev@activemq.apache.org Message-ID: <1204438307.27042.1316015408826.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <625152419.4867.1315513929458.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (AMQ-3490) NPEs during message processing, using FileCursor MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/AMQ-3490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13104587#comment-13104587 ] john richartz commented on AMQ-3490: ------------------------------------ The version of 5.6 was retrieved from https://repository.apache.org/content/repositories/snapshots/org/apache/activemq/apache-activemq/5.6-SNAPSHOT/ as: apache-activemq-5.6-SNAPSHOT-bin.tar.gz being the version posted as of 7 Sept. > NPEs during message processing, using FileCursor > ------------------------------------------------ > > Key: AMQ-3490 > URL: https://issues.apache.org/jira/browse/AMQ-3490 > Project: ActiveMQ > Issue Type: Bug > Components: Message Store > Affects Versions: 5.6.0 > Environment: Solaris, embedded broker, file cursor enabled > Reporter: john richartz > > In a scenario where a single-consumer queue for non-presistent messages uses a file cursor to manage a backlog, bursts of messages result in NPEs. > Thread dumps for 3 different examples: > 2011-09-07 12:43:27,057 ERROR [cursors.FilePendingMessageCursor] [] : [Usage Async Task] Caught an IO Exception getting the DiskList7_PendingCursor:snTableQueue_CHF > java.lang.NullPointerExceptionnull > at java.io.Writer.write(Writer.java:140)null > at java.io.BufferedWriter.newLine(BufferedWriter.java:225)null > at java.util.Properties.writeComments(Properties.java:671)null > at java.util.Properties.store0(Properties.java:805)null > at java.util.Properties.store(Properties.java:796)null > at org.apache.kahadb.page.PageFile.storeMetaData(PageFile.java:570)null > at org.apache.kahadb.page.PageFile.load(PageFile.java:361)null > at org.apache.activemq.store.kahadb.plist.PListStore.intialize(PListStore.java:285)null > at org.apache.activemq.store.kahadb.plist.PListStore.getPList(PListStore.java:218)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.getDiskList(FilePendingMessageCursor.java:457)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.flushToDisk(FilePendingMessageCursor.java:435)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.onUsageChanged(FilePendingMessageCursor.java:388)null > at org.apache.activemq.usage.Usage$1.run(Usage.java:268)null > at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)null > at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)null > at java.lang.Thread.run(Thread.java: 619)null > Exception in thread "Usage Async Task" java.lang.RuntimeException: java.lang.NullPointerException > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.getDiskList(FilePendingMessageCursor.java:460) > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.flushToDisk(FilePendingMessageCursor.java:435) > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.onUsageChanged(FilePendingMessageCursor.java:388) > at org.apache.activemq.usage.Usage$1.run(Usage.java:268) > 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) > Caused by: java.lang.NullPointerException > at java.io.Writer.write(Writer.java:140) > at java.io.BufferedWriter.newLine(BufferedWriter.java:225) > at java.util.Properties.writeComments(Properties.java:671) > ================================================================ > 2011-09-07 12:43:40,908 ERROR [cursors.FilePendingMessageCursor] [1315421994681] : [ActiveMQ Transport: tcp:///134.242.171.26:35469] > Caught an IO Exception getting the DiskList 7_PendingCursor:snTableQueue_CHF > java.lang.NullPointerExceptionnull > at org.apache.activemq.store.kahadb.plist.PListStore$1.execute(PListStore.java:229)null > at org.apache.kahadb.page.Transaction.execute(Transaction.java:760)null > at org.apache.activemq.store.kahadb.plist.PListStore.getPLis > t(PListStore.java:225)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.getDiskList(FilePendingMessageCursor.java:457)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.tryAddMessageLast(FilePendingMessageCursor.java:226)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.addMessageLast(FilePendingMessageCursor.java:196)null > at org.apache.activemq.broker.region.Queue.sendMessage(Queue.java:1603)null > at org.apache.activemq.broker.region.Queue.doMessageSend(Queue.java:715)null > at org.apache.activemq.broker.region.Queue.send(Queue.java:647)null > at org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:409)null > at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:543)null > at org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:301)null > at o > rg.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)null > at org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:306)null > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.security.AuthorizationBroker.send(AuthorizationBroker.java:192)null > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)null > at org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:468)null > at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:68 > 1)null > at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:316)null > at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)null > at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)null > at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)null > at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:216)null > at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)null > at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)null > at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)null > at java.lang.Thread.run(Thread.java:619)null > ======================================================================================= > 2011-09-07 12:43:41,028 ERROR [cursors.FilePendingMessageCursor] [1315421994681] : [ActiveMQ Transport: tcp:///134.242.171.26:35469] > Caught an Exception adding a message: ActiveMQObjectMessage {commandId = 82, responseRequired = false, messageId = ID:lgvn-330 > 53-1315415867932-0:19:1:1:78, originalDestination = null, originalTransactionId = null, producerId = ID:lgvn-33053-131541586793 > 2-0:19:1:1, destination = queue://snTableQueue_CHF, transactionId = null, expiration = 0, timestamp = 1315424620840, > arrival = 0, brokerInTime = 1315424620881, brokerOutTime = 0, correlationId = null, replyTo = null, persistent = false, type = null > , priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@d42d49, marshalledProperties = org.apache.activemq.util.ByteSequence@1e91c40, dataStructure = null, redeliveryCounter = 0, size = 0, properties = {TO=0, FROM=37, HOST=134.242.171.26, trigger_name=com.foo.receiver.beans.ACTData, version=3.4}, readOnlyProperties = false, readOnlyBody = false, droppable = false} first to FilePendingMessageCursor > java.lang.RuntimeException: java.lang.NullPointerExceptionnull > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.getDiskList(FilePendingMessageCursor.java:460)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.tryAddMessageLast(FilePendingMessageCursor.java:226)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.addMessageLast(FilePendingMessageCursor.java:196)null > at org.apache.activemq.broker.region.Queue.sendMessage(Queue.java:1603)null > at org.apache.activemq.broker.region.Queue.doMessageSend(Queue.java:715)null > at org.apache.activemq.broker.region.Queue.send(Queue.java:647)null > at org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:409)null > at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:543)null > at org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBrok > er.java:301)null > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)null > at org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:306)null > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.security.AuthorizationBroker.send(AuthorizationBroker.java:192)null > at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:129)null > at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)null > at org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:468)null > at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:681)null > at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:316)null > at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)null > at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)null > at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)null > at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:216)null > at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)null > at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)null > at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)null > at java.lang.Thread.run(Thread.java:619)nullCaused by: java.lang.NullPointerExceptionnull > at org.apache.activemq.store.kahadb.plist.PListStore$1.execute(PListStore.java:229)null > at org.apache.kahadb.page.Transaction.execute(Transaction.java:760)null > at org.apache.activemq.store.kahadb.plist.PListStore.getPList(PListStore.java:225)null > at org.apache.activemq.broker.region.cursors.FilePendingMessageCursor.getDiskList(FilePendingMessageCursor.java:457)null > ... 26 morenull -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira