Return-Path: X-Original-To: apmail-activemq-users-archive@www.apache.org Delivered-To: apmail-activemq-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0EA45EE1E for ; Tue, 12 Mar 2013 17:30:02 +0000 (UTC) Received: (qmail 59669 invoked by uid 500); 12 Mar 2013 17:24:32 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 48603 invoked by uid 500); 12 Mar 2013 17:24:02 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 41555 invoked by uid 99); 12 Mar 2013 15:42:51 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 Mar 2013 15:42:51 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,NORMAL_HTTP_TO_IP,RCVD_IN_DNSWL_LOW,SPF_PASS,WEIRD_PORT X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of juanin@gmail.com designates 209.85.223.173 as permitted sender) Received: from [209.85.223.173] (HELO mail-ie0-f173.google.com) (209.85.223.173) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 12 Mar 2013 15:42:47 +0000 Received: by mail-ie0-f173.google.com with SMTP id 9so6597708iec.4 for ; Tue, 12 Mar 2013 08:42:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=1IqfUmtcuTUHqAnHNWRxACBvDJXlPtdrC5Kn6RVAKe4=; b=lehWb9DLo5uYFvhFwMPVp3MGnlOqGfIL61fupsILt0SSrI1j9ro5zwAPdZNvNEOUbZ oaQa0rD3CVMDUEAG9V9MCYSNMe2lWCdyTnMX9gz+BGrdI6QGTvOaDWV1MUOhPWrhr1wI ewxIaIKnf73mxdY6O1eM1fL24w7dHOck1vRLdeSMoNt6Ntoo47udT5nLkeyXEB1VUk/k ceabZKeMxbxWtCqFYItcQOgSE//5jtjYNB9O1ZT+gzq3tHp3nYPrklTKdfO8oV+vSQVE eCmcGefdScJ3Nt7+Vz0fHs5kSwmaxQ4SWbOPjzETfMC6UPzZbiXiOmVkTEFftvpoOrPo J8LQ== MIME-Version: 1.0 X-Received: by 10.42.42.69 with SMTP id s5mr12890258ice.2.1363102946103; Tue, 12 Mar 2013 08:42:26 -0700 (PDT) Received: by 10.50.114.199 with HTTP; Tue, 12 Mar 2013 08:42:26 -0700 (PDT) In-Reply-To: References: Date: Tue, 12 Mar 2013 12:42:26 -0300 Message-ID: Subject: Fwd: mKahaDB: "PageFile is not loaded" exception From: Juan Nin To: users@activemq.apache.org Content-Type: multipart/alternative; boundary=bcaec50fe5f5e5193b04d7bc220d X-Virus-Checked: Checked by ClamAV on apache.org --bcaec50fe5f5e5193b04d7bc220d Content-Type: text/plain; charset=ISO-8859-1 Hi, any insights into this anyone? Thanks in advance. ---------- Forwarded message ---------- From: Juan Nin Date: Fri, Mar 8, 2013 at 11:08 AM Subject: mKahaDB: "PageFile is not loaded" exception To: users@activemq.apache.org Hi! I'm testing mKahaDB under ActiveMQ 5.8.0, so as to have separate journals for queues with different behaviours. In the config I'm setting up 3 journals: - one for "queue1.>" queues - another one for "queue2.>" queues - and a default one for the other queues Startup goes fine and each journal directory is created: $ ls -l /usr/local/apache-activemq-5.8.0/data/kahadb/ total 0 drwxr-xr-x 6 root staff 204 Mar 8 10:27 0 drwxr-xr-x 6 root staff 204 Mar 8 10:27 queue#3a#2f#2fqueue1.#3e drwxr-xr-x 6 root staff 204 Mar 8 10:27 queue#3a#2f#2fqueue2.#3e drwxr-xr-x 3 root staff 102 Mar 8 10:27 txStore Log: 2013-03-08 10:27:11,171 | INFO | Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@205ddb6e: startup date [Fri Mar 08 10:27:11 UYST 2013]; root of context hierarchy | org.apache.activemq.xbean.XBeanBrokerFactory$1 | WrapperSimpleAppMain 2013-03-08 10:27:11,955 | INFO | PListStore:[/usr/local/apache-activemq-5.8.0/bin/macosx/../../data/localhost/tmp_storage] started | org.apache.activemq.store.kahadb.plist.PListStoreImpl | WrapperSimpleAppMain 2013-03-08 10:27:12,042 | INFO | Using Persistence Adapter: MultiKahaDBPersistenceAdapter[/usr/local/apache-activemq-5.8.0/bin/macosx/../../data/kahadb][KahaDBPersistenceAdapter[/usr/local/apache-activemq-5.8.0/bin/macosx/../../data/kahadb/queue#3a#2f#2fqueue1.#3e], KahaDBPersistenceAdapter[/usr/local/apache-activemq-5.8.0/bin/macosx/../../data/kahadb/queue#3a#2f#2fqueue2.#3e], KahaDBPersistenceAdapter[/usr/local/apache-activemq-5.8.0/bin/macosx/../../data/kahadb/0]] | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain 2013-03-08 10:27:12,045 | INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:2011/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector 2013-03-08 10:27:12,532 | INFO | Apache ActiveMQ 5.8.0 (localhost, ID:myhostname.local-65211-1362745632411-0:1) is starting | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain 2013-03-08 10:27:12,533 | INFO | pending local transactions: [] | org.apache.activemq.store.kahadb.MultiKahaDBTransactionStore | WrapperSimpleAppMain 2013-03-08 10:27:12,548 | INFO | Listening for connections at: tcp://myhostname.local:61616 | org.apache.activemq.transport.TransportServerThreadSupport | WrapperSimpleAppMain 2013-03-08 10:27:12,548 | INFO | Connector openwire Started | org.apache.activemq.broker.TransportConnector | WrapperSimpleAppMain 2013-03-08 10:27:12,551 | INFO | Listening for connections at: stomp://myhostname.local:61613 | org.apache.activemq.transport.TransportServerThreadSupport | WrapperSimpleAppMain 2013-03-08 10:27:12,551 | INFO | Connector stomp Started | org.apache.activemq.broker.TransportConnector | WrapperSimpleAppMain 2013-03-08 10:27:12,552 | INFO | Apache ActiveMQ 5.8.0 (localhost, ID:myhostname.local-65211-1362745632411-0:1) started | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain 2013-03-08 10:27:12,552 | INFO | For help or more information please see: http://activemq.apache.org | org.apache.activemq.broker.BrokerService | WrapperSimpleAppMain 2013-03-08 10:27:12,910 | INFO | Web console type: embedded | org.apache.activemq.web.WebConsoleStarter | WrapperSimpleAppMain 2013-03-08 10:27:13,014 | INFO | ActiveMQ WebConsole initialized. | org.apache.activemq.web.WebConsoleStarter | WrapperSimpleAppMain 2013-03-08 10:27:13,060 | INFO | Initializing Spring FrameworkServlet 'dispatcher' | /admin | WrapperSimpleAppMain 2013-03-08 10:27:13,216 | INFO | jolokia-agent: No access restrictor found at classpath:/jolokia-access.xml, access to all MBeans is allowed | /api | WrapperSimpleAppMain I'm using a simple PHP script, using Stomp of course, to produce messages. Submitting messages to each "type" of queue works fine, and I see each different journal being modified. I submitted messages to "queue1.test", "queue2.test" and "queue3.test". Now, if after that I delete let's say "queue2.test" via the ActiveMQ web console, the journal directory "queue#3a#2f#2fqueue2.#3e" is also deleted, and I see the following on the log: 2013-03-08 10:28:53,389 | INFO | Stopping async queue tasks | org.apache.activemq.store.kahadb.KahaDBStore | qtp230367322-54 2013-03-08 10:28:53,389 | INFO | Stopping async topic tasks | org.apache.activemq.store.kahadb.KahaDBStore | qtp230367322-54 2013-03-08 10:28:53,390 | INFO | Stopped KahaDB | org.apache.activemq.store.kahadb.KahaDBStore | qtp230367322-54 If then I try to submit messages to "queue2.test" it fails, directory is never created back, and I see the following on the log: 2013-03-08 10:29:17,903 | WARN | Async error occurred: java.lang.IllegalStateException: PageFile is not loaded | org.apache.activemq.broker.TransportConnection.Service | ActiveMQ Transport: tcp:///0:0:0:0:0:0:0:1%0:65222@61613 java.lang.IllegalStateException: PageFile is not loaded at org.apache.activemq.store.kahadb.disk.page.PageFile.assertLoaded(PageFile.java:809) at org.apache.activemq.store.kahadb.disk.page.PageFile.tx(PageFile.java:303) at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.getMessageCount(KahaDBStore.java:478) at org.apache.activemq.store.ProxyMessageStore.getMessageCount(ProxyMessageStore.java:101) at org.apache.activemq.store.ProxyMessageStore.getMessageCount(ProxyMessageStore.java:101) at org.apache.activemq.broker.region.Queue.initialize(Queue.java:376) at org.apache.activemq.broker.region.DestinationFactoryImpl.createDestination(DestinationFactoryImpl.java:87) at org.apache.activemq.broker.region.AbstractRegion.createDestination(AbstractRegion.java:526) at org.apache.activemq.broker.jmx.ManagedQueueRegion.createDestination(ManagedQueueRegion.java:56) at org.apache.activemq.broker.region.AbstractRegion.addDestination(AbstractRegion.java:136) at org.apache.activemq.broker.region.RegionBroker.addDestination(RegionBroker.java:277) at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) at org.apache.activemq.broker.BrokerFilter.addDestination(BrokerFilter.java:145) at org.apache.activemq.broker.MutableBrokerFilter.addDestination(MutableBrokerFilter.java:151) at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:387) at org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:282) at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96) at org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:317) at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135) at org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:499) at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:749) at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:329) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:184) at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:45) at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:288) at org.apache.activemq.transport.stomp.StompTransportFilter.sendToActiveMQ(StompTransportFilter.java:84) at org.apache.activemq.transport.stomp.ProtocolConverter.sendToActiveMQ(ProtocolConverter.java:195) at org.apache.activemq.transport.stomp.ProtocolConverter.onStompSend(ProtocolConverter.java:321) at org.apache.activemq.transport.stomp.ProtocolConverter.onStompCommand(ProtocolConverter.java:233) at org.apache.activemq.transport.stomp.StompTransportFilter.onCommand(StompTransportFilter.java:73) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196) at java.lang.Thread.run(Thread.java:680) 2013-03-08 10:29:17,905 | WARN | Exception occurred processing: null: java.lang.IllegalStateException: PageFile is not loaded | org.apache.activemq.transport.stomp.ProtocolConverter | ActiveMQ Connection Dispatcher: tcp://0:0:0:0:0:0:0:1%0:65222 Is this a bug, or am I missing anything? I've tested it under OSX 10.8.2 (Mountain Lion) and also under CentOS 5.8 with the exact same behaviour. This is my activemq.xml: file:${activemq.base}/conf/credentials.properties Thanks in advance. Juan --bcaec50fe5f5e5193b04d7bc220d--