org.apache.ignite.plugin.segmentation

## Interface SegmentationResolver

All Superinterfaces:
  Serializable

    public interface SegmentationResolver
    extends Serializable

This is interface for segmentation (a.k.a "split-brain" problem) resolvers.

Each segmentation resolver checks segment for validity, using its inner logic. Typically, resolver should run light-weight single check (i.e. one IP address or one shared folder). Compound segment checks may be performed using several resolvers.

Note that Ignite support a logical segmentation and not limited to network related segmentation only. For example, a particular segmentation resolver can check for specific application or service present on the network and mark the topology as segmented in case it is not available. In other words you can equate the service outage with network outage via segmentation resolution and employ the unified approach in dealing with these types of problems.

See Also:
  `IgniteConfiguration.getSegmentationResolvers()`, `IgniteConfiguration.getSegmentationPolicy()`, `IgniteConfiguration.getSegmentCheckFrequency()`, `IgniteConfiguration.isAllSegmentationResolversPassRequired()`, `IgniteConfiguration.isWaitForSegmentOnStart()`, `SegmentationPolicy`

### Method Summary

Methods
`boolean` `isValidSegment()` Checks whether segment is valid.

### Method Detail

#### isValidSegment

    boolean isValidSegment()
                           throws IgniteCheckedException

Checks whether segment is valid.

When segmentation happens every node ends up in either one of two segments:

- Correct segment
- Invalid segment

Nodes in correct segment will continue operate as if nodes in the invalid segment simply left the topology (i.e. the topology just got "smaller"). Nodes in the invalid segment will realized that were "left out or disconnected" from the correct segment and will try to reconnect via `segmentation policy` set in configuration.

Returns:
  `True` if segment is correct, `false` otherwise.
Throws:
  `IgniteCheckedException` - If an error occurred.

2015 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 1.3.0-incubating
Release Date | : July 10 2015