Re: CoreData Exception: Could not fulfill a fault
Re: CoreData Exception: Could not fulfill a fault
- Subject: Re: CoreData Exception: Could not fulfill a fault
- From: Matthew Firlik <email@hidden>
- Date: Sun, 25 Sep 2005 16:42:07 -0700
On Sep 22, 2005, at 4:05 PM, E. Wing wrote:
I think I might be able to work around this as long as the deletion
notifications aren't missing as well. (So far I haven't encountered
this.) But sometimes when I continue to use my program after
encountering the notification bug, I notice that when I quit, I
receive the log message:
Exception raised during posting of notification. Ignored. exception:
CoreData could not fulfill a fault.
[snip]
So to start with, I'm wondering what this exception means and how
worried I should be about seeing this. I'm also wondering if there is
something I should/can do to investigate this further. I don't have
any experience with dealing with this kind of message so I'm not sure
what to do.
A "fault" is a placeholder object that represents a managed object
that has not yet been loaded from an external data store. A fault may
represent a single object in the case of a to-one relationship, or a
collection in the case of a to-many relationship. A fault is
converted into a "real" managed object on-demand when you inquire
about property values on the object. There is a (very) short
description of this exception in the "Troubleshooting Core Data"
guide, (available in the on-line documentation at http://
developer.apple.com), which notes the exception occurs when:
The corresponding object's underlying data has been deleted from
the persistent store
So, you had a placeholder for an object (or relationship) that, when
you went to use it, had already been deleted from the store. Take a
look at Bill Bumgarner's explanation of a few scenarios which can
cause this:
http://lists.apple.com/archives/cocoa-dev/2005/May/msg01090.html
Finally, run your application under the debugger and inspect the
contents of the userInfo dictionary of the exception: the
NSAffectedObjectsErrorKey will contain an array of faults which
caused the error. The faults will not contain data, but will contain
the entity name and the id, which may shed some light on the
situation and give you something to work backward with.
- matthew
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden