Open jkeon opened 1 year ago
If you have a sec to quickly jot down a high level potential approach that will help get this done when we pick this up some day way down the road.
Sure!
Most likely as part of the reflection pass at the beginning with the other migration functionality we'll scan the types and nested types and nested collections to find where any Entity
references could be hiding and we'll build a map of that.
Then before actually migrating, we'll run a job to collect the TaskDriver data and EntityPersistentData that has Entity references and we'll store what we were referencing.
If we were referencing Entity.Null, that's all good, just means the slot was empty. If we were referencing a real Entity, then we'll want to check to make sure that:
We actually do the move, and then we collect everything that stayed in the old world and find any breaks and we collect everything in the new world and find any breaks there.
High level architecture should look like a pre and post job on either side of the actual move. One to build the current state, and then the post to check it.
Building off of #232