You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by Tomohisa Igarashi <tm...@gmail.com> on 2016/10/14 13:51:03 UTC

CAMEL-9606 - unsafe transaction synchronization in camel-sjms

Hi,

I'm looking into this one and found that camel-sjms is using individual JMS sessions for each endpoints.
https://issues.apache.org/jira/browse/CAMEL-9606

As I commented, it causes inconsistency if the process is terminated in the middle of processing those synchronizations, so it doesn't make much sense in terms of atomicity. I think it would be better to add an option to share a single JMS Session among SJMS endpoints, and if it's disabled we can just commit those immidiately for each producer/consumer (i.e. remove synchronization usage). And I'd like to enable this option by default as I don't see any situation that they don't want to share the Session, transacted=false would be enough. Thoughts?

If it sounds OK for you guys, I'll make a PR for it.

Thanks,
Tomo

-- 
Tomohisa Igarashi
mailto:tm.igarashi@gmail.com

Re: CAMEL-9606 - unsafe transaction synchronization in camel-sjms

Posted by Claus Ibsen <cl...@gmail.com>.
Hi

Yeah that sounds like a good idea.

We love contributions

On Fri, Oct 14, 2016 at 3:51 PM, Tomohisa Igarashi
<tm...@gmail.com> wrote:
> Hi,
>
> I'm looking into this one and found that camel-sjms is using individual JMS
> sessions for each endpoints.
> https://issues.apache.org/jira/browse/CAMEL-9606
>
> As I commented, it causes inconsistency if the process is terminated in the
> middle of processing those synchronizations, so it doesn't make much sense
> in terms of atomicity. I think it would be better to add an option to share
> a single JMS Session among SJMS endpoints, and if it's disabled we can just
> commit those immidiately for each producer/consumer (i.e. remove
> synchronization usage). And I'd like to enable this option by default as I
> don't see any situation that they don't want to share the Session,
> transacted=false would be enough. Thoughts?
>
> If it sounds OK for you guys, I'll make a PR for it.
>
> Thanks,
> Tomo
>
> --
> Tomohisa Igarashi
> mailto:tm.igarashi@gmail.com



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Re: CAMEL-9606 - unsafe transaction synchronization in camel-sjms

Posted by Andrea Cosentino <an...@yahoo.com.INVALID>.
+1 :-)

Thanks!
 --
Andrea Cosentino 
----------------------------------
Apache Camel PMC Member
Apache Karaf Committer
Apache Servicemix Committer
Email: ancosen1985@yahoo.com
Twitter: @oscerd2
Github: oscerd



On Friday, October 14, 2016 3:51 PM, Tomohisa Igarashi <tm...@gmail.com> wrote:
Hi,

I'm looking into this one and found that camel-sjms is using individual JMS sessions for each endpoints.
https://issues.apache.org/jira/browse/CAMEL-9606

As I commented, it causes inconsistency if the process is terminated in the middle of processing those synchronizations, so it doesn't make much sense in terms of atomicity. I think it would be better to add an option to share a single JMS Session among SJMS endpoints, and if it's disabled we can just commit those immidiately for each producer/consumer (i.e. remove synchronization usage). And I'd like to enable this option by default as I don't see any situation that they don't want to share the Session, transacted=false would be enough. Thoughts?

If it sounds OK for you guys, I'll make a PR for it.

Thanks,
Tomo

-- 
Tomohisa Igarashi
mailto:tm.igarashi@gmail.com