camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Raible <m...@raibledesigns.com>
Subject Re: weaveById - works with 2.13.1, not with 2.14-SNAPSHOT
Date Mon, 21 Jul 2014 17:35:44 GMT
Actually, scratch what I said below - I was testing it on the wrong branch in my project. Making
the change in ProcessDefinitionHelper does NOT cause my test to pass. I created a JIRA and
attached a sample project that shows this issue.

https://issues.apache.org/jira/browse/CAMEL-7622

Thanks,

Matt

On Jul 21, 2014, at 9:54 AM, Matt Raible <matt@raibledesigns.com> wrote:

> If I remove the continue line on 253 in ProcessDefinitionHelper and install locally (with
-DskipTests), my test passes. There is a test failure in camel-core after making this change.
> 
>  AdviceWithPolicyTest>TestSupport.runBare:58->testAdviceWithPolicy:49->ContextTestSupport.assertMockEndpointsSatisfied:343
mock://result Received message count. Expected: <1> but was: <2>
> 
> I'll work on creating a sample project that demonstrates this issue.
> 
> On Jul 16, 2014, at 2:50 AM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
> 
>> Hi
>> 
>> Also you could try on your end, by removing that continue code at
>> ProcessorDefinitionHelpe line 253
>> https://github.com/apache/camel/commit/b08edf391bddb99078f15966394ac264440ffce9#diff-4cb94818eb1df1901b1c8278bd278ba7R253
>> 
>> And do a local build and test with your use-case
>> 
>> 
>> 
>> On Wed, Jul 16, 2014 at 9:16 AM, Claus Ibsen <claus.ibsen@gmail.com> wrote:
>>> Yes and as I said, you are welcome to provide an unit test / sample
>>> project / github project or whatever that reproduces the issue.
>>> That helps us fix the issue.
>>> 
>>> 
>>> 
>>> On Wed, Jul 16, 2014 at 9:11 AM, Matt Raible <matt@raibledesigns.com> wrote:
>>>> I believe you.
>>>> 
>>>> However, it seems it also creates an issue when using the Java DSL. At least
from a testing perspective.
>>>> 
>>>>> On Jul 16, 2014, at 1:04, Claus Ibsen <claus.ibsen@gmail.com> wrote:
>>>>> 
>>>>> Hi
>>>>> 
>>>>> Yeah but the tests in camel-spring would likely fail. That commit
>>>>> fixes some issues when using xml dsl to define routes (spring or
>>>>> blueprint)
>>>>> 
>>>>>> On Tue, Jul 15, 2014 at 8:19 PM, Matt Raible <matt@raibledesigns.com>
wrote:
>>>>>> FWIW, all tests pass in camel-core with this change reverted.
>>>>>> 
>>>>>> [INFO]
>>>>>> ------------------------------------------------------------------------
>>>>>> [INFO] BUILD SUCCESS
>>>>>> [INFO]
>>>>>> ------------------------------------------------------------------------
>>>>>> [INFO] Total time: 20:57 min
>>>>>> [INFO] Finished at: 2014-07-15T12:18:03-07:00
>>>>>> [INFO] Final Memory: 25M/376M
>>>>>> 
>>>>>> 
>>>>>> On Tue, Jul 15, 2014 at 11:01 AM, Matt Raible <matt@raibledesigns.com>
>>>>>> wrote:
>>>>>> 
>>>>>>> If I revert the following change to AdviceWithTasks.java, it
seems to
>>>>>>> solve this issue:
>>>>>>> 
>>>>>>> 
>>>>>>> https://github.com/apache/camel/commit/b08edf391bddb99078f15966394ac264440ffce9
>>>>>>> 
>>>>>>> I cloned master, reverted this change, then installed everything
to test.
>>>>>>> 
>>>>>>>> On Jul 15, 2014, at 7:59 AM, Claus Ibsen <claus.ibsen@gmail.com>
wrote:
>>>>>>>> 
>>>>>>>> On Tue, Jul 15, 2014 at 3:56 PM, Matt Raible <matt@raibledesigns.com>
>>>>>>> wrote:
>>>>>>>>> It tried it with 2.13.2 and it works just fine.
>>>>>>>> 
>>>>>>>> Thanks.
>>>>>>>> 
>>>>>>>> If its possible for you then you are welcome to .zip an unit
test /
>>>>>>>> sample project that has this issue and create a JIRA ticket
and attach
>>>>>>>> it, or some github repo or something else.
>>>>>>>> 
>>>>>>>> I tired to reproduce from your mail this morning but the
route worked
>>>>>>> for me.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> On Tue, Jul 15, 2014 at 12:12 AM, Claus Ibsen <claus.ibsen@gmail.com>
>>>>>>> wrote:
>>>>>>>>> 
>>>>>>>>>> Hi
>>>>>>>>>> 
>>>>>>>>>> Can you try with 2.13.2 also?
>>>>>>>>>> 
>>>>>>>>>> There was a fix in this to fix an issue when using
Content Based
>>>>>>>>>> Router and weaveById. I bet it may has cause a regression
for your
>>>>>>>>>> use-case.
>>>>>>>>>> 
>>>>>>>>>> On Mon, Jul 14, 2014 at 11:31 PM, Matt Raible <matt@raibledesigns.com>
>>>>>>>>>> wrote:
>>>>>>>>>>> Hey all,
>>>>>>>>>>> 
>>>>>>>>>>> I have the following route defined with the Java
DSL:
>>>>>>>>>>> 
>>>>>>>>>>> from("direct:localMemberLookup").routeId("localMemberLookup")
>>>>>>>>>>>     .process(new
>>>>>>>>>> MemberLookupToSqlParametersProcessor()).id("sqlParams")
>>>>>>>>>> .recipientList(simple("sql:{{sql.memberLookup}}")).delimiter("false")
>>>>>>>>>>>     .to("log:output")
>>>>>>>>>>>     .process(new MemberLookupProcessor())
>>>>>>>>>>>     // do more processing
>>>>>>>>>>>     .to("log:output");
>>>>>>>>>>> 
>>>>>>>>>>> I'm testing it with a test that looks as follows:
>>>>>>>>>>> 
>>>>>>>>>>> @EndpointInject(uri = "mock:lookupHeaders")
>>>>>>>>>>> MockEndpoint lookupHeaders;
>>>>>>>>>>> 
>>>>>>>>>>> @EndpointInject(uri = "mock:searchResult")
>>>>>>>>>>> MockEndpoint searchResult;
>>>>>>>>>>> 
>>>>>>>>>>> @EndpointInject(uri = "mock:lookupResult")
>>>>>>>>>>> MockEndpoint lookupResult;
>>>>>>>>>>> 
>>>>>>>>>>> @Autowired
>>>>>>>>>>> CamelContext camelContext;
>>>>>>>>>>> 
>>>>>>>>>>> @Before
>>>>>>>>>>> public void before() throws Exception {
>>>>>>>>>>>     ModelCamelContext context = (ModelCamelContext)
camelContext;
>>>>>>>>>>>     context.setTracing(true);
>>>>>>>>>>>     RouteDefinition searchRoute =
>>>>>>>>>> context.getRouteDefinition("memberSearchRequest");
>>>>>>>>>>>     searchRoute.to(searchResult);
>>>>>>>>>>> 
>>>>>>>>>>>     RouteDefinition lookupRoute =
>>>>>>>>>> context.getRouteDefinition("localMemberLookup");
>>>>>>>>>>>     lookupRoute.adviceWith(context, new AdviceWithRouteBuilder()
{
>>>>>>>>>>>             @Override
>>>>>>>>>>>             public void configure() throws Exception
{
>>>>>>> weaveById("sqlParams").after().to(lookupHeaders);
>>>>>>>>>>>             }
>>>>>>>>>>>     });
>>>>>>>>>>>     lookupRoute.to(lookupResult);
>>>>>>>>>>>     context.start();
>>>>>>>>>>> }
>>>>>>>>>>> 
>>>>>>>>>>> With Camel 2.13.1, this works fine. However,
with 2.14-SNAPSHOT, I get
>>>>>>>>>> the following error:
>>>>>>>>>>> 
>>>>>>>>>>> java.lang.IllegalArgumentException: There are
no outputs which
>>>>>>> matches:
>>>>>>>>>> sqlParams in the route
>>>>>>>>>>> 
>>>>>>>>>>> Any ideas?
>>>>>>>>>>> 
>>>>>>>>>>> Thanks,
>>>>>>>>>>> 
>>>>>>>>>>> Matt
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> --
>>>>>>>>>> Claus Ibsen
>>>>>>>>>> -----------------
>>>>>>>>>> Red Hat, Inc.
>>>>>>>>>> Email: cibsen@redhat.com
>>>>>>>>>> Twitter: davsclaus
>>>>>>>>>> Blog: http://davsclaus.com
>>>>>>>>>> Author of Camel in Action: http://www.manning.com/ibsen
>>>>>>>>>> hawtio: http://hawt.io/
>>>>>>>>>> fabric8: http://fabric8.io/
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> --
>>>>>>>> Claus Ibsen
>>>>>>>> -----------------
>>>>>>>> Red Hat, Inc.
>>>>>>>> Email: cibsen@redhat.com
>>>>>>>> Twitter: davsclaus
>>>>>>>> Blog: http://davsclaus.com
>>>>>>>> Author of Camel in Action: http://www.manning.com/ibsen
>>>>>>>> hawtio: http://hawt.io/
>>>>>>>> fabric8: http://fabric8.io/
>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> Claus Ibsen
>>>>> -----------------
>>>>> Red Hat, Inc.
>>>>> Email: cibsen@redhat.com
>>>>> Twitter: davsclaus
>>>>> Blog: http://davsclaus.com
>>>>> Author of Camel in Action: http://www.manning.com/ibsen
>>>>> hawtio: http://hawt.io/
>>>>> fabric8: http://fabric8.io/
>>> 
>>> 
>>> 
>>> --
>>> Claus Ibsen
>>> -----------------
>>> Red Hat, Inc.
>>> Email: cibsen@redhat.com
>>> Twitter: davsclaus
>>> Blog: http://davsclaus.com
>>> Author of Camel in Action: http://www.manning.com/ibsen
>>> hawtio: http://hawt.io/
>>> fabric8: http://fabric8.io/
>> 
>> 
>> 
>> -- 
>> Claus Ibsen
>> -----------------
>> Red Hat, Inc.
>> Email: cibsen@redhat.com
>> Twitter: davsclaus
>> Blog: http://davsclaus.com
>> Author of Camel in Action: http://www.manning.com/ibsen
>> hawtio: http://hawt.io/
>> fabric8: http://fabric8.io/
> 


Mime
View raw message