Click on Javadoc link to open Javadoc documentation.
Package
org.gridgain.grid.spi.failover.jobstealing Javadoc![]()
Available starting with GridGain 
Description
GridJobStealingFailoverSpi ![]()
![]()
GridJobStealingFailoverSpi knows where to route a job based on the GridJobStealingCollisionSpi.THIEF_NODE_ATTR ![]()
![]()
If failure is caused by a node crash, and not by steal request, then this SPI behaves identically to GridAlwaysFailoverSpi ![]()
| Usage GridJobStealingFailoverSpi Keep in mind that collision resolution happens on job executing nodes (workers), and failover happens on task-initiating node (master). So, if you have a case where a group of nodes is responsible only for sending tasks (masters) and another group is responsible for executing jobs (workers), it should be sufficient to configure GridJobStealingFailoverSpi on worker nodes only and GridJobStealingCollisionSpi on master nodes only. |
Configuration
The following configuration parameters can be used to configure GridJobStealingFailoverSpi ![]()
| Setter Method | Description | Optional | Default |
|---|---|---|---|
| setMaximumFailoverAttempts(int) |
Sets maximum number of attempts to execute a failed job on another node. | Yes | 5 specified in GridJobStealingFailoverSpi.DFLT_MAX_FAILOVER_ATTEMPTS |
Examples
As any GridGain SPI, GridAlwaysFailoverSpi ![]()
![]()
GridJobStealingFailoverSpi failSpi = new GridJobStealingFailoverSpi(); GridConfigurationAdapter cfg = new GridConfigurationAdapter(); // Override maximum failover attempts. failSpi.setMaximumFailoverAttempts(5); // Override default failover SPI. cfg.setFailoverSpi(failSpi); // Start grid. GridFactory.start(cfg);
or from Spring configuration file
<bean id="grid.custom.cfg" class="org.gridgain.grid.GridConfigurationAdapter" singleton="true"> ... <bean class="org.gridgain.grid.spi.failover.jobstealing.GridJobStealingFailoverSpi"> <property name="maximumFailoverAttempts" value="5"/> </bean> ... </bean>

For more information about using Spring framework for configuration click here.
