Shawn McKinney created FC-325:
---------------------------------

             Summary: Research LDAP Transactions
                 Key: FC-325
                 URL: https://issues.apache.org/jira/browse/FC-325
             Project: FORTRESS
          Issue Type: Improvement
    Affects Versions: 3.0.0
            Reporter: Shawn McKinney


The need can be made by looking at the code. Perhaps the biggest (worst) 
example is when deleting a role. In RBAC, the role binds the user with the 
permission. It necessarily has relationships in the data model. Hier data 
storage means the DAO must remove the relationships before removing the entity. 
This is done via code. (No automatic ways of doing this as in relational models)

So, if something goes wrong, there is no way of rolling back the list of items 
that were changed (before the fault). 

This can be fixed by using transactions. Both OpenLDAP and Apache DS support 
them (to some extent). Here will be details of the research. Eventually, a 
proposed design will be shared.

Code Example(antipattern):

- 
[AdminMgrImpl.deleteRole](https://github.com/apache/directory-fortress-core/blob/master/src/main/java/org/apache/directory/fortress/core/impl/AdminMgrImpl.java#L295)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@directory.apache.org
For additional commands, e-mail: dev-h...@directory.apache.org

Reply via email to