devmadhuu commented on code in PR #11229:
URL: https://github.com/apache/ozone/pull/11229#discussion_r4292430883
##########
hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/util/S3Consts.java:
##########
@@ -131,6 +131,11 @@ public final class S3Consts {
/** Request header carrying the list of object attributes to return. */
public static final String OBJECT_ATTRIBUTES_HEADER =
"x-amz-object-attributes";
+ // S3 storage class values passed via the `x-amz-storage-class` request
header.
+ public static final String S3_STORAGE_CLASS_STANDARD = "STANDARD";
+ public static final String S3_STORAGE_CLASS_STANDARD_IA = "STANDARD_IA";
+ public static final String S3_STORAGE_CLASS_GLACIER = "GLACIER";
+
Review Comment:
Thanks @xichen01, you're right, and I had it wrong. OM resolves the policy
in OMKeyCreateRequest.preExecute (key, then bucket, then
OzoneStoragePolicy.getDefaultPolicy()) and writes it back into KeyArgs, so
every new key stores a policy. That includes keys in buckets with no policy,
which get the default, WARM. Only keys written before the feature have null.
Thanks @Gargi-jais11 and @SaketaChalamchala for +1 to proposal. So the
reverse direction just reads the key's own replication and storage policy. The
rule stays lenient: replication decides the class, and only COLD changes it.
null falls back to replication, as today.
This means mapping STANDARD to HOT through the gateway setting doesn't
change what any object reports. Old keys (RATIS/THREE + null) and new ones
(RATIS/THREE + HOT or WARM) all report STANDARD. It only changes where new
STANDARD writes go. To keep that true, the setting will accept HOT, WARM or
unset for STANDARD/REDUCED_REDUNDANCY, but not COLD.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]