[ 
https://issues.apache.org/jira/browse/HDDS-13920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chu Cheng Li updated HDDS-13920:
--------------------------------
    Description: 
See release 2.37.0 (Add conditional writes in CopyObject on destination key to 
prevent unintended object modifications.

—

 
h4. Headers

h5. If-Match: <etag> - Returns object only if ETag matches
- Returns `412 Precondition Failed` if ETag doesn't match

h5, If-None-Match: <etag> - Returns object only if ETag doesn't match
- Returns `304 Not Modified` if ETag matches

h5. If-Modified-Since: <timestamp> - Returns object only if modified after 
timestamp
- Returns `304 Not Modified` if not modified

h5. If-Unmodified-Since: <timestamp> - Returns object only if not modified 
since timestamp
- Returns `412 Precondition Failed` if modified

h4.  Evaluation Order
1. If-Match is evaluated first
2. If-Unmodified-Since is evaluated next
3. If-None-Match is evaluated
4. If-Modified-Since is evaluated last

If multiple conditions are present, they must all be satisfied.

h4. Error Codes
- **304 Not Modified** - For If-None-Match and If-Modified-Since failures 
(cache hits)
- **412 Precondition Failed** - For If-Match and If-Unmodified-Since failures

  was:
See release 2.37.0 (Add conditional writes in CopyObject on destination key to 
prevent unintended object modifications.

---

Headers
* If-Match: - Returns object only if ETag matches
    * Returns 412 Precondition Failed if ETag doesn't match
* If-None-Match: - Returns object only if ETag doesn't match
    * Returns 304 Not Modified if ETag matches
* If-Modified-Since: - Returns object only if modified after timestamp
    * Returns 304 Not Modified if not modified
* If-Unmodified-Since: - Returns object only if not modified since timestamp
    * Returns 412 Precondition Failed if modified

Evaluation Order
1. If-Match is evaluated first
2. If-Unmodified-Since is evaluated next
3. If-None-Match is evaluated
4. If-Modified-Since is evaluated last

If multiple conditions are present, they must all be satisfied.

Error Codes
* 304 Not Modified - For If-None-Match and If-Modified-Since failures (cache 
hits)
* 412 Precondition Failed - For If-Match and If-Unmodified-Since failures


> Conditional Reads (GetObject, HeadObject)
> -----------------------------------------
>
>                 Key: HDDS-13920
>                 URL: https://issues.apache.org/jira/browse/HDDS-13920
>             Project: Apache Ozone
>          Issue Type: Sub-task
>          Components: Ozone Manager, s3gateway
>            Reporter: Chu Cheng Li
>            Assignee: Chu Cheng Li
>            Priority: Major
>
> See release 2.37.0 (Add conditional writes in CopyObject on destination key 
> to prevent unintended object modifications.
> —
>  
> h4. Headers
> h5. If-Match: <etag> - Returns object only if ETag matches
> - Returns `412 Precondition Failed` if ETag doesn't match
> h5, If-None-Match: <etag> - Returns object only if ETag doesn't match
> - Returns `304 Not Modified` if ETag matches
> h5. If-Modified-Since: <timestamp> - Returns object only if modified after 
> timestamp
> - Returns `304 Not Modified` if not modified
> h5. If-Unmodified-Since: <timestamp> - Returns object only if not modified 
> since timestamp
> - Returns `412 Precondition Failed` if modified
> h4.  Evaluation Order
> 1. If-Match is evaluated first
> 2. If-Unmodified-Since is evaluated next
> 3. If-None-Match is evaluated
> 4. If-Modified-Since is evaluated last
> If multiple conditions are present, they must all be satisfied.
> h4. Error Codes
> - **304 Not Modified** - For If-None-Match and If-Modified-Since failures 
> (cache hits)
> - **412 Precondition Failed** - For If-Match and If-Unmodified-Since failures



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to