Serdes v2: Handle missing User refs by synthesizing dummy users (#25391)
Many entities have `creator_id` and similar fields. `User`s are not serialized. Foreign keys to users are serialized as email addresses. During deserialization in a different instance (eg. a local dev instance importing a dump from a prod instance) many such users may not exist. This change creates new `User` entities on the fly with empty names, generated passwords, and the email set.
Showing
- enterprise/backend/test/metabase_enterprise/serialization/v2/load_test.clj 58 additions, 0 deletions...d/test/metabase_enterprise/serialization/v2/load_test.clj
- src/metabase/models/card.clj 2 additions, 2 deletionssrc/metabase/models/card.clj
- src/metabase/models/collection.clj 5 additions, 5 deletionssrc/metabase/models/collection.clj
- src/metabase/models/dashboard.clj 2 additions, 2 deletionssrc/metabase/models/dashboard.clj
- src/metabase/models/database.clj 5 additions, 4 deletionssrc/metabase/models/database.clj
- src/metabase/models/metric.clj 2 additions, 2 deletionssrc/metabase/models/metric.clj
- src/metabase/models/native_query_snippet.clj 2 additions, 2 deletionssrc/metabase/models/native_query_snippet.clj
- src/metabase/models/pulse.clj 2 additions, 2 deletionssrc/metabase/models/pulse.clj
- src/metabase/models/segment.clj 2 additions, 2 deletionssrc/metabase/models/segment.clj
- src/metabase/models/serialization/util.clj 24 additions, 4 deletionssrc/metabase/models/serialization/util.clj
- src/metabase/models/timeline.clj 2 additions, 2 deletionssrc/metabase/models/timeline.clj
- src/metabase/models/timeline_event.clj 2 additions, 2 deletionssrc/metabase/models/timeline_event.clj
- src/metabase/models/user.clj 6 additions, 0 deletionssrc/metabase/models/user.clj
Loading
Please register or sign in to comment