Uploaded image for project: 'Atlas'
  1. Atlas
  2. ATLAS-2928

Namespace entity relationship-attribute names to avoid conflict with entity attributes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Critical
    • Resolution: Unresolved
    • 1.0.0, 1.1.0
    • trunk
    • atlas-core
    • None

    Description

      Apache Atlas 1.0 introduced relationships as first-class types. A relationship effectively 'injects' an attribute on the entities at each end. For example, assignment of a glossary term to an entity is captured by relationship AtlasGlossarySemanticAssignment (in 0000-Area0/0011-glossary_model.json). This relationship adds following attributes:

      • Referceable.meanings: set<AtlasGlossaryTerm>
      • AtlasGlossaryTerm.assignedEntities: set<Referenceable>

      This works fine as long as the entity-types involved in the relationship, or their sub-types don't have an attribute with the same name as the attribute injected by the relationships. Once such instance was reported by bolke, about relationship attribute DataSet.schema introduced by avro_schema_associatedEntities - which conflicts with spark_table.schema, since spark_table type is a sub-type of DataSet.

      Such name conflicts can be avoided by prefixing relationship-attribute names with a prefix like "r:".

      Attachments

        Activity

          People

            lma Le Ma
            madhan Madhan Neethiraj
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: