Configure custom CollisionSpi with any implemenation which keeps waiting jobs list not empty. Execute considerable amount of tasks (e.g. 10000) from 2 or more nodes with jobs mapped to one node.
Error occurs on mapped node: "Received computation request with duplicate job ID (could be network malfunction, source node may hang if task timeout was not set)"
Reason: TaskGridWorker:processMappedJobs generates job ids as following: IgniteUuid jobId = IgniteUuid.fromUuid(node.id());
where node.id() is identifier of node the job is mapped to. So parallel generation of job ids on different nodes leads to ids duplication.
Possible solution: use node.id() of local node in job id generation.