核心数据致命异常:此 NSPercientStoreCoordinator 没有持久存储(未知)。无法执行保存操作

bne*_*neu 5 core-data fatal-error ios

我有一个应用程序当前使用名为 MyFramework 的自定义 Cocoa Touch 框架。在其中,我依赖于 Core Data,我用它来缓存 SQLite 存储中的数据。

在测试过程中,一切都按预期工作,但现在我已经将应用程序共享给越来越多的用户,我收到以下致命异常:

Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0x1848651b8 __exceptionPreprocess
1  libobjc.A.dylib                0x18329c55c objc_exception_throw
2  CoreData                       0x186c49260 -[NSPersistentStoreCoordinator _coordinator_you_never_successfully_opened_the_database_corrupted:]
3  CoreData                       0x186c494b8 -[NSPersistentStoreCoordinator _introspectLastErrorAndThrow]
4  CoreData                       0x186c49840 __65-[NSPersistentStoreCoordinator executeRequest:withContext:error:]_block_invoke
5  CoreData                       0x186c42bf0 -[NSPersistentStoreCoordinator _routeHeavyweightBlock:]
6  CoreData                       0x186b67f20 -[NSPersistentStoreCoordinator executeRequest:withContext:error:]
7  CoreData                       0x186b67f4c -[NSPersistentStoreCoordinator executeRequest:withContext:error:]
8  CoreData                       0x186b895ac -[NSManagedObjectContext save:]
9  MyFramework                    0x1016608a4 (Missing)
10 CoreData                       0x186c0de98 developerSubmittedBlockToNSManagedObjectContextPerform
11 libdispatch.dylib              0x1836ee1bc _dispatch_client_callout
12 libdispatch.dylib              0x1836fc3dc _dispatch_queue_serial_drain
13 libdispatch.dylib              0x1836f19a4 _dispatch_queue_invoke
14 libdispatch.dylib              0x1836fe34c _dispatch_root_queue_drain
15 libdispatch.dylib              0x1836fe0ac _dispatch_worker_thread3
16 libsystem_pthread.dylib        0x1838f72a0 _pthread_wqthread
17 libsystem_pthread.dylib        0x1838f6d8c start_wqthread
Run Code Online (Sandbox Code Playgroud)

我可以看出问题出在 NSPercientStoreCoordinator 上,并且数据库有些损坏。但是,我在网上搜索过,只能找到有关其他 NSPersistentStoreCoordinator 问题的信息,没有任何关于此的信息。

有没有人遇到过这个问题,即使你没有,有人知道如何解决或预防它吗?

提前致谢!

编辑

我在评论中看到了@LoVo 提到的问题,但是我不确定“device_locked”错误与“database_corrupted”错误是否相关。