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

          Dawid Nowak created issue -
          Gary Tully made changes -
          Field Original Value New Value
          Link This issue duplicates AMQ-4118 [ AMQ-4118 ]
          Gary Tully made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Fix Version/s 5.8.0 [ 12323282 ]
          Resolution Duplicate [ 3 ]
          Dawid Nowak made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Karen Morrissey made changes -
          Link This issue relates to AMQ-4573 [ AMQ-4573 ]

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Development