views:

133

answers:

2

I'm trying to create core data application. Some times when trying to save data, i'm seeing following error:

Error: NSInvalidArgumentException, Reason: * -_referenceData64 only defined for abstract class. Define -[NSTemporaryObjectID_default _referenceData64]!, Description: * -_referenceData64 only defined for abstract class. Define -[NSTemporaryObjectID_default _referenceData64]!

I didn't understand why this error is coming and how to avoid it. Can some one help me please.

+1  A: 
TechZen
That is not actually correct. _referenceData64 is a property on a hidden abstract root object used internally by CoreData, this error has nothing to do with what you have in your model. You will see it most often when you do something wrong (like forming cross MOC relationships), though I am also relatively convinced there are some internal CoreData threading bugs that can cause this in correctly written multithreaded code as well.
Louis Gerbarg
You appear to be correct. I've never hit this before but then I wouldn't unless I made a specific mistake. However, the basic concept of my answer is sound. The runtime is attempting to find and entity attribute that does not exist in that context. Apparently, that was good enough for the OP to track down the problem.
TechZen
A: 

My model has 3 classes. each class has few attributes and all are of type strings only. no class is "abstract". All attributes are optional.

Satyam