-
Notifications
You must be signed in to change notification settings - Fork 58
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
SDK doesn't upload Complex objects to S3 if the input object of a mutation has fields which are of type "S3ObjectInput" #11
Comments
Same problem here. |
Hi @SudarAbisheck Thanks for reporting this. You are right, currently the SDK checking in limited ways about determining if there is complex object present in the mutation. We can surely enhance the checking mechanism. To make sure we add the right checks, could you elaborate what is your use-case currently? Is the 2nd example which you posted in the issue the exact use-case which you have? Thanks, |
I can see that issue hasn't been fixed yet. Still, the SDK just checks the query document for the term
The same issue exists in the iOS SDK as well. awslabs/aws-mobile-appsync-sdk-ios#45 |
Issue still exists - Instead of checking the S3ObjectInput string in the document, we should be looping through the input variables, and check if any is |
+1 |
@SudarAbisheck @igormatheus22 @janejjshen @motae99 |
@SudarAbisheck @igormatheus22 @janejjshen @motae99 Version 2.7.3 of the SDK contains the fixes for this issue. Please upgrade to this version and let us know how you it goes. |
Seems to work out quite nicely! Thanks! Need the following code when initializing the
Is there an equivalent way to download an S3 object automatically? Or do I still need to use the TransferUtility and call download explicitly? |
Hi @janejjshen , Yes, you will still need to manage the download of the S3 object. We are closing this issue because there has been confirmation the fix is working. Please feel free to open a new issue if the problem persists. We ask this because closed issues are not actively monitored. Thanks |
I'm really stuck here, after adding this line |
|
The SDK uploads Complex objects to S3 only if the query document has the text "S3ObjectInput" [1].
However, the text "S3ObjectInput" will be only present in the query document only if the input object of the mutation is of type "S3ObjectInput".
The query document will not have the word "S3ObjectInput" in cases like the following. Here,
UserInput
has another object calledpic
which is of type 'S3ObjectInput`.The
getS3ComplexObject(..)
function checks for these kind of cases recursively [2]. However, due to the above issue, this part of the code never gets executed. Also, it checks for "S3ObjectInput" objects only inside aMap
and doesn't check insideList
.The text was updated successfully, but these errors were encountered: