NSFetchRequest вызывает SIGABRT ИЛИ EXC_BAD_ACCESS - PullRequest
1 голос
/ 03 мая 2011

Я использую этот простой код для запроса на выборку

NSArray *fetchResults = [moc executeFetchRequest:request error:&error];

NSLog(@" i want show my result : %@",fetchResults); -> причина SIGABRT

Если я использую мой постоянный магазин сразу после этого создания, у меня есть ошибка.

PS: хранилище было сохранено между заполнением и запросом.

Но если я закрою приложение и снова открою (в этом случае магазин существует), у меня нет ошибки.

в некоторых случаях я могу просмотреть это сообщение: завершить вызов после выброса экземпляра 'NSException'

но я не могу получить доступ к этому исключению.

если я посчитаю результаты выборки, у меня хорошее число, это действительно странно.

Спасибо за помощь.

1 Ответ

1 голос
/ 04 мая 2011

Хорошо, я нашел проблему!

В заполненном коде одним из моих отношений была вставка с автоматическим выпуском.

Удалите это, и теперь все в порядке.

Это не хорошее решение:

 NSManagedObject *relationEntity = [[NSEntityDescription insertNewObjectForEntityForName:@"picture" inManagedObjectContext:moc] autorelease];

Просто удалите авто-релиз:

NSManagedObject *relationEntity = [NSEntityDescription insertNewObjectForEntityForName:@"picture" inManagedObjectContext:moc];

Я забыл это в основных данных ( не использовать выпуск, просто установитеобъект nil)!

...