Raymond created CAMEL-20866:
-------------------------------

             Summary: SEDA with exchangepattern InOnly gives sometimes multiple 
responses
                 Key: CAMEL-20866
                 URL: https://issues.apache.org/jira/browse/CAMEL-20866
             Project: Camel
          Issue Type: Bug
          Components: camel-seda
    Affects Versions: 4.6.0
            Reporter: Raymond
         Attachments: main-xml.zip

I have Camel 4.6 running on Java 21

When I use the following curl:

```
curl -X POST --header "Content-Type: text/plain" --data 'x' 
http://localhost:9001/test
```

To test the following route:



```xml
<routes id="camel" xmlns="http://camel.apache.org/schema/spring";>
    <route id="1">
        <from uri="jetty:http://0.0.0.0:9001/test"/>
        <to uri="seda:2?exchangePattern=InOut"/>
    </route>
    <route id="2">
        <from uri="seda:2"/>
        <setBody>
            <constant>Y</constant>
        </setBody>
    </route>
</routes>
```

This works as expected and the result is Y.

Now I changed the exchangepattern from 'InOut' to 'InOnly':


```xml
<routes id="camel" xmlns="http://camel.apache.org/schema/spring";>
    <route id="1">
        <from uri="jetty:http://0.0.0.0:9001/test"/>
        <to uri="seda:2?exchangePattern=InOnly"/>
    </route>
    <route id="2">
        <from uri="seda:2"/>
        <setBody>
            <constant>Y</constant>
        </setBody>
    </route>
</routes>
```

When I call this flow with curl multiple times, I sometimes get the result:

X

And the other time:

XX

So the result is returned twice or even more times. I would expect only to get 
the output X (which for example works this way when I use ActiveMQ)

By adding more SEDA endpoints this behavior can be easier reproduced:

```xml
{color:#e8bf6a}<routes {color}{color:#bababa}id{color}{color:#6a8759}="camel" 
{color}{color:#bababa}xmlns{color}{color:#6a8759}="http://camel.apache.org/schema/spring"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <route 
{color}{color:#bababa}id{color}{color:#6a8759}="1"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <from 
{color}{color:#bababa}uri{color}{color:#6a8759}="jetty:http://0.0.0.0:9001/test"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} <to 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:2?exchangePattern=InOnly"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} </route>
{color}{color:#e8bf6a} <route 
{color}{color:#bababa}id{color}{color:#6a8759}="2"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <from 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:2"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} <to 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:3"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} </route>
{color}{color:#e8bf6a} <route 
{color}{color:#bababa}id{color}{color:#6a8759}="3"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <from 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:3"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} <to 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:4"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} </route>
{color}{color:#e8bf6a} <route 
{color}{color:#bababa}id{color}{color:#6a8759}="4"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <from 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:4"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} <to 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:5"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} </route>
{color}{color:#e8bf6a} <route 
{color}{color:#bababa}id{color}{color:#6a8759}="5"{color}{color:#e8bf6a}>
{color}{color:#e8bf6a} <from 
{color}{color:#bababa}uri{color}{color:#6a8759}="seda:5"{color}{color:#e8bf6a}/>
{color}{color:#e8bf6a} <setBody>
{color}{color:#e8bf6a} <constant>{color}Y{color:#e8bf6a}</constant>
{color}{color:#e8bf6a} </setBody>
{color}{color:#e8bf6a} </route>
{color}{color:#e8bf6a}
{color}{color:#e8bf6a}</routes>{color}
```



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

Reply via email to