Ios CoreData MagicalRecord崩溃:致命异常:NSObjectInaccessibleException

Ios CoreData MagicalRecord崩溃:致命异常:NSObjectInaccessibleException,ios,core-data,nsmanagedobject,nsmanagedobjectcontext,magicalrecord,Ios,Core Data,Nsmanagedobject,Nsmanagedobjectcontext,Magicalrecord,我已经看到了一些关于这个的其他线索,但还没有找到一个好的解决方案。这是我在事故报告中看到的事故,尽管我自己无法再现: Fatal Exception: NSObjectInaccessibleException CoreData could not fulfill a fault for '0xd00000001ff80004... 下面是发生这种情况的确切代码: NSDictionary *newCats = (cats from server) [MagicalRecord saveW

我已经看到了一些关于这个的其他线索,但还没有找到一个好的解决方案。这是我在事故报告中看到的事故,尽管我自己无法再现:

Fatal Exception: NSObjectInaccessibleException
CoreData could not fulfill a fault for '0xd00000001ff80004... 
下面是发生这种情况的确切代码:

NSDictionary *newCats = (cats from server)

[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) {

    NSMutableSet *existingIds = [NSMutableSet set];

    NSArray *allCats = [Cat MR_findAllInContext:localContext];
    for (Cat *cat in allCats) {
        if (cat.managedObjectContext != nil) {
            [existingIds addObject:cat.cat_id]; //CRASH!!!
        }
    }

    NSMutableArray *newIds = [NSMutableArray array];
    for (NSDictionary *catData in newCats) {
        NSString *catId = catData[@"id"];
        [newIds addObject:catId];
        [existingIds removeObject:catId];
    }

    for (NSString *sId in existingIds) {
        Cat *cat = [Cat MR_findFirstByAttribute:@"cat_id" withValue:sId inContext:localContext];
        [cat MR_deleteEntityInContext:localContext];
    }
}
如您所见,我只是试图收集现有ID的列表,以便与从服务器接收到的ID进行比较,并删除服务器上不再存在的本地CAT


有人能解释一下吗?用户在这里看到大量崩溃。

您是否在其他地方删除
Cat
实例?这个答案可能是相关的:谢谢你的建议。我正在做的唯一的删除是在上面的代码中,下面是崩溃发生的地方。所以我假设执行永远不会达到那个点。