[#248] Correct NextVersionIDMarker in listing versions #248

Merged
alexvanin merged 1 commits from dkirillov/frostfs-s3-gw:bugfix/correct_handling_version_id_marker into master 2023-11-01 06:53:55 +00:00
Collaborator

Despite the spec https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html#API_ListObjectVersions_ResponseElements
says that
"When the number of responses exceeds the value of MaxKeys,
NextVersionIdMarker specifies the first object version not returned
that satisfies the search criteria. Use this value for the
version-id-marker request parameter in a subsequent request."
the actual behavior of AWS S3 is returning NextVersionIdMarker as the last returned object version

Signed-off-by: Denis Kirillov d.kirillov@yadro.com

Despite the spec https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html#API_ListObjectVersions_ResponseElements says that "When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker specifies the first object version not returned that satisfies the search criteria. Use this value for the version-id-marker request parameter in a subsequent request." the actual behavior of AWS S3 is returning NextVersionIdMarker as the last returned object version Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
dkirillov self-assigned this 2023-10-25 13:36:01 +00:00
dkirillov force-pushed bugfix/correct_handling_version_id_marker from 9c7843137f to 125739fbbd 2023-10-25 13:36:53 +00:00 Compare
dkirillov added the
bug
label 2023-10-25 13:37:17 +00:00
dkirillov force-pushed bugfix/correct_handling_version_id_marker from 125739fbbd to ff57f64fd6 2023-10-25 13:38:02 +00:00 Compare
dkirillov changed title from WIP: [#XX] Correct NextVersionIDMarker in listing versions to WIP: [#248] Correct NextVersionIDMarker in listing versions 2023-10-25 13:38:18 +00:00
dkirillov changed title from WIP: [#248] Correct NextVersionIDMarker in listing versions to [#248] Correct NextVersionIDMarker in listing versions 2023-10-25 13:40:44 +00:00
dkirillov requested review from storage-services-committers 2023-10-25 13:41:37 +00:00
dkirillov requested review from storage-services-developers 2023-10-25 13:41:38 +00:00
dkirillov force-pushed bugfix/correct_handling_version_id_marker from ff57f64fd6 to a9130d472d 2023-10-25 13:43:03 +00:00 Compare
pogpp approved these changes 2023-10-25 14:01:44 +00:00
dkirillov force-pushed bugfix/correct_handling_version_id_marker from a9130d472d to aa5273294d 2023-10-27 07:59:41 +00:00 Compare

@realloc Last time we discussed differences between S3 specification and AWS behaviour, we've decided to stick with the specification and support behaviour changes as some kludge compatibility flags. Isn't it a good example for that?

@realloc Last time we discussed differences between S3 specification and AWS behaviour, we've decided to stick with the specification and support behaviour changes as some kludge compatibility flags. Isn't it a good example for that?

@dkirillov does minio behave the same?

@dkirillov does minio behave the same?
Poster
Collaborator

@dkirillov does minio behave the same?

Yes, we've found this because of minio test (that pass on minio itself)

> @dkirillov does minio behave the same? Yes, we've found this because of minio test (that pass on minio itself)
Poster
Collaborator

Last time we discussed differences between S3 specification and AWS behaviour, we've decided to stick with the specification and support behaviour changes as some kludge compatibility flags. Isn't it a good example for that?

I'm not sure. What we consider as specification? Examples on page with specifications contradict definitions for parameters on the same page

> Last time we discussed differences between S3 specification and AWS behaviour, we've decided to stick with the specification and support behaviour changes as some kludge compatibility flags. Isn't it a good example for that? I'm not sure. What we consider as specification? Examples on page with specifications contradict definitions for parameters on the same page
dkirillov force-pushed bugfix/correct_handling_version_id_marker from aa5273294d to 5ee73fad6a 2023-10-31 14:36:42 +00:00 Compare

If AWS contradicts the spec and does it the same way across all regions, then we can consider it normal behavior. If it is possible to make this an option toggled by default, then I suggest doing so.

If AWS contradicts the spec and does it the same way across all regions, then we can consider it normal behavior. If it is possible to make this an option toggled by default, then I suggest doing so.

If AWS contradicts the spec and does it the same way across all regions, then we can consider it normal behavior.

Examples on page with specifications contradict definitions for parameters on the same page

All right, I suppose we consider it as expected behavior then and we do not need any kludge flags.

> If AWS contradicts the spec and does it the same way across all regions, then we can consider it normal behavior. > Examples on page with specifications contradict definitions for parameters on the same page All right, I suppose we consider it as expected behavior then and we do not need any kludge flags.
alexvanin approved these changes 2023-11-01 06:53:26 +00:00
alexvanin merged commit 5ee73fad6a into master 2023-11-01 06:53:55 +00:00
alexvanin deleted branch bugfix/correct_handling_version_id_marker 2023-11-01 06:53:55 +00:00
alexvanin added this to the v0.29.0 milestone 2024-05-27 10:20:43 +00:00
Sign in to join this conversation.
There is no content yet.