atlas-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ashutosh Mestry (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (ATLAS-1889) Failure in simultaneous updates to an entity tag association
Date Wed, 21 Jun 2017 05:59:00 GMT

     [ https://issues.apache.org/jira/browse/ATLAS-1889?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Ashutosh Mestry updated ATLAS-1889:
-----------------------------------
    Description: 
*Background*
When multiple requests simultaneously attempt to change the tags associated with an entity,
the current implementation might result in APIs returning fewer tags for the entity than is
actually associated.

The problem thus causes UI not to behave correctly.
 
*Solution*
Implements a synchronization mechanism.
 
Steps to duplicate the problem:
* Create several tags. Eg. tag1, tag2, tag3, tag4.
* Attach these tags to and entity say ‘testtable1’
* Use the following CURL commands to delete the tags:
{code}
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag1'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag2'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag3'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag4'
 -H 'Content-Type: application/json'
{code}

You will notice that entity _testtable1_ ends up with some tags not deleted.
Additional querying with gremlin will show that the edges are deleted correctly.


  was:
*Background*
When multiple requests simultaneously attempt to change the tags associated with an entity,
the current implementation might result in APIs returning fewer tags for the entity than is
actually associated.

The problem thus causes UI not to behave correctly.
 
*Solution*
Implements a synchronization mechanism.
 
Steps to duplicate the problem:
* Create several tags. Eg. tag1, tag2, tag3, tag4.
* Attach these tags to and entity say ‘testtable1’
* Use the following CURL commands to delete the tags:
_curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag1'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag2'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag3'
 -H 'Content-Type: application/json' &
curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag4'
 -H 'Content-Type: application/json'
_ 
You will notice that entity _testtable1_ ends up with some tags not deleted.
Additional querying with gremlin will show that the edges are deleted correctly.



> Failure in simultaneous updates to an entity tag association
> ------------------------------------------------------------
>
>                 Key: ATLAS-1889
>                 URL: https://issues.apache.org/jira/browse/ATLAS-1889
>             Project: Atlas
>          Issue Type: Bug
>          Components:  atlas-core
>    Affects Versions: 0.8-incubating
>            Reporter: Ashutosh Mestry
>            Assignee: Ashutosh Mestry
>             Fix For: trunk, 0.8.1-incubating
>
>
> *Background*
> When multiple requests simultaneously attempt to change the tags associated with an entity,
the current implementation might result in APIs returning fewer tags for the entity than is
actually associated.
> The problem thus causes UI not to behave correctly.
>  
> *Solution*
> Implements a synchronization mechanism.
>  
> Steps to duplicate the problem:
> * Create several tags. Eg. tag1, tag2, tag3, tag4.
> * Attach these tags to and entity say ‘testtable1’
> * Use the following CURL commands to delete the tags:
> {code}
> curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag1'
 -H 'Content-Type: application/json' &
> curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag2'
 -H 'Content-Type: application/json' &
> curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag3'
 -H 'Content-Type: application/json' &
> curl -X DELETE -u admin:admin 'http://localhost:21000/api/atlas/entities/a2d0b023-aafe-4ddd-bb90-65164af8796c/traits/tag4'
 -H 'Content-Type: application/json'
> {code}
> You will notice that entity _testtable1_ ends up with some tags not deleted.
> Additional querying with gremlin will show that the edges are deleted correctly.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message