ActiveMQ
  1. ActiveMQ
  2. AMQ-4259

ClassCastException on Durable topic

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: 5.7.0
    • Fix Version/s: 5.8.0
    • Component/s: Broker
    • Labels:
      None
    • Environment:

      Windows XP, Oracle Java 1.7.0_11

      Description

      ERROR | TopicStorePrefetch(dawid,MakeItLast) ID:LE111851-3194-1358355851041-1:1:1:1 - org.apache.activemq.broker.region.cursors.TopicStorePrefetch@53ed8f:jms/To
      pic,batchResetNeeded=false,storeHasMessages=true,size=118,cacheEnabled=false,maxBatchSize:118 - Failed to fill batch
      java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String
      at java.lang.String.compareTo(String.java:108)
      at java.util.Arrays.binarySearch0(Arrays.java:1481)
      at java.util.Arrays.binarySearch(Arrays.java:1423)
      at org.apache.kahadb.index.BTreeNode.contains(BTreeNode.java:699)
      at org.apache.kahadb.index.BTreeIndex.containsKey(BTreeIndex.java:179)
      at org.apache.activemq.store.kahadb.MessageDatabase$MessageOrderIndex.setBatch(MessageDatabase.java:2534)
      at org.apache.activemq.store.kahadb.MessageDatabase$MessageOrderIndex.setBatch(MessageDatabase.java:2550)
      at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBTopicMessageStore$5.execute(KahaDBStore.java:858)
      at org.apache.kahadb.page.Transaction.execute(Transaction.java:769)
      at org.apache.activemq.store.kahadb.KahaDBStore$KahaDBTopicMessageStore.recoverNextMessages(KahaDBStore.java:847)
      at org.apache.activemq.store.ProxyTopicMessageStore.recoverNextMessages(ProxyTopicMessageStore.java:115)
      at org.apache.activemq.broker.region.cursors.TopicStorePrefetch.doFillBatch(TopicStorePrefetch.java:109)
      at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.fillBatch(AbstractStoreCursor.java:274)
      at org.apache.activemq.broker.region.cursors.AbstractStoreCursor.reset(AbstractStoreCursor.java:110)
      at org.apache.activemq.broker.region.cursors.StoreDurableSubscriberCursor.reset(StoreDurableSubscriberCursor.java:287)
      at org.apache.activemq.broker.region.PrefetchSubscription.dispatchPending(PrefetchSubscription.java:619)
      at org.apache.activemq.broker.region.DurableTopicSubscription.dispatchPending(DurableTopicSubscription.java:248)
      at org.apache.activemq.broker.region.DurableTopicSubscription.activate(DurableTopicSubscription.java:167)
      at org.apache.activemq.broker.region.TopicRegion.addConsumer(TopicRegion.java:158)
      at org.apache.activemq.broker.region.RegionBroker.addConsumer(RegionBroker.java:421)
      at org.apache.activemq.broker.jmx.ManagedRegionBroker.addConsumer(ManagedRegionBroker.java:257)
      at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
      at org.apache.activemq.advisory.AdvisoryBroker.addConsumer(AdvisoryBroker.java:92)
      at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
      at org.apache.activemq.broker.BrokerFilter.addConsumer(BrokerFilter.java:89)
      at org.apache.activemq.broker.MutableBrokerFilter.addConsumer(MutableBrokerFilter.java:95)
      at org.apache.activemq.broker.TransportConnection.processAddConsumer(TransportConnection.java:562)
      at org.apache.activemq.command.ConsumerInfo.visit(ConsumerInfo.java:332)
      at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:294)
      at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:152)
      at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
      at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
      at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:256)
      at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
      at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:222)
      at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:204)
      at java.lang.Thread.run(Thread.java:722)

        Issue Links

          Activity

          Hide
          Gary Tully added a comment -

          duplicated by https://issues.apache.org/jira/browse/AMQ-4118
          a 5.8 snapshot can be used to validate.

          Show
          Gary Tully added a comment - duplicated by https://issues.apache.org/jira/browse/AMQ-4118 a 5.8 snapshot can be used to validate.
          Hide
          Dawid Nowak added a comment -

          Hi Gary,
          Any idea where I can download 5.8.0 snapshot. It seems I need an access to bamboo ?
          Best regards

          Dawid

          Show
          Dawid Nowak added a comment - Hi Gary, Any idea where I can download 5.8.0 snapshot. It seems I need an access to bamboo ? Best regards Dawid
          Show
          Timothy Bish added a comment - Here: https://repository.apache.org/content/groups/snapshots/org/apache/activemq/apache-activemq/5.8-SNAPSHOT/

            People

            • Assignee:
              Unassigned
              Reporter:
              Dawid Nowak
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development