[
https://issues.apache.org/jira/browse/HDDS-15259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gargi Jaiswal updated HDDS-15259:
---------------------------------
Summary: Ensure PutObjectTagging overwrites existing tags and support empty
tag values for x-amz-tagging header (was: Ensure PutObjectTagging overwrites
existing tags and supports empty tag values)
> Ensure PutObjectTagging overwrites existing tags and support empty tag values
> for x-amz-tagging header
> ------------------------------------------------------------------------------------------------------
>
> Key: HDDS-15259
> URL: https://issues.apache.org/jira/browse/HDDS-15259
> Project: Apache Ozone
> Issue Type: Sub-task
> Reporter: Gargi Jaiswal
> Assignee: Gargi Jaiswal
> Priority: Major
>
> This JIRA addresses two core compliance issues in the *object tagging*
> implementation:
> # *Overwrite vs. Merge:* Currently, tagging operations appear to be merging
> new tags with existing ones. AWS S3 specification requires that
> {{PutObjectTagging}} completely replaces the existing tag set with the new
> one provided in the request. This causes {{test_put_modify_tags on ceph}} to
> fail.
> # *Empty Value Support:* The S3 Gateway validator currently rejects tags
> with an empty value string (e.g., {{{}Key=TagA, Value={}}}) with an
> {{InvalidTag}} error. AWS S3 permits keys to have empty string values. This
> causes {{test_put_obj_with_tags}} to fail.
> *Proposed Fix:*
> 1. Update the internal tagging logic to ensure {{*setTags()*}} is called
> instead of an additive operation, ensuring a full overwrite of the metadata.
> 2. Update *{{validateAndGetTagging()}}* in {{EndpointBase}} to allow values
> with zero length when x-amz-tagging header is present else on normal put
> object tagging this null tag value should fail, while maintaining the
> requirement that the Key must have at least one character.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]