Skip to content

Conversation

@Gargi-jais11
Copy link

@Gargi-jais11 Gargi-jais11 commented Jan 25, 2026

What changes were proposed in this pull request?

https://ozone-site-v2.staged.apache.org/docs/core-concepts/namespace/volumes/owners
This v2 doc page is filled with the content for Volume owners.

Add Volume Owners documentation, covering:

  • Owner property and identification
  • Setting and changing volume ownership
  • Owner privileges and ACL bypass behavior
  • Storage accounting and volume limits
  • Owner vs. Administrator distinction

What is the link to the Apache Jira?

https://issues.apache.org/jira/browse/HDDS-14461

How was this patch tested?

Check off which of the following tests were done on this change. If additional testing was done, please elaborate here as well.

  • The CI checks on my fork are passing
  • I verified the rendered content using a local preview
  • I manually verified the steps provided in this change work as described

@Gargi-jais11
Copy link
Author

I have documented about Volume Owners as per understanding. Please correct or suggest any add-ons needed to be done.

</property>
```
## 4. Volume Owner vs. Volume Administrator
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

actually i'm not so sure about this.
volume has an admin and an owner field. But the admin field doesn't seem to be used by OM.

I thought it was used to implement S3 multi-tenant, but multi-tenant doesn't use this either. So I really struggle.

@smengcl do you happen to know this?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I revisited the code implementation and on that basis, the adminName field in OmVolumeArgs appears to be stored but not functionally used by OM for athorization or access control.
It seems that all authorization checks use ownerName (via getVolumeOwner()), Ozone cluster admins check (via isAdmin()), or ACLs. There's no setVolumeAdmin operation, and adminName is never checked in the authorization path (OzoneNativeAuthorizer, VolumeManager, etc.).

Is it possible that this is a legacy code or reserved for future use. This finding put me in doubt that does adminName has any functional purpose?
Once this is confirmed I will update the document accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants