Camel
  1. Camel
  2. CAMEL-4650

NPE when using SEDA route and attaching an extra consumer

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.8.2
    • Fix Version/s: 2.8.3, 2.9.0
    • Component/s: camel-core
    • Labels:
      None
    • Environment:

      Java 6, Camel 2.8.2, Centos 4.

    • Estimated Complexity:
      Unknown

      Description

      I'm trying to construct a system for moving some seda queues over to
      ActiveMQ during system shutdown. What I did was create a Route that
      connects to some of my seda queues and then drains the queue to activemq.

      Basicly I got two routes, the drainer:

      from("seda:" + sedaId + "?size=1000")
      .routeId(routeName +
      sedaIs).noAutoStartup().to(activeMQFailuresQueue);

      And the main route:

      from("seda:" + sedaId + "?size=1000")
      .routeId(routeName + sedaIs).to(SomeProcessor);

      Now, sometimes the main route stalls for various reasons I need to
      restart the jvm process it is running in, so I start the first route.
      But when trying this in production, I got:

      java.lang.NullPointerException
      at
      org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:78)
      at
      org.apache.camel.component.seda.SedaConsumer.sendToConsumers(SedaConsumer.java:210)
      at
      org.apache.camel.component.seda.SedaConsumer.doRun(SedaConsumer.java:155)
      at
      org.apache.camel.component.seda.SedaConsumer.run(SedaConsumer.java:129)
      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)

      Bvahdat added a comment:
      just a very tiny pointer:

      Looking at the source it seems that the
      SedaEndpoint.getConsumerMulticastProcessor() method returns 'null' causing
      the NPE, as the condition:

      multicastStarted == false || consumerMulticastProcessor == null

      is true.

        Issue Links

          Activity

            People

            • Assignee:
              Claus Ibsen
              Reporter:
              Tarjei Huse
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development