[ 
https://issues.apache.org/jira/browse/CAMEL-19734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rich T updated CAMEL-19734:
---------------------------
    Description: 
I have a SEDA endpoint with multiple consumers enabled and three consumers 
configured and default error handler is in place.

If one of the consumer queues becomes full then with the default error handler 
the message history is output but the first item is always one of the other 
consumers with a really large elapsed time (the system hasn't even been running 
this long) and then this is followed by the consumer route that actually threw 
the exception:

 

 
{code:java}
Message History (source location is disabled)
---------------------------------------------------------------------------------------------------------------------------------------
Source                                   ID                             
Processor                                          Elapsed (ms)
                                         ClientInbound-ReadSimulatorSta 
from[seda://ClientInboundQueue?concurrentConsumers   1201857883
                                         ClientInbound-EventProcessor/p 
Processor@0x713c4d95                                          0
                                         ClientInbound-EventProcessor/c 
choice[when[{body instanceof xxx                              0
                                         ClientInbound-EventProcessor/t 
seda://AttributeEventQueue?waitForTaskToComplete=I            0
Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
java.lang.IllegalStateException: Queue full
{code}
So from the above `ClientInbound-ReadSimulatorState` is one of the multiple 
consumers that doesn't throw an exception.
`ClientInbound-EventProcessor` is the route that has a full queue which results 
in the queue full exception.

I would expect to only see the `ClientInbound-EventProcessor` in the message 
history here; the first route in the history log seems to alternate between the 
two consumers that didn't generate the exception on successive error logs but 
they always have this strange elapsed time, here's a log showing the third 
consumer listed first:

 

 
{code:java}
Message History (source location is disabled)
---------------------------------------------------------------------------------------------------------------------------------------
Source                                   ID                             
Processor                                          Elapsed (ms)
                                         ClientInbound-Query/ClientInbo 
from[seda://ClientInboundQueue?concurrentConsumers   1201857882
                                         ClientInbound-EventProcessor/p 
Processor@0x713c4d95                                          0
                                         ClientInbound-EventProcessor/c 
choice[when[{body instanceof xxx                              0
                                         ClientInbound-EventProcessor/t 
seda://AttributeEventQueue?waitForTaskToComplete=I            0
Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
java.lang.IllegalStateException: Queue full
{code}
 

 

  was:
I have a SEDA endpoint with multiple consumers enabled and three consumers 
configured and default error handler is in place.

If one of the consumer queues becomes full then with the default error handler 
the message history is output but the first item is always one of the other 
consumers with a really large elapsed time (the system hasn't even been running 
this long) and then this is followed by the consumer route that actually threw 
the exception:

 

 
{code:java}
Message History (source location is disabled)
---------------------------------------------------------------------------------------------------------------------------------------
Source                                   ID                             
Processor                                          Elapsed (ms)
                                         ClientInbound-ReadSimulatorSta 
from[seda://ClientInboundQueue?concurrentConsumers   1201857883
                                         ClientInbound-EventProcessor/p 
Processor@0x713c4d95                                          0
                                         ClientInbound-EventProcessor/c 
choice[when[{body instanceof xxx            0
                                         ClientInbound-EventProcessor/t 
seda://AttributeEventQueue?waitForTaskToComplete=I            0
Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
java.lang.IllegalStateException: Queue full
{code}

So from the above `ClientInbound-ReadSimulatorState` is one of the multiple 
consumers that doesn't throw an exception.
`ClientInbound-EventProcessor` is the route that has a full queue which results 
in the queue full exception.

I would expect to only see the `ClientInbound-EventProcessor` in the message 
history here; the first route in the history log seems to alternate between the 
two consumers that didn't generate the exception on successive error logs but 
they always have this strange elapsed time, here's a log showing the third 
consumer listed first:

 

 
{code:java}
Message History (source location is disabled)
---------------------------------------------------------------------------------------------------------------------------------------
Source                                   ID                             
Processor                                          Elapsed (ms)
                                         ClientInbound-Query/ClientInbo 
from[seda://ClientInboundQueue?concurrentConsumers   1201857882
                                         ClientInbound-EventProcessor/p 
Processor@0x713c4d95                                          0
                                         ClientInbound-EventProcessor/c 
choice[when[{body instanceof org.openremote.model.            0
                                         ClientInbound-EventProcessor/t 
seda://AttributeEventQueue?waitForTaskToComplete=I            0
Stacktrace
---------------------------------------------------------------------------------------------------------------------------------------
java.lang.IllegalStateException: Queue full
{code}
 

 


> SEDA endpoint with multiple consumers produces strange message history from 
> error handler
> -----------------------------------------------------------------------------------------
>
>                 Key: CAMEL-19734
>                 URL: https://issues.apache.org/jira/browse/CAMEL-19734
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 3.20.6
>            Reporter: Rich T
>            Priority: Minor
>
> I have a SEDA endpoint with multiple consumers enabled and three consumers 
> configured and default error handler is in place.
> If one of the consumer queues becomes full then with the default error 
> handler the message history is output but the first item is always one of the 
> other consumers with a really large elapsed time (the system hasn't even been 
> running this long) and then this is followed by the consumer route that 
> actually threw the exception:
>  
>  
> {code:java}
> Message History (source location is disabled)
> ---------------------------------------------------------------------------------------------------------------------------------------
> Source                                   ID                             
> Processor                                          Elapsed (ms)
>                                          ClientInbound-ReadSimulatorSta 
> from[seda://ClientInboundQueue?concurrentConsumers   1201857883
>                                          ClientInbound-EventProcessor/p 
> Processor@0x713c4d95                                          0
>                                          ClientInbound-EventProcessor/c 
> choice[when[{body instanceof xxx                              0
>                                          ClientInbound-EventProcessor/t 
> seda://AttributeEventQueue?waitForTaskToComplete=I            0
> Stacktrace
> ---------------------------------------------------------------------------------------------------------------------------------------
> java.lang.IllegalStateException: Queue full
> {code}
> So from the above `ClientInbound-ReadSimulatorState` is one of the multiple 
> consumers that doesn't throw an exception.
> `ClientInbound-EventProcessor` is the route that has a full queue which 
> results in the queue full exception.
> I would expect to only see the `ClientInbound-EventProcessor` in the message 
> history here; the first route in the history log seems to alternate between 
> the two consumers that didn't generate the exception on successive error logs 
> but they always have this strange elapsed time, here's a log showing the 
> third consumer listed first:
>  
>  
> {code:java}
> Message History (source location is disabled)
> ---------------------------------------------------------------------------------------------------------------------------------------
> Source                                   ID                             
> Processor                                          Elapsed (ms)
>                                          ClientInbound-Query/ClientInbo 
> from[seda://ClientInboundQueue?concurrentConsumers   1201857882
>                                          ClientInbound-EventProcessor/p 
> Processor@0x713c4d95                                          0
>                                          ClientInbound-EventProcessor/c 
> choice[when[{body instanceof xxx                              0
>                                          ClientInbound-EventProcessor/t 
> seda://AttributeEventQueue?waitForTaskToComplete=I            0
> Stacktrace
> ---------------------------------------------------------------------------------------------------------------------------------------
> java.lang.IllegalStateException: Queue full
> {code}
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to