Shush
Shush
ATApache TinkerPop
Created by Shush on 12/17/2023 in #questions
AWS Neptune: Pong fails and close event not emitted
Hi, thanks for replying, so we eventually found a way to fix this, it has to do with how the library for neptune is set up, it has a ping interval of 1 second and a pong timeout of 2, and it seems to not close it properly when the pong times out. So we hacked the library and added code that terminates the websocket and then the client from within, and increased the ping interval to 6 and pong timeout to 3 (so the ping and pong intervals are always correctly pointed towards). Fixing those fixed the issue for good.
5 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Haven't tried yet, I've been hanging with AWS reps all day (via the ticket and a chime meeting). I might try later today.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Here is the profile, had to send it like this as it's too big for Discord posts.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Hey, now that profile works for me, I managed to reproduce the issue. What I did was make it so all change edges that should be affected would be set to new in their state. After running the full query, it ran successfully. After checking, the change edges are still new rather than published.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Man, I've been trying for like 30 minutes to get it to work, and realized that python is splitting the accept: application/json with a space after : (I didn't have a space). Seems like it works now though, thanks!
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
I will try again tomorrow, I might have been doing a silly mistake somewhere.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Additionally, I've opened a ticket to AWS, which includes most of the information shown here. DM'd you the ticket ID.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Hey, some update: I've been struggling for a while to use the profiler. For some reason I'm always getting a failure message related to the profile serializer. I've tried multiple serializers, all of which give me the same error:
bash-5.0# awscurl -X POST my-neptune-endpoint:8182/gremlin/profile -d '{"gremlin":"g.V().count()", "profile.serializer":"application/json"}' --region eu-west-1 --service neptune-db
{"requestId":"03e08a2a-f5e3-4881-91a4-6de26432a3a5","code":"UnsupportedOperationException","detailedMessage":"no serializer for requested Accept header: application/xml"}
Traceback (most recent call last):
File "/usr/bin/awscurl", line 8, in <module>
sys.exit(main())
File "/usr/lib/python3.8/site-packages/awscurl/awscurl.py", line 521, in main
inner_main(sys.argv[1:])
File "/usr/lib/python3.8/site-packages/awscurl/awscurl.py", line 515, in inner_main
response.raise_for_status()
File "/usr/lib/python3.8/site-packages/requests/models.py", line 1021, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: my-neptune-endpoint:8182/gremlin/profile
bash-5.0# awscurl -X POST my-neptune-endpoint:8182/gremlin/profile -d '{"gremlin":"g.V().count()", "profile.serializer":"application/json"}' --region eu-west-1 --service neptune-db
{"requestId":"03e08a2a-f5e3-4881-91a4-6de26432a3a5","code":"UnsupportedOperationException","detailedMessage":"no serializer for requested Accept header: application/xml"}
Traceback (most recent call last):
File "/usr/bin/awscurl", line 8, in <module>
sys.exit(main())
File "/usr/lib/python3.8/site-packages/awscurl/awscurl.py", line 521, in main
inner_main(sys.argv[1:])
File "/usr/lib/python3.8/site-packages/awscurl/awscurl.py", line 515, in inner_main
response.raise_for_status()
File "/usr/lib/python3.8/site-packages/requests/models.py", line 1021, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: my-neptune-endpoint:8182/gremlin/profile
(for the sake of censure, I changed my endpoint to my-neptune-endpoint).
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Looks good, I wonder if you need any non-change edge as well. We have a lot of edges that are also affected. They have a similar structure to change, with tenantId and session properties
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Will do. Thank you for doing this test.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Most appreciated. I will supply the profile on Sunday.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
As a side note: we have a lot of union calls and they all work fine. The only big thing I can see is that those unions are being done on vertices and they work, while this one is pure edges. Maybe it has something do with it?
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
In the meantime, can you please check if there are known issues with UnionStep at the latest version? I tried finding bug trackers or anything that could hint at what known issues there are to identify the issue.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Thank you. This is probably not simple to do with my permissions - I will have to talk to DevOps and ask them to do this. As it is the end of the week for me (in Israel we work Sunday to Thursday), it will have to wait to Sunday next week. I will share it as soon as I can.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Fixed.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Oh, my notepad is removing those __ because of markdown. I'll fix the query, just a few minutes.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
Thank you for your response. Let me answer one by one:
Are you able to share the Neptune query profiles for the two non working ones.
Not sure what a query profile is - can you elaborate?
Just to clarify, you are seeing no errors?
Correct. The response returns successfully. Both by code and by running this via a CLI client we set up that sends commands to the server. It is as if it ran an empty response.
Also, are those the exact queries? I ask as this is not valid Gremlin grammar:
Oops, editing mistake - the query is valid, it's the copy paste here that had the improper values. It did scream at me for a wrong syntax a few times and I fixed it.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
update: we upgraded to 1.2.1.0, since the patch notes show 2 UnionStep bug fixes. However in this version the issue persists.
34 replies
ATApache TinkerPop
Created by Shush on 4/20/2023 in #questions
Testing new Neptune version
To be clear - query is 4-5 years old by now and is part of a main flow - we know it worked for a long time prior to the upgrade.
34 replies