You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ranger.apache.org by "Madhan Neethiraj (JIRA)" <ji...@apache.org> on 2015/09/24 07:19:04 UTC

[jira] [Assigned] (RANGER-663) Race condition during policy update causes policy to get in an bad state

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

Madhan Neethiraj reassigned RANGER-663:
---------------------------------------

    Assignee: Madhan Neethiraj

> Race condition during policy update causes policy to get in an bad state
> ------------------------------------------------------------------------
>
>                 Key: RANGER-663
>                 URL: https://issues.apache.org/jira/browse/RANGER-663
>             Project: Ranger
>          Issue Type: Bug
>          Components: admin
>    Affects Versions: 0.5.0
>            Reporter: Alok Lal
>            Assignee: Madhan Neethiraj
>            Priority: Critical
>             Fix For: 0.5.1, 0.6.0
>
>
> If two threads try to update one policy simultaneously then it can cause {{x_policy_resource}} table to have multiple values for a given {{policy_id, res_def_id}} combination.  When database gets in this state then that policy can't be read until the {{x_policy_resource_map}} and {{x_policy_resource}} tables are manually cleared up.
> To reproduce the problem: from two separate shells, update the same policy using REST call in a tight loop. Soon the update calls will return failure with status code 400. At this point the policy is in a bad state in the database. After this point any attempt to update or read the policy will result in failure.
> Expectation is that in case of simultaneous update only one update should succeed other should fail.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)