You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by limabean <dr...@gmail.com> on 2016/05/31 20:29:36 UTC

clarification on how to start transactions only on servers

I was reading this thread:
http://apache-ignite-users.70518.x6.nabble.com/CacheStore-handles-persistence-in-client-node-for-transactional-cache-td3428.html#a3435

and found this confusing.  

This line in particular from the post above is confusing:
>> By default TRANSACTIONAL cache invokes store from the node where
>> transaction is started.

My expectations prior to reading the above post is that each server node has
its own copy of a CacheStore class registered with the data cache partition
(like this:

cacheCfg.setCacheStoreFactory(FactoryBuilder.factoryOf(CacheJdbcPersonStore.class));
)

 and that each node calls a local instance of the CacheStore class to
initiate storage of changed elements in a persistent store.  If Ignite
doesn't work that way, why not, and how does one achieve the behavior where
each node is handling persistence for its own partition of a cache ?

Thank you,







--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/clarification-on-how-to-start-transactions-only-on-servers-tp5348.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: clarification on how to start transactions only on servers

Posted by Vladislav Pyatkov <vp...@gridgain.com>.
Hello,

Ignite  stores transaction data on one node using own CacheStore.
>>You can disable saves from client if you enable write-behind semantics.
How it is written in  the above thread.

Could you describe more detail what task you decide?

The first thing that comes to mind:
1) Distributed closures, which executes in specific node[1]
2) Create a service, which contains business logic[2]
[1]: https://apacheignite.readme.io/docs/distributed-closures
[2]: https://apacheignite.readme.io/docs/service-grid

On Tue, May 31, 2016 at 11:29 PM, limabean <dr...@gmail.com> wrote:

> I was reading this thread:
>
> http://apache-ignite-users.70518.x6.nabble.com/CacheStore-handles-persistence-in-client-node-for-transactional-cache-td3428.html#a3435
>
> and found this confusing.
>
> This line in particular from the post above is confusing:
> >> By default TRANSACTIONAL cache invokes store from the node where
> >> transaction is started.
>
> My expectations prior to reading the above post is that each server node
> has
> its own copy of a CacheStore class registered with the data cache partition
> (like this:
>
>
> cacheCfg.setCacheStoreFactory(FactoryBuilder.factoryOf(CacheJdbcPersonStore.class));
> )
>
>  and that each node calls a local instance of the CacheStore class to
> initiate storage of changed elements in a persistent store.  If Ignite
> doesn't work that way, why not, and how does one achieve the behavior where
> each node is handling persistence for its own partition of a cache ?
>
> Thank you,
>
>
>
>
>
>
>
> --
> View this message in context:
> http://apache-ignite-users.70518.x6.nabble.com/clarification-on-how-to-start-transactions-only-on-servers-tp5348.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>