Open nicholasoxford opened 1 month ago
I think this is more of an issue of not being able to connect with neo4j+s no matter what I try, neo4j+s login works on workspace preview with the same url, username, and password
Any ideas?
After reserach it looks to only happen when using Bun!
@nicholasoxford, when you move to the paid version, you can start to run use a cluster environment which only one of the nodes can performs write.
So, for this scenarios:
session.executeRead
, session.executeWrite
and driver.executeQuery
for running queries. Theses methods are considered cluster safe and they have retries in place.@bigmontz when using executeWrite, with bolt+s, I am still getting the issue with both Node and Bun
To make it more clear: When using Bun, I am unable to use neo4j+s connections at all. The connection simply hangs, if I use node I am able to write using neo4j+s url
In cluster environments, you should use neo4j+s
, otherwise the queries will not be routed to the correct cluster member.
@bigmontz https://github.com/oven-sh/bun/issues/12772#issuecomment-2284124618
I pulled this library and started debugging where Bun was getting hung up compared to node, was def an interesting rabbit hole
I am using neo4j+s, the problem is it doesn't work with Bun when using an aura cluster. You can check my scripts, maybe this library could make changes to accommodate Bun, for example the "net" library hasn't been updated in 11 years, but I think that is asking too much of y'all
I am not the only person to run into this issue: https://github.com/oven-sh/bun/issues/9914
Bug Report
After upgrading to a paid tier and when calling
with graphDB coming from
I am getting the error:
Neo.ClientError.Cluster.NotALeader
about 50% of the timeI am currently using the bolt connection. Reading online it seems like I should be using
neo4j+s
connections, which I have tried both locally and in production with no success. I get this info from the get gothen when I try to query the database I get
My url is in this format
GRAPH_DB_URL="neo4j+s://<DID>.databases.neo4j.io"
Here is where I am acquiring the session, I am assuming the name of the database is neo4j, I understand if I dont pass anything it just makes a call to look it up
How can I force it to write to the leader? Is there something wrong with how I am trying to connect?
My Environment
Javascript Runtime Version: Bun 1.20 Driver Version: 5.22.0 Neo4j Version and Edition: Neo4J Aura