-
Notifications
You must be signed in to change notification settings - Fork 301
Bump aws-sdk-cpp
to 1.18.105
#1226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
case Aws::Http::HttpResponseCode::REQUESTED_RANGE_NOT_SATISFIABLE: | ||
TF_SetStatus(status, TF_OUT_OF_RANGE, "Read less bytes than requested"); | ||
break; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not sure if this is correct or not since the old code already supported REQUESTED_RANGE_NOT_SATISFIABLE = 416
. WDYT @yongtang ?
io/tensorflow_io/core/plugins/s3/s3_filesystem.cc
Lines 507 to 512 in 9b5e233
// SECTION 4. Implementation for `TF_Filesystem`, the actual filesystem | |
// ---------------------------------------------------------------------------- | |
// TODO: use_multi_part_download=true will cause an issue when read request | |
// is asking for bytes larger than object size. In that case, a status code of | |
// 416 is returned. However, 416 is not handled correctly and s3 thought this | |
// is an error - should return OUT_OF_RANGE with less bytes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vnvo2409 The switch is controlled in:
use_multi_part_download(false), // TODO: change to true after fix |
You can change the default value to true
and see if the issue is resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am investigating this issue tensorflow/tensorflow#44564. Let's leave it for another PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tensorflow/tensorflow#44564 is resolved. We could enable this option
48ab23a
to
5aaf40d
Compare
96f2749
to
49f329b
Compare
@yongtang |
@vnvo2409 The crash could be caused by duplicate symbols between aws and arrow library? Though I am not quite sure. It seems to be happening on Linux only. Could you try split the PR into two PRs with one PR for aws-sdk-cpp to 1.18.105 and another PR for other changes like In the meantime, I am trying to update the arrow library from 0.16.0 to 2.0.0 in #1231. We need to update arrow library anyway so I think it makes sense to see if updating arrow will resolve the aws+arrow issue. |
7ba27f5
to
ad0194c
Compare
I already rebase to pickup the arrow update but it still failed. Do you have any idea what I should do next @yongtang ? Thank you very much ! |
@vnvo2409 The Linux build on GitHub Actions is in: There are two difference in between the GitHub Actions and the normal
I tends to believe optimization (1) is the factor though I cannot exclude (2) yet. Will take a look. |
ad0194c
to
77f3075
Compare
0f3e1a4 fixes a ssl support problem on Mac because |
1beaf9b
to
0f3e1a4
Compare
I build it separately and it seems fine without any issue. I doubt that it somehow conflicts with the |
@vnvo2409 Ah that might explain the segment as there are actually two copies of AWS C++ sdk. One is in tensorflow and another is in tensorflow-io. And they are with different versions. If the AWS C++ SDK on both tensorflow-io and tensorflow are updated to the same version then it might be OK (as two copies with same version).. Or if we remove the one from tensorflow (so that there is only one version) then it might also be OK I guess. |
0f3e1a4
to
f237e50
Compare
Sorry. I'm still stuck at the segfault. I think I will try this PR again when |
This PR:
aws-sdk-cpp
to 1.18.105aws-sdk-cpp
ENABLE_CURL_LOGGING
TF_SetStatusFromAWSError
RecursivelyCreateDir
now callsCreateDir
instead of relying on TensorFlow fallback. ( Not really a breaking change though )Part of #1183