I’m getting the following exception (I added line breaks to make it digestible by any on the list):
IllegalStateException: rowDiffsForAttributes: snapshot in com.webobjects.eoaccess.EODatabaseOperation
{
_dbSnapshot = {};
_entity = "MYEntity";
_newRow =
{
whatsit = "PHONE";
whosit = false;
chuckIt = false;
id = 3451;
};
_object = "<com.nekesto.neo.model.MYEntity pk:"3451">";
_globalID = _EOIntegralKeyGlobalID[MYEntity (java.lang.Long)3451];
_databaseOperator = "EODatabaseUpdateOperator";
} does not contain value for attribute named chuckIt with snapshot key: chuckIt
I can see that the _dbSnapshot is completely empty and I know that that is what it’s complaining about. The object exists in the DB with a PK matching the id value, which matches up with the _object and the _globalID. How could the _dbSnapshot end up empty?
What horribly-inappropriate thing have done?
I have gone over everyplace I instantiate “MYEntity” and I’m never using the EO’s constructor, it’s always being done by ERXEOControlUtilities.createAndInsertObject(editingContext, “MYEntity”).
As far as I can tell I’m never crossing EC boundaries without localInstancing it.
Is there anything else that can cause the _dbSnapshot to be empty?
I’m making use of multiple EOObjectStoreCoordinators, 1 each for two different EOModelGroups, but this code should only ever be using the defaultModelGroup in the defaultObjectStoreCoordinator. So I don’t *think* it has anything to do with that, but, well,
I’m me and I do stuff all the time that future me is shocked at.
Dave
—————————————————————————————
WebObjects - so easy that even Dave Avendasora can do it!™
—————————————————————————————
David Avendasora
Senior Software Abuser
Nekesto, Inc.