You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by Christian Tzolov <ct...@pivotal.io> on 2017/07/03 13:08:39 UTC

Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Recent experience of setting up Geode as a last-resource inside WebSphere
JTA, has motivated me to find a simpler way to integrate with JTA.

The https://github.com/tzolov/narayana-jta-geode-support provides utilities
to integrate Geode with Narayana JTA. This enables global transactions
using the embeddable, standalone, open-source Narayana JTA and implements
the Last-Resource Commit Optimization (LRCO) to preserve the ACID
properties.  (e.g. Geode is registered as last-resource in the global
transactions).

With narayana-geode-core you can use it with the plain Geode API:
http://bit.ly/2tByAr5
or use narayana-geode-springboot for seamless integration with Spring Boot
and SpringDataGemfire. See the http://bit.ly/2siBEof example

All dependencies are resolved from maven central.

So if you build a SpringBoot app you only need to add the maven
dependencies and set a single annotation @EnableGeodeNarayanaJta. No need
for obsolete, commercial  Application Servers no accidental complexity.

I’ve tried to explain the problem and the solution in my blog here:
http://blog.tzolov.net/2017/07/apache-geode-gemfire-narayana-jta.html?view=sidebar

Because Narayana uses LGPL it is not compatible for distribution with ASF,
but it can be referred as optional component.

Cheers,
Christian

P.S. the implementation uses code and ideas from the Geode engineering team
and from John Blum ;)
-- 
Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer, EMEA
| Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by John Blum <jb...@pivotal.io>.
Hi Christian-

Certainly, if you like, I would be happy to help you out with the new Repo,
where I can.

@Geode Community-

As an FYI, I also just completed DATAGEODE-16 [1] for *Spring Data Geode*
(as well as SGF-636 [2] for *Spring Data GemFire*) which includes support
for Apache Geode in CMT/JTA Transactions initiated from *Spring's*
Transaction Management infrastructure when demarcating your transactional,
application service endpoints with *Spring's* @Transactional annotation,
thereby wrapping Geode data access interactions with other transactional,
XA-compliant resources in an atomic operation successfully.

In a nutshell, this includes handling steps 5-8 in the documentation on
behalf of a *Spring* user interfacing with Geode as specified here [3].
Additionally, it handles the downstream operations as well, after the
transaction completes.

Anyway, more details will be available in the *Spring Data Geode* User
Guide, once available (I have attached the raw documentation for everyone's
early access/preview).

As a reminder, once Apache Geode *1.2* is released, Spring Data Geode *2.0*
will join the *Spring Data Release Train* (as of *Kay RC1*) and follow a
regular release cadence.

Cheers,
John


[1] https://jira.spring.io/browse/DATAGEODE-16
[2] https://jira.spring.io/browse/SGF-636
[3]
http://geode.apache.org/docs/guide/11/developing/transactions/JTA_transactions.html#task_sln_x3b_wk


On Thu, Jul 13, 2017 at 2:56 AM, Christian Tzolov <ct...@pivotal.io>
wrote:

> Hi
>
> As suggested i've added related wiki page here:
> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=71764563#
>
> Feel free to review and edit!
>
> @Swapnil, @John, since this is an external, optional utility it might
> useful to add you as github (
> https://github.com/tzolov/narayana-jta-geode-support) project owners too?
> As an attempt to keep the code in synch with the core Geode/SDG projects?
>
> Cheers,
> Christain
>
> On 4 July 2017 at 22:59, John Blum <jb...@pivotal.io> wrote:
>
> > 1 additional note...
> >
> > As a follow up to what *Christian* has provided here (which is highly
> > appreciated), I am also adding formal support for using Geode as a Last
> > Resource in a CMT/JTA transaction initiated by a *Spring*
> > managed/demarcated transaction in...
> >
> > DATAGEODE-16 - "*Add support for Geode JCA ResourceAdapter*
> > <https://jira.spring.io/browse/DATAGEODE-16>" [1]
> >
> > The work being done in DATAGEODE-16 is based on POC work we did for a
> > Pivotal customer and will benefit the entire community.
> >
> > Cheers,
> > John
> >
> >
> > [1] https://jira.spring.io/browse/DATAGEODE-16
> >
> >
> > On Tue, Jul 4, 2017 at 1:53 PM, John Blum <jb...@pivotal.io> wrote:
> >
> > > Well done Christian!  Thank you for the hard work and contributions.
> > >
> > > Cheers,
> > > -j
> > >
> > > On Mon, Jul 3, 2017 at 12:43 PM, Swapnil Bawaskar <
> sbawaskar@pivotal.io>
> > > wrote:
> > >
> > >> Great work Christian!
> > >> Can you add a page about this on the wiki
> > >> <https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so
> > >> that
> > >> your work is not lost.
> > >>
> > >> On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:
> > >>
> > >> > Awesome!
> > >> >
> > >> > -Dan
> > >> >
> > >> > On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <
> ctzolov@pivotal.io>
> > >> > wrote:
> > >> >
> > >> > > Recent experience of setting up Geode as a last-resource inside
> > >> WebSphere
> > >> > > JTA, has motivated me to find a simpler way to integrate with JTA.
> > >> > >
> > >> > > The https://github.com/tzolov/narayana-jta-geode-support provides
> > >> > > utilities
> > >> > > to integrate Geode with Narayana JTA. This enables global
> > transactions
> > >> > > using the embeddable, standalone, open-source Narayana JTA and
> > >> implements
> > >> > > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> > >> > > properties.  (e.g. Geode is registered as last-resource in the
> > global
> > >> > > transactions).
> > >> > >
> > >> > > With narayana-geode-core you can use it with the plain Geode API:
> > >> > > http://bit.ly/2tByAr5
> > >> > > or use narayana-geode-springboot for seamless integration with
> > Spring
> > >> > Boot
> > >> > > and SpringDataGemfire. See the http://bit.ly/2siBEof example
> > >> > >
> > >> > > All dependencies are resolved from maven central.
> > >> > >
> > >> > > So if you build a SpringBoot app you only need to add the maven
> > >> > > dependencies and set a single annotation @EnableGeodeNarayanaJta.
> No
> > >> need
> > >> > > for obsolete, commercial  Application Servers no accidental
> > >> complexity.
> > >> > >
> > >> > > I’ve tried to explain the problem and the solution in my blog
> here:
> > >> > > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> > >> > > narayana-jta.html?view=sidebar
> > >> > >
> > >> > > Because Narayana uses LGPL it is not compatible for distribution
> > with
> > >> > ASF,
> > >> > > but it can be referred as optional component.
> > >> > >
> > >> > > Cheers,
> > >> > > Christian
> > >> > >
> > >> > > P.S. the implementation uses code and ideas from the Geode
> > engineering
> > >> > team
> > >> > > and from John Blum ;)
> > >> > > --
> > >> > > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data
> > Engineer,
> > >> > EMEA
> > >> > > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> > >> > <+31%206%2010285517>
> > >> > >
> > >> >
> > >>
> > >
> > >
> > >
> > > --
> > > -John
> > > john.blum10101 (skype)
> > >
> >
> >
> >
> > --
> > -John
> > john.blum10101 (skype)
> >
>
>
>
> --
> Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer, EMEA
> | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
>



-- 
-John
john.blum10101 (skype)

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by Swapnil Bawaskar <sb...@pivotal.io>.
Sure, would be glad to help.

On Thu, Jul 13, 2017 at 2:57 AM Christian Tzolov <ct...@pivotal.io> wrote:

> Hi
>
> As suggested i've added related wiki page here:
> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=71764563#
>
> Feel free to review and edit!
>
> @Swapnil, @John, since this is an external, optional utility it might
> useful to add you as github (
> https://github.com/tzolov/narayana-jta-geode-support) project owners too?
> As an attempt to keep the code in synch with the core Geode/SDG projects?
>
> Cheers,
> Christain
>
> On 4 July 2017 at 22:59, John Blum <jb...@pivotal.io> wrote:
>
> > 1 additional note...
> >
> > As a follow up to what *Christian* has provided here (which is highly
> > appreciated), I am also adding formal support for using Geode as a Last
> > Resource in a CMT/JTA transaction initiated by a *Spring*
> > managed/demarcated transaction in...
> >
> > DATAGEODE-16 - "*Add support for Geode JCA ResourceAdapter*
> > <https://jira.spring.io/browse/DATAGEODE-16>" [1]
> >
> > The work being done in DATAGEODE-16 is based on POC work we did for a
> > Pivotal customer and will benefit the entire community.
> >
> > Cheers,
> > John
> >
> >
> > [1] https://jira.spring.io/browse/DATAGEODE-16
> >
> >
> > On Tue, Jul 4, 2017 at 1:53 PM, John Blum <jb...@pivotal.io> wrote:
> >
> > > Well done Christian!  Thank you for the hard work and contributions.
> > >
> > > Cheers,
> > > -j
> > >
> > > On Mon, Jul 3, 2017 at 12:43 PM, Swapnil Bawaskar <
> sbawaskar@pivotal.io>
> > > wrote:
> > >
> > >> Great work Christian!
> > >> Can you add a page about this on the wiki
> > >> <https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so
> > >> that
> > >> your work is not lost.
> > >>
> > >> On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:
> > >>
> > >> > Awesome!
> > >> >
> > >> > -Dan
> > >> >
> > >> > On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <
> ctzolov@pivotal.io>
> > >> > wrote:
> > >> >
> > >> > > Recent experience of setting up Geode as a last-resource inside
> > >> WebSphere
> > >> > > JTA, has motivated me to find a simpler way to integrate with JTA.
> > >> > >
> > >> > > The https://github.com/tzolov/narayana-jta-geode-support provides
> > >> > > utilities
> > >> > > to integrate Geode with Narayana JTA. This enables global
> > transactions
> > >> > > using the embeddable, standalone, open-source Narayana JTA and
> > >> implements
> > >> > > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> > >> > > properties.  (e.g. Geode is registered as last-resource in the
> > global
> > >> > > transactions).
> > >> > >
> > >> > > With narayana-geode-core you can use it with the plain Geode API:
> > >> > > http://bit.ly/2tByAr5
> > >> > > or use narayana-geode-springboot for seamless integration with
> > Spring
> > >> > Boot
> > >> > > and SpringDataGemfire. See the http://bit.ly/2siBEof example
> > >> > >
> > >> > > All dependencies are resolved from maven central.
> > >> > >
> > >> > > So if you build a SpringBoot app you only need to add the maven
> > >> > > dependencies and set a single annotation @EnableGeodeNarayanaJta.
> No
> > >> need
> > >> > > for obsolete, commercial  Application Servers no accidental
> > >> complexity.
> > >> > >
> > >> > > I’ve tried to explain the problem and the solution in my blog
> here:
> > >> > > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> > >> > > narayana-jta.html?view=sidebar
> > >> > >
> > >> > > Because Narayana uses LGPL it is not compatible for distribution
> > with
> > >> > ASF,
> > >> > > but it can be referred as optional component.
> > >> > >
> > >> > > Cheers,
> > >> > > Christian
> > >> > >
> > >> > > P.S. the implementation uses code and ideas from the Geode
> > engineering
> > >> > team
> > >> > > and from John Blum ;)
> > >> > > --
> > >> > > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data
> > Engineer,
> > >> > EMEA
> > >> > > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> <+31%206%2010285517>
> > >> > <+31%206%2010285517>
> > >> > >
> > >> >
> > >>
> > >
> > >
> > >
> > > --
> > > -John
> > > john.blum10101 (skype)
> > >
> >
> >
> >
> > --
> > -John
> > john.blum10101 (skype)
> >
>
>
>
> --
> Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer, EMEA
> | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> <+31%206%2010285517>
>

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by Christian Tzolov <ct...@pivotal.io>.
Hi

As suggested i've added related wiki page here:
https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=71764563#

Feel free to review and edit!

@Swapnil, @John, since this is an external, optional utility it might
useful to add you as github (
https://github.com/tzolov/narayana-jta-geode-support) project owners too?
As an attempt to keep the code in synch with the core Geode/SDG projects?

Cheers,
Christain

On 4 July 2017 at 22:59, John Blum <jb...@pivotal.io> wrote:

> 1 additional note...
>
> As a follow up to what *Christian* has provided here (which is highly
> appreciated), I am also adding formal support for using Geode as a Last
> Resource in a CMT/JTA transaction initiated by a *Spring*
> managed/demarcated transaction in...
>
> DATAGEODE-16 - "*Add support for Geode JCA ResourceAdapter*
> <https://jira.spring.io/browse/DATAGEODE-16>" [1]
>
> The work being done in DATAGEODE-16 is based on POC work we did for a
> Pivotal customer and will benefit the entire community.
>
> Cheers,
> John
>
>
> [1] https://jira.spring.io/browse/DATAGEODE-16
>
>
> On Tue, Jul 4, 2017 at 1:53 PM, John Blum <jb...@pivotal.io> wrote:
>
> > Well done Christian!  Thank you for the hard work and contributions.
> >
> > Cheers,
> > -j
> >
> > On Mon, Jul 3, 2017 at 12:43 PM, Swapnil Bawaskar <sb...@pivotal.io>
> > wrote:
> >
> >> Great work Christian!
> >> Can you add a page about this on the wiki
> >> <https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so
> >> that
> >> your work is not lost.
> >>
> >> On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:
> >>
> >> > Awesome!
> >> >
> >> > -Dan
> >> >
> >> > On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <ct...@pivotal.io>
> >> > wrote:
> >> >
> >> > > Recent experience of setting up Geode as a last-resource inside
> >> WebSphere
> >> > > JTA, has motivated me to find a simpler way to integrate with JTA.
> >> > >
> >> > > The https://github.com/tzolov/narayana-jta-geode-support provides
> >> > > utilities
> >> > > to integrate Geode with Narayana JTA. This enables global
> transactions
> >> > > using the embeddable, standalone, open-source Narayana JTA and
> >> implements
> >> > > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> >> > > properties.  (e.g. Geode is registered as last-resource in the
> global
> >> > > transactions).
> >> > >
> >> > > With narayana-geode-core you can use it with the plain Geode API:
> >> > > http://bit.ly/2tByAr5
> >> > > or use narayana-geode-springboot for seamless integration with
> Spring
> >> > Boot
> >> > > and SpringDataGemfire. See the http://bit.ly/2siBEof example
> >> > >
> >> > > All dependencies are resolved from maven central.
> >> > >
> >> > > So if you build a SpringBoot app you only need to add the maven
> >> > > dependencies and set a single annotation @EnableGeodeNarayanaJta. No
> >> need
> >> > > for obsolete, commercial  Application Servers no accidental
> >> complexity.
> >> > >
> >> > > I’ve tried to explain the problem and the solution in my blog here:
> >> > > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> >> > > narayana-jta.html?view=sidebar
> >> > >
> >> > > Because Narayana uses LGPL it is not compatible for distribution
> with
> >> > ASF,
> >> > > but it can be referred as optional component.
> >> > >
> >> > > Cheers,
> >> > > Christian
> >> > >
> >> > > P.S. the implementation uses code and ideas from the Geode
> engineering
> >> > team
> >> > > and from John Blum ;)
> >> > > --
> >> > > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data
> Engineer,
> >> > EMEA
> >> > > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> >> > <+31%206%2010285517>
> >> > >
> >> >
> >>
> >
> >
> >
> > --
> > -John
> > john.blum10101 (skype)
> >
>
>
>
> --
> -John
> john.blum10101 (skype)
>



-- 
Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer, EMEA
| Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by John Blum <jb...@pivotal.io>.
1 additional note...

As a follow up to what *Christian* has provided here (which is highly
appreciated), I am also adding formal support for using Geode as a Last
Resource in a CMT/JTA transaction initiated by a *Spring*
managed/demarcated transaction in...

DATAGEODE-16 - "*Add support for Geode JCA ResourceAdapter*
<https://jira.spring.io/browse/DATAGEODE-16>" [1]

The work being done in DATAGEODE-16 is based on POC work we did for a
Pivotal customer and will benefit the entire community.

Cheers,
John


[1] https://jira.spring.io/browse/DATAGEODE-16


On Tue, Jul 4, 2017 at 1:53 PM, John Blum <jb...@pivotal.io> wrote:

> Well done Christian!  Thank you for the hard work and contributions.
>
> Cheers,
> -j
>
> On Mon, Jul 3, 2017 at 12:43 PM, Swapnil Bawaskar <sb...@pivotal.io>
> wrote:
>
>> Great work Christian!
>> Can you add a page about this on the wiki
>> <https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so
>> that
>> your work is not lost.
>>
>> On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:
>>
>> > Awesome!
>> >
>> > -Dan
>> >
>> > On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <ct...@pivotal.io>
>> > wrote:
>> >
>> > > Recent experience of setting up Geode as a last-resource inside
>> WebSphere
>> > > JTA, has motivated me to find a simpler way to integrate with JTA.
>> > >
>> > > The https://github.com/tzolov/narayana-jta-geode-support provides
>> > > utilities
>> > > to integrate Geode with Narayana JTA. This enables global transactions
>> > > using the embeddable, standalone, open-source Narayana JTA and
>> implements
>> > > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
>> > > properties.  (e.g. Geode is registered as last-resource in the global
>> > > transactions).
>> > >
>> > > With narayana-geode-core you can use it with the plain Geode API:
>> > > http://bit.ly/2tByAr5
>> > > or use narayana-geode-springboot for seamless integration with Spring
>> > Boot
>> > > and SpringDataGemfire. See the http://bit.ly/2siBEof example
>> > >
>> > > All dependencies are resolved from maven central.
>> > >
>> > > So if you build a SpringBoot app you only need to add the maven
>> > > dependencies and set a single annotation @EnableGeodeNarayanaJta. No
>> need
>> > > for obsolete, commercial  Application Servers no accidental
>> complexity.
>> > >
>> > > I’ve tried to explain the problem and the solution in my blog here:
>> > > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
>> > > narayana-jta.html?view=sidebar
>> > >
>> > > Because Narayana uses LGPL it is not compatible for distribution with
>> > ASF,
>> > > but it can be referred as optional component.
>> > >
>> > > Cheers,
>> > > Christian
>> > >
>> > > P.S. the implementation uses code and ideas from the Geode engineering
>> > team
>> > > and from John Blum ;)
>> > > --
>> > > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer,
>> > EMEA
>> > > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
>> > <+31%206%2010285517>
>> > >
>> >
>>
>
>
>
> --
> -John
> john.blum10101 (skype)
>



-- 
-John
john.blum10101 (skype)

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by John Blum <jb...@pivotal.io>.
Well done Christian!  Thank you for the hard work and contributions.

Cheers,
-j

On Mon, Jul 3, 2017 at 12:43 PM, Swapnil Bawaskar <sb...@pivotal.io>
wrote:

> Great work Christian!
> Can you add a page about this on the wiki
> <https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so that
> your work is not lost.
>
> On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:
>
> > Awesome!
> >
> > -Dan
> >
> > On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <ct...@pivotal.io>
> > wrote:
> >
> > > Recent experience of setting up Geode as a last-resource inside
> WebSphere
> > > JTA, has motivated me to find a simpler way to integrate with JTA.
> > >
> > > The https://github.com/tzolov/narayana-jta-geode-support provides
> > > utilities
> > > to integrate Geode with Narayana JTA. This enables global transactions
> > > using the embeddable, standalone, open-source Narayana JTA and
> implements
> > > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> > > properties.  (e.g. Geode is registered as last-resource in the global
> > > transactions).
> > >
> > > With narayana-geode-core you can use it with the plain Geode API:
> > > http://bit.ly/2tByAr5
> > > or use narayana-geode-springboot for seamless integration with Spring
> > Boot
> > > and SpringDataGemfire. See the http://bit.ly/2siBEof example
> > >
> > > All dependencies are resolved from maven central.
> > >
> > > So if you build a SpringBoot app you only need to add the maven
> > > dependencies and set a single annotation @EnableGeodeNarayanaJta. No
> need
> > > for obsolete, commercial  Application Servers no accidental complexity.
> > >
> > > I’ve tried to explain the problem and the solution in my blog here:
> > > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> > > narayana-jta.html?view=sidebar
> > >
> > > Because Narayana uses LGPL it is not compatible for distribution with
> > ASF,
> > > but it can be referred as optional component.
> > >
> > > Cheers,
> > > Christian
> > >
> > > P.S. the implementation uses code and ideas from the Geode engineering
> > team
> > > and from John Blum ;)
> > > --
> > > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer,
> > EMEA
> > > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> > <+31%206%2010285517>
> > >
> >
>



-- 
-John
john.blum10101 (skype)

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by Swapnil Bawaskar <sb...@pivotal.io>.
Great work Christian!
Can you add a page about this on the wiki
<https://cwiki.apache.org/confluence/display/GEODE/Index> as well, so that
your work is not lost.

On Mon, Jul 3, 2017 at 10:58 AM Dan Smith <ds...@pivotal.io> wrote:

> Awesome!
>
> -Dan
>
> On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <ct...@pivotal.io>
> wrote:
>
> > Recent experience of setting up Geode as a last-resource inside WebSphere
> > JTA, has motivated me to find a simpler way to integrate with JTA.
> >
> > The https://github.com/tzolov/narayana-jta-geode-support provides
> > utilities
> > to integrate Geode with Narayana JTA. This enables global transactions
> > using the embeddable, standalone, open-source Narayana JTA and implements
> > the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> > properties.  (e.g. Geode is registered as last-resource in the global
> > transactions).
> >
> > With narayana-geode-core you can use it with the plain Geode API:
> > http://bit.ly/2tByAr5
> > or use narayana-geode-springboot for seamless integration with Spring
> Boot
> > and SpringDataGemfire. See the http://bit.ly/2siBEof example
> >
> > All dependencies are resolved from maven central.
> >
> > So if you build a SpringBoot app you only need to add the maven
> > dependencies and set a single annotation @EnableGeodeNarayanaJta. No need
> > for obsolete, commercial  Application Servers no accidental complexity.
> >
> > I’ve tried to explain the problem and the solution in my blog here:
> > http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> > narayana-jta.html?view=sidebar
> >
> > Because Narayana uses LGPL it is not compatible for distribution with
> ASF,
> > but it can be referred as optional component.
> >
> > Cheers,
> > Christian
> >
> > P.S. the implementation uses code and ideas from the Geode engineering
> team
> > and from John Blum ;)
> > --
> > Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer,
> EMEA
> > | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
> <+31%206%2010285517>
> >
>

Re: Apache Geode + Narayana JTA = Global Transactions with Last-Resource Optimization

Posted by Dan Smith <ds...@pivotal.io>.
Awesome!

-Dan

On Mon, Jul 3, 2017 at 6:08 AM, Christian Tzolov <ct...@pivotal.io> wrote:

> Recent experience of setting up Geode as a last-resource inside WebSphere
> JTA, has motivated me to find a simpler way to integrate with JTA.
>
> The https://github.com/tzolov/narayana-jta-geode-support provides
> utilities
> to integrate Geode with Narayana JTA. This enables global transactions
> using the embeddable, standalone, open-source Narayana JTA and implements
> the Last-Resource Commit Optimization (LRCO) to preserve the ACID
> properties.  (e.g. Geode is registered as last-resource in the global
> transactions).
>
> With narayana-geode-core you can use it with the plain Geode API:
> http://bit.ly/2tByAr5
> or use narayana-geode-springboot for seamless integration with Spring Boot
> and SpringDataGemfire. See the http://bit.ly/2siBEof example
>
> All dependencies are resolved from maven central.
>
> So if you build a SpringBoot app you only need to add the maven
> dependencies and set a single annotation @EnableGeodeNarayanaJta. No need
> for obsolete, commercial  Application Servers no accidental complexity.
>
> I’ve tried to explain the problem and the solution in my blog here:
> http://blog.tzolov.net/2017/07/apache-geode-gemfire-
> narayana-jta.html?view=sidebar
>
> Because Narayana uses LGPL it is not compatible for distribution with ASF,
> but it can be referred as optional component.
>
> Cheers,
> Christian
>
> P.S. the implementation uses code and ideas from the Geode engineering team
> and from John Blum ;)
> --
> Christian Tzolov <http://www.linkedin.com/in/tzolov> | Data Engineer, EMEA
> | Pivotal <http://pivotal.io/> | ctzolov@pivotal.io |+31610285517
>