Ivan Andika created HDDS-10066:
----------------------------------
Summary: Consolidate and tests 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
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:
* PrefixManagerImpl should not update the Prefix table entry directly. This is
because all write needs to go through OM Table Cache.
** The update to prefix table on PrefixManager is valid if ratis is not
enabled.
** [-SPDI-110974-|https://jira.shopee.io/browse/SPDI-110974] wrongly updated
the prefix table even if ratis is enabled.
** We have to revert this change.
* 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
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]