迁移核心数据存储时出现随机崩溃
问题描述:
我试图在Mac OS X Leopard应用程序中迁移核心数据SQLite存储。迁移本身很简单,模型版本之间只有一些变化,并且有一个自定义的NSEntityMigrationPolicy
可以进行一些字符串操作。迁移核心数据存储时出现随机崩溃
99%的时间,这完美的作品。然而,偶尔它会在 objc_assign_strongCast
下下崩溃。
在这一点上,我的自定义迁移策略尚未被调用,所以我不认为这是造成它。我也三倍检查了我的映射模型文件,并且一切似乎都很好。
踢球者是,如果我只是试图迁移同一个文件再次,它通常工作正常。我不知道从哪里开始调试,所以任何指针都会受到欢迎!
答
在与DTS交谈之后,事实证明这个是 Mac OS X 10.6上的Core Data中的一个错误。
解决方法:确保您没有将nil
错误传递给migrateStoreFromURL: type: options: withMappingModel: toDestinationURL: destinationType: destinationOptions: error:
。这应该是允许的,但在这种情况下它会导致崩溃。
答
两件事情:
- 使用苹果提供的工具(即仪器)来跟踪内存管理的问题。它可能仍然在你自己的代码中。
- 尝试将这一数字减少到一个简单的,可重复的情况,并提交错误报告与苹果。*
我发现了很多的弹出周围已经给了我严重的暂停“自动”迁移问题。让他们解决问题的唯一方法是确保Apple知道他们中的每一个人。