-
Notifications
You must be signed in to change notification settings - Fork 864
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
DynamoDB Local conflicts with Kotlin #4213
Comments
@vgiguere I'll reach out to the DynamoDB Local team. But will close this issue, as there's no pending actions from the Java SDK team. |
|
That's not a nice way to treat customers if you ask me. Why close the issue instead of keeping me in the loop using this ticket? There is no way to reach out to DynamoDBLocal team except through this repo and then you close the issue. |
@vgiguere reopening. I understand there's no channel of communication with the DynamoDB Local team. Every time we get a Github issue that is service related, we reach out to the service team. I closed this issue because it's not a feature request for the Java SDK itself, so the decision to accept it does not depend on the Java SDK team. Getting a decision from the service teams can take time and we can't control it, so closing this issue means the Java SDK team doesn't have to monitor this indefinitely. I'm ok with keeping this open until we get a response from the DynamoDB Local team saying if they will support it or not - but will not keep it open until the change is released, if they decide to support it. What do you think? |
Thanks. I appreciate your help @debora-ito . To answer your question, I am perfectly fine with your idea of allowing the conversation but not tracking the work. Since you work at AWS, maybe you can submit to DynamoDBLocal team the idea of creating a forum/ticket system for their clients? It's an important tool for any company that is serious about testing DynamoDB access control/queries/repos etc. etc.. |
Just a reminder that you can talk to the service team if you have access to a Premium Support plan - With a Premium Support plan you'll work with a support engineer that is dedicated to your case, talk to the service team directly and have a faster turnaround between questions. But you probably know that. |
Was there a response from DynamoDBLocal team? |
@vgiguere Are you open for a discussion with the DynamoDB local team? You can reach us here: aws-workbench-feedback@amazon.com and we will find a time that works. |
There's a new channel of communication with the DynamoDB Local team, it's their own Github repo: They are tracking this specific issue with Kotlin core libs in here: awslabs/amazon-dynamodb-local-samples#15. Please use this link to track progress going forward. |
This issue is now closed. Comments on closed issues are hard for our team to see. |
Describe the bug
DynamoDBLocal-1.X and 2.0 come compiled with overrides of kotlin classes defined in kotlin core libs. It creates conflicts and prevents DynamoDBLocal from being used in Kotlin applications.
Similar issues have been opened on this in the past, it was decided not to fix it.
I am kindly asking to reconsider this decision because it is blocking kotlin users, which is a fast growing community, from using DynamoDBLocal in their kotlin apps for integration tests etc. I work for a major client of AWS and it is impacting us.
The error we get is:
`
An attempt was made to call a method that does not exist. The attempt was made from the following location:
The following method did not exist:
The calling method's class, aws.smithy.kotlin.runtime.http.operation.SerializeHandler, was loaded from the following location:
The called method's class, kotlin.time.TimeSource$Monotonic, is available from the following locations:
`
Can you simply do as suggested by @rafalwrzeszcz in this now defunct thread: #2487 and create 2 distributions of DynamoDBLocal.jar
That would be very much appreciated ;)
Expected Behavior
I expect to be able to use DynamoDBLocal-2.X in a kotlin application that packages the kotlin-stdlib-X.jar in its class path for integration tests without running into this unrecoverable error:
Current Behavior
`
An attempt was made to call a method that does not exist. The attempt was made from the following location:
The following method did not exist:
The calling method's class, aws.smithy.kotlin.runtime.http.operation.SerializeHandler, was loaded from the following location:
The called method's class, kotlin.time.TimeSource$Monotonic, is available from the following locations:
`
Reproduction Steps
Build integration tests on a kotlin application that is dependant on kotlin-stdlib and on DynamoDBLocal
Possible Solution
As suggested by use @rafalwrzeszcz in this now defunct thread: #2487 :
Create 2 distributions of DynamoDBLocal.jar
Additional Information/Context
No response
AWS Java SDK version used
latest
JDK version used
java 17, Kotlin 1.8
Operating System and version
Mac OS 13.4
The text was updated successfully, but these errors were encountered: