A merge conflict encapsulates conflicts that occur when attempting to save changes in a managed object context.
- iOS 5.0+
- macOS 10.7+
- tvOS 5.0+
- watchOS 2.0+
There are two situations in which a conflict may occur:
In this case, the merge conflict has a source object and a cached snapshot but no persisted snapshot.
Between the cached state at the Persistent store coordinator and the external store (file, database, etc.).
In this case, the merge conflict has a cached snapshot and a persisted snapshot. The source object is also provided as a convenience, but it is not directly involved in the conflict.
Snapshot dictionaries include values for all attributes and to-one relationships, but not to-many relationships. Relationship values are
NSManagedObjectID references. To-many relationships must be pulled from the persistent store as needed.