I am reporting what I did to identify the problem, as this is not trivial at all.
- Set a breakpoint on the exception:
- Backtracing we observe that the exception was throw inside @NSEntityMapping(_NSInternalMethods) _migrationPolicy@.
@0x00007fff83e1be00 <+0032> je 0x7fff83e1be32 <-[NSEntityMapping(_NSInternalMethods) _migrationPolicy]+82>@
@0x00007fff83e1be02 <+0034> callq 0x7fff83e461ec @
@0x00007fff83e1be07 <+0039> lea -0x1379219e(%rip),%rsi # 0x7fff70689c70@
@0x00007fff83e1be0e <+0046> mov %rax,%rdi@
@0x00007fff83e1be11 <+0049> callq *-0x137921a7(%rip) # 0x7fff70689c70@
@0x00007fff83e1be17 <+0055> mov -0x13791f06(%rip),%rsi # 0x7fff70689f18@
@0x00007fff83e1be1e <+0062> mov %rax,%rdi@
@0x00007fff83e1be21 <+0065> xor %al,%al@
@0x00007fff83e1be23 <+0067> callq 0x7fff83e46468 @
@0x00007fff83e1be28 <+0072> test %rax,%rax@
@0x00007fff83e1be2b <+0075> je 0x7fff83e1be59 <-[NSEntityMapping(_NSInternalMethods) _migrationPolicy]+121>@
- Set a breakpoint inside this function to detect a class name resolution with @dyld_stub_NSClassFromString@:
And this is the missing class. For some reason Xcode did not include this class in the target of my project.
After fixing up this problem the migration has completed successfully. Unfortunately some core bindings now are reporting problems because the schema changed. I have to figure out how to redo these bindings.