My app uses Core Data (with some help of Magical Record) and is rather heavily multithreaded using NSOperation
.
Of course I am very careful to only pass aro
I have found them while dealing with a NSManagedObjectContextDidSave notification. Many of the objects that another context had deleted couldn't be fetched because (Duh!) they had been deleted! However some of the deleted objects showed up just fine, like the ones I had already faulted in the current context.
You could have a similar issue -- the objects you can find when you iterate the store may have been faulted into that context before they got deleted and you either are not merging changes back to that context, or just haven't quite yet merged.