Re: GridClosureProcessor.affinityRun() semantics

2018-08-31 Thread David Harvey
Val, A fundamental problem with sending computes to data is that the computes can be buggy. We have a set of constantly changing read-only analytics we want to run and caches where readFromBackup is set. If a bug is introduced where the closure goes into an infinite loop, or consumes all

Re: GridClosureProcessor.affinityRun() semantics

2018-08-31 Thread Valentin Kulichenko
Dave, In case it's executed even if primary node is outside of the cluster group, then I think it's a bug - I would throw an exception in this case. However, is there any particular reason you're doing this? Is there a use case? I don't see much sense in combining affinityRun with a cluster

GridClosureProcessor.affinityRun() semantics

2018-08-31 Thread David Harvey
This function takes: int partId, ... @Nullable Collection nodes, It uses partId to find the node with the primary partition, and proceeds even if that node is not in the subgrid that was passed in. This is either a bug, or the semantics should be specified more