Uploaded image for project: 'Nuxeo Studio'
  1. Nuxeo Studio
  2. NXS-804

Fix potential collisions when defining several complex types or sub fields with the same name

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.4
    • Fix Version/s: 2.4.1
    • Component/s: Documents
    • Impact type:
      Configuration format change
    • Upgrade notes:
      Hide

      Upgrade procedure consists in changing name of tables for complex types (adding the schema prefix and the possible parent field to the table name)

      Show
      Upgrade procedure consists in changing name of tables for complex types (adding the schema prefix and the possible parent field to the table name)

      Description

      The way complex types are currently generated by Studio can lead to table collisions on VCS because of the way it handles storage of complex fields. Possible problems are:
      1. defining the same complex type (not multi valued) with the same name in two distinct schemas => VCS will store all the data in the same table, which may not be the wanted behaviour, and will cause a conflict problem if one of the schema changes
      2. defining a multi valued sub field in two distinct complex types, with the same name or not, in two distinct schemas or not => VCS will store all the data in the same table, which may not be the wanted behaviour
      3. defining the same complex type (multi valued) with the same name in two distinct schemas => repository initialization will fail (see problem reported in NXS-781)

      Possible solutions are:
      1. let Studio handle disambiguisation, by making sure VCS will store data in distinct tables in all the cases => this will cause a migration issue for existing persisted data
      2. issue validation errors when a potential collision is detected by Studio (implementation not trivial)
      3. a combination of both, maybe using a property on the project to chose whether disambiguisation should be done, or not (for compatibility)

      Ideally, this problem should be handled by VCS itself, but Studio still need to handle the feature correctly for a 5.4.2 version of VCS.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                atchertchian Anahide Tchertchian
                Reporter:
                atchertchian Anahide Tchertchian
                Participants:
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: