Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Type

Description

Solutions

AMID

  • An object with this AMID already exists

  • GENERATE

  • FAIL

PK

  • An object with this primary key already exists

  • Single PK only for now

  • GENERATE

  • SET_BY_USER

  • FAIL

UNIQUE

  • An object with this value for this field already exists

  • GENERATE

  • SET_BY_USER

  • SET_NULL

  • FAIL

FVP_UNIQUE

  • Applicable for fields with field value pattern

  • An object with this value for this field already exists

  • Root entities only for now

  • GENERATE

  • SET_BY_USER

  • SET_NULL

  • FAIL

FK

  • The parent object referred by this field not found

  • Not yet supported

  • SET_NULL

  • FAIL

REQUIRED

  • No value present for this required field

  • GENERATE

  • SET_BY_USER

  • FAIL

TYPE

  • Value type not compatible with the field type

  • GENERATE

  • SET_BY_USER

  • SET_NULL

  • FAIL

LENGTH

  • Applicable for varchar fields with a length set

  • Text length is longer than the limit

  • TRIM_EXTRA

  • SET_BY_USER

  • SET_NULL

  • FAIL

Root System Entity

  • AMID

  • PK

  • UNIQUE

  • FVP_UNIQUE

  • Applicable for root system entities (AKTOR, TAG, RESTRICTION)

  • IGNORE

  • REPLACE_WITH_CONFLICTEDEXISTING

Solutions

Type

Description

Challenges

GENERATE

  • Generates a new value based on the field type or using the field value pattern

  • Not available for PK and UNIQUE if field type is not UUID

  • For AMID, replace all objectReference

  • For PK, replace all FK

  • How to handle composite PK?

  • Should we generate PK for other types? If so then how?

SET_BY_USER

  • Input from the user

  • Not applicable for conflicts that are gathered during import

  • Requires user interaction

SET_NULL

  • Applicable for nullable or not required fields

SET_NULL_OR_REGENERATE

  • Set null if nullable or generate a value (dummy) based on the field type

  • Applicable for conflicts that are gathered during import

TRIM_EXTRA

  • Trim the extra part

  • Applicable for varchar fields with a length set

IGNORE

  • Ignore this object and it’s descendants

  • Applicable only for root system entities

  • Highest precedence

  • Ignore the whole subtree for this object as well

REPLACE_WITH_CONFLICTEDEXISTING

  • Ignore this object and it’s descendants but keep the relation objects (AKTOR_RELASJON, TAG_MAPPING, OBJECT_RESTRICTION)

  • Import relation objects but change the relation to connect to the conflicted row

  • 2nd highest precedence

  • Ignore the whole subtree for this object as well

  • Keep the relation objects but change their FK

  • Should we consider the possible new sub-entity objects?

  • Should we consider the possible changes for this subtree?

FAIL

  • Throw an error and abort

  • Applicable for conflicts that are gathered during import

...