Hi, guys!

I just have found that we widely
misuse org.apache.ignite.cluster.ClusterNode#isClient method.

Now it returns how a node is connected to cluster (as part of the ring or
not).

So, it's not the same as IgniteConfiguration#isClientMode!

But! Actually, we treat as the same thing. At ignite-core we have 57 usages
of ClusterNode#isClient.
And nowhere we care about connection mode.

Well, there is only one case when these methods would return different
values, when forceClientMode=true and clientMode=true.

To fix this I propose next:
1. Deprecate usage of forceClientMode.
2. Create a ticket to remove it in 3.0.
3. Make ClusterNode#isClient what everyone expects.
4. Reconcile other isClient* methods. We should care about way hot client
is connected only in discovery SPI. Otherwise, it should return the same
value as IgniteConfiguration#isClientMode.


Any objections?

Reply via email to