[
https://issues.apache.org/jira/browse/HDDS-10066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Attila Doroszlai resolved HDDS-10066.
-------------------------------------
Fix Version/s: 1.5.0
Resolution: Implemented
> Consolidate and test the Ratis write path for prefix ACL
> --------------------------------------------------------
>
> Key: HDDS-10066
> URL: https://issues.apache.org/jira/browse/HDDS-10066
> Project: Apache Ozone
> Issue Type: Improvement
> Components: OM
> Reporter: Ivan Andika
> Assignee: Ivan Andika
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.5.0
>
>
> While working on Prefix ACL, it's found that there are very little tests on
> Prefix ACL OM HA request and response flow. We need to add more tests for
> prefix ACL.
> There are also identified possible bugs that might have be a problem in the
> future. They are:
> * It's found that OmPrefixInfo and PersistedPrefixInfo do not store and load
> the updateID and the objectID from DB correctly
> ** We need to add the object ID and updateID in the prefix codec process.
> * UpdateID stored in the OmPrefixInfo on the in-memory prefix tree are not
> updated
> ** In OMPrefixAclRequest, the setUpdateId is called after the we apply the
> ACL operation to the prefix tree (through PrefixManager), this causes
> OmPrefixInfo update ID to be different than the one in the OM DB
> ** We need set the update ID to OmPrefixInfo before we apply the ACL
> operation to the prefix tree, so that it will be reflected as well.
> * PrefixManager only updates the OmPrefixInfo in the prefix tree for ACL
> operations that changes underlying ACLs
> ** If there is no changes in the underlying ACL (e.g. adding existing ACL),
> the prefix tree will not be updated
> ** However, under the OM HA write flow, every request will update the
> updateID
> ** Therefore, we need to update the prefix tree regardless whether the ACL
> operation results in ACL change
> * Add prefix object validation in OMPrefixAclRequest#validateAndUpdateCache
> ** This will fix the issue in HDDS-8157 which was caused by HDDS-6964
> ([HDDS-6964. [Snapshot] Split out shared "Path based access" code from OM.
> #3653|https://github.com/apache/ozone/pull/3653])
> ** The exception assertion will be added back to
> {{TestKeyManagerImpl#testInvalidPrefixAcl}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]