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

Regression: GUID order in the entity create response is not returned in the expected order(i.e; creation order).

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 0.8-incubating, trunk
    • 0.8-incubating
    • atlas-core
    • None

    Description

      Steps to repro:
      1. create below entity with two reference entities in it using /entities POST rest call

      {
        "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
        "id":{
          "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
          "id":"-16989787630260306",
          "version":0,
          "typeName":"ComplexEntityTestTable9u3zoazpsj",
          "state":"ACTIVE"
        },
        "typeName":"ComplexEntityTestTable9u3zoazpsj",
        "values":{
          "columns":[
            {
              "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
              "id":{
                "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
                "id":"-16989787630260309",
                "version":0,
                "typeName":"ComplexEntityTestColumn2iv0d87lrb",
                "state":"ACTIVE"
              },
              "typeName":"ComplexEntityTestColumn2iv0d87lrb",
              "values":{
                "name":"column14vqfo3ocvf13"
              },
              "traitNames":[
      
              ],
              "traits":{
      
              },
              "systemAttributes":{
                "createdBy":null,
                "modifiedBy":null,
                "createdTime":null,
                "modifiedTime":null
              }
            },
            {
            	        "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
              "id":{
                "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
                "id":"-16989787630260308",
                "version":0,
                "typeName":"ComplexEntityTestColumn2iv0d87lrb",
                "state":"ACTIVE"
              },
              "typeName":"ComplexEntityTestColumn2iv0d87lrb",
              "values":{
                "name":"column2dofzvezzh12123"
              },
              "traitNames":[
      
              ],
              "traits":{
      
              },
              "systemAttributes":{
                "createdBy":null,
                "modifiedBy":null,
                "createdTime":null,
                "modifiedTime":null
              }
            }
          ],
          "db":{
            "jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
            "id":"bad8c2eb-050e-4dbc-b219-92a5fe850fef",
            "version":0,
            "typeName":"ComplexEntityTestDB2dnlau6arq",
            "state":"ACTIVE"
          },
          "name":"createComplexEntityTablebllw6t3u1x123"
        },
        "traitNames":[
      
        ],
        "traits":{
      
        },
        "systemAttributes":{
          "createdBy":null,
          "modifiedBy":null,
          "createdTime":null,
          "modifiedTime":null
        }
      }
      

      2. Check the response for this POST request. Ideally first the reference entity GUID should be present in entities.created[] array.
      For example:
      IF table1 is created with col1 and col2 then the response object should contain entities.created["col1.GUID", "col2.GUID", "table1.GUID"] but the actual response contains in reverse order. This breaks the exisitng behavior and hence regression

      {
        "requestId": "pool-2-thread-10 - c79079a0-db10-4fa1-8eaa-b088993b23b0",
        "entities": {
          "created": [
            "6797d3c6-ee99-4d97-8fa8-b11d37fe4801",
            "9cc65c33-ab3a-4de3-8b27-3684b6580171",
            "9a29b72c-fb6a-4f54-b4fe-f306da87e383"
          ]
        },
        "definition": {
          "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
          "id": {
            "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
            "id": "6797d3c6-ee99-4d97-8fa8-b11d37fe4801",
            "version": 0,
            "typeName": "ComplexEntityTestTable9u3zoazpsj",
            "state": "ACTIVE"
          },
          "typeName": "ComplexEntityTestTable9u3zoazpsj",
          "values": {
            "columns": [
              {
                "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
                "id": {
                  "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
                  "id": "9cc65c33-ab3a-4de3-8b27-3684b6580171",
                  "version": 0,
                  "typeName": "ComplexEntityTestColumn2iv0d87lrb",
                  "state": "ACTIVE"
                },
                "typeName": "ComplexEntityTestColumn2iv0d87lrb",
                "values": {
                  "name": "column14vqfo3ocvf13"
                },
                "traitNames": [],
                "traits": {},
                "systemAttributes": {
                  "createdBy": "admin",
                  "modifiedBy": "admin",
                  "createdTime": "2017-03-01T12:21:07.574Z",
                  "modifiedTime": "2017-03-01T12:21:07.574Z"
                }
              },
              {
                "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
                "id": {
                  "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
                  "id": "9a29b72c-fb6a-4f54-b4fe-f306da87e383",
                  "version": 0,
                  "typeName": "ComplexEntityTestColumn2iv0d87lrb",
                  "state": "ACTIVE"
                },
                "typeName": "ComplexEntityTestColumn2iv0d87lrb",
                "values": {
                  "name": "column2dofzvezzh12123"
                },
                "traitNames": [],
                "traits": {},
                "systemAttributes": {
                  "createdBy": "admin",
                  "modifiedBy": "admin",
                  "createdTime": "2017-03-01T12:21:07.574Z",
                  "modifiedTime": "2017-03-01T12:21:07.574Z"
                }
              }
            ],
            "db": {
              "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
              "id": {
                "jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
                "id": "bad8c2eb-050e-4dbc-b219-92a5fe850fef",
                "version": 0,
                "typeName": "ComplexEntityTestDB2dnlau6arq",
                "state": "ACTIVE"
              },
              "typeName": "ComplexEntityTestDB2dnlau6arq",
              "values": {
                "name": "dbt85iotfchr"
              },
              "traitNames": [],
              "traits": {},
              "systemAttributes": {
                "createdBy": "admin",
                "modifiedBy": "admin",
                "createdTime": "2017-03-01T11:53:39.024Z",
                "modifiedTime": "2017-03-01T11:53:39.024Z"
              }
            },
            "name": "createComplexEntityTablebllw6t3u1x123"
          },
          "traitNames": [],
          "traits": {},
          "systemAttributes": {
            "createdBy": "admin",
            "modifiedBy": "admin",
            "createdTime": "2017-03-01T12:21:07.574Z",
            "modifiedTime": "2017-03-01T12:21:07.574Z"
          }
        },
        "guidAssignments": {
          "-16989787630260306": "6797d3c6-ee99-4d97-8fa8-b11d37fe4801",
          "-16989787630260309": "9cc65c33-ab3a-4de3-8b27-3684b6580171",
          "-16989787630260308": "9a29b72c-fb6a-4f54-b4fe-f306da87e383"
        }
      }
      

      Attachments

        Activity

          People

            sarath Sarath Subramanian
            ayubpathan Ayub Pathan
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: