On Jul 30, 2013, at 12:07 PM, Sergey Beryozkin <[email protected]> wrote:

> Hi Dan, others
> 
> Do you remember why LocalConduit uses a piped-style communication by default 
> ? The problem with that it causes calls with empty payloads hang (plenty of 
> cases with RS but also possible with SOAP GET for ex), unless users go and 
> enable a direct dispatch style.

If I remember correctly, the main reason is that using the Pipe enables ALL the 
interceptors and such to work exactly like they would if you used HTTP.  Thus, 
you get a more accurate and similar path if you are trying to do a more 
complete test.   With DIRECT_DISPATCH, a ton of things would be bypassed and 
thus stream based interceptors and such that you may expect to trigger wouldn't.

> I'd rather go and enable the direct dispatch style by default, will make 
> things a bit simpler for users (no need to know about 
> LocalConduit.DIRECT_DISPATCH unless really needed, and if they will need a 
> piped style then they'd disable it by setting LocalConduit.DIRECT_DISPATCH to 
> false)

I'm OK flipping it, but I'd also want to try and actually fix the problem.    
Can you create a small test case and @Ignore it and point me at it?   Then I 
can try and update the Local transport to actually work properly for that case.


-- 
Daniel Kulp
[email protected] - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com

Reply via email to