You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by endian675 <en...@gmail.com> on 2015/11/13 10:05:30 UTC

IGNITE-1903: CacheStore implementation is serialised to grid clients whether they require it or not

Moving the conversation from the User list.


vkulichenko wrote
> You get an error because you don't have a class on the client node. With
> ClassFactory it doesn't receive the store instance, but it still receives
> corresponding Class object, therefore fails. I think the cleanest way to
> solve it for now is to add store class on the client's classpath.

As I wrote in the JIRA, I think this creates a very undesirable coupling
between client and server.  I will report back on my testing of how and
whether clients can cope with the CacheStore implementation/class definition
changing, but I am not confident that they can.  If they cannot, I will have
to abandon my clients joining the grid as clientMode=true and use some other
method, probably laying my own transport layer over the top of Ignite,
something that I had hoped to avoid.


vkulichenko wrote
> 
> endian675 wrote
>> Could we consider not sending the message to nodes in the topology if a)
>> the cache is not TRANSACTIONAL and b) the node is clientMode=true ?
> Can you create a JIRA ticket and send a link to the dev@ list? I think it
> should be discussed in the community first.
> 
> -Val

created at https://issues.apache.org/jira/browse/IGNITE-1903

Many thanks
Mike




--
View this message in context: http://apache-ignite-developers.2346864.n4.nabble.com/IGNITE-1903-CacheStore-implementation-is-serialised-to-grid-clients-whether-they-require-it-or-not-tp4811.html
Sent from the Apache Ignite Developers mailing list archive at Nabble.com.

Re: IGNITE-1903: CacheStore implementation is serialised to grid clients whether they require it or not

Posted by Denis Magda <dm...@gridgain.com>.
Hi Mike, thanks for opening the ticket!

I think that someone from the community will be able to address this issue in 1.6 release.

In any case, I’m fully agree with Val that the easiest way to overcome this issue for now is just to add CacheStore’s class implementation to client’s classpath.
The rest of the workarounds you mention below sounds too complex for me.

Regards,
Denis

> On 13 нояб. 2015 г., at 12:05, endian675 <en...@gmail.com> wrote:
> 
> Moving the conversation from the User list.
> 
> 
> vkulichenko wrote
>> You get an error because you don't have a class on the client node. With
>> ClassFactory it doesn't receive the store instance, but it still receives
>> corresponding Class object, therefore fails. I think the cleanest way to
>> solve it for now is to add store class on the client's classpath.
> 
> As I wrote in the JIRA, I think this creates a very undesirable coupling
> between client and server.  I will report back on my testing of how and
> whether clients can cope with the CacheStore implementation/class definition
> changing, but I am not confident that they can.  If they cannot, I will have
> to abandon my clients joining the grid as clientMode=true and use some other
> method, probably laying my own transport layer over the top of Ignite,
> something that I had hoped to avoid.
> 
> 
> vkulichenko wrote
>> 
>> endian675 wrote
>>> Could we consider not sending the message to nodes in the topology if a)
>>> the cache is not TRANSACTIONAL and b) the node is clientMode=true ?
>> Can you create a JIRA ticket and send a link to the dev@ list? I think it
>> should be discussed in the community first.
>> 
>> -Val
> 
> created at https://issues.apache.org/jira/browse/IGNITE-1903
> 
> Many thanks
> Mike
> 
> 
> 
> 
> --
> View this message in context: http://apache-ignite-developers.2346864.n4.nabble.com/IGNITE-1903-CacheStore-implementation-is-serialised-to-grid-clients-whether-they-require-it-or-not-tp4811.html
> Sent from the Apache Ignite Developers mailing list archive at Nabble.com.