Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-2165

[mKahaDB] java.lang.IllegalStateException: PageFile is not loaded

    XMLWordPrintable

Details

    Description

      Running a broker with mKahaDB configuration that uses perDestination=true.
      A durable topic subscriber connects and starts consuming messages.
      Now someone accidentally deletes the topic that the subscriber is connected to via JMX.

      Subscriber remains connected and consumes further messages from brokers memory.

      However after max 30 seconds broker starts to raise

      11:41:02,902 | WARN  | r[amq] Scheduler | Topic                            | 218 - org.apache.activemq.activemq-osgi - 5.11.0.redhat-630310 | Failed to browse Topic: BA.2
      java.lang.IllegalStateException: PageFile is not loaded
      	at org.apache.activemq.store.kahadb.disk.page.PageFile.assertLoaded(PageFile.java:819)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.store.kahadb.disk.page.PageFile.tx(PageFile.java:304)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBMessageStore.recover(KahaDBStore.java:567)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.store.ProxyTopicMessageStore.recover(ProxyTopicMessageStore.java:62)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.store.ProxyTopicMessageStore.recover(ProxyTopicMessageStore.java:62)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.broker.region.Topic.doBrowse(Topic.java:599)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.broker.region.Topic.access$100(Topic.java:66)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.broker.region.Topic$6.run(Topic.java:739)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at org.apache.activemq.thread.SchedulerTimerTask.run(SchedulerTimerTask.java:33)[218:org.apache.activemq.activemq-osgi:5.11.0.redhat-630310]
      	at java.util.TimerThread.mainLoop(Timer.java:555)[:1.8.0_144]
      	at java.util.TimerThread.run(Timer.java:505)[:1.8.0_144]
      

      This error is raised continuously every 30 seconds even if subscriber has stopped (but not unregistered its durable subscription).

      Attachments

        Issue Links

          Activity

            People

              gtully@redhat.com Gary Tully
              rhn-support-tmielke Torsten Mielke
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: