Comparing HA and Causal Clusters

The legacy HA cluster mode has been deprecated as of Neo4j version 3.5, and will be totally removed from the product in version 4.0, with 4.0 expected to be released near the end of 2019. Additionally, per Neo4j support terms,… Read more →

Explore:  


Explanation of “Failed to update routing table with server” error

If you encounter a Failed to update routing table with server error in their $NEO4J_HOME/logs/debug.log similar to: ERROR 1 — [o4jDriverIO-5-2] LoadBalancer : Failed to update routing table. Current routing table: Ttl 1582554193442, currentTime 1582554193471, routers AddressSet=[], writers AddressSet=[], readers… Read more →

Explore:  


How to resolve Python Bolt Driver when executed gives an error “(“Failed to establish connection to {!r}”.format(address))”

Take the example of Python with the latest Bolt driver 1.2. Here is the sample code from neo4j.v1 import GraphDatabase uri = “bolt://localhost:7687” driver = GraphDatabase.driver(uri, auth=(“neo4j”, “Password”)) and when run it gives the following error: Traceback (most recent call… Read more →

Explore:  


How do I display the REST code from the 3.0 Browser

In Neo4j 3.0 and its implementation of the Bolt protocol, requests submitted via the browser (http://localhost:7474) are submitted using Bolt. From the results frame, on the bottom left, you can click on the </> Code icon to see the response… Read more →

Explore:  


Linkurious bolt configuration

Default Linkurious configuration contains the following snippet in the production.json configuration file: dataSources”: [ { “readOnly”: false, “graphdb”: { “vendor”: “neo4j”, “url”: “http://127.0.0.1:7474”, “user”: null, “password”: null }, “index”: { “vendor”: “elasticSearch”, “host”: “127.0.0.1”, “port”: 9201, “forceReindex”: false, “dynamicMapping”: false,… Read more →

Explore:  


Limiting Bolt Threads vs Connections

Given high levels of read/write transaction requests, some ingress transactions may be rejected by the Neo4j server and the below error may be reported in the Neo4j debug.log: ERROR [o.n.b.r.MetricsReportingBoltConnection] Unable to schedule bolt session <session_id> for execution since there… Read more →

Explore:  


How Does Neo4j Browser interact with Neo4j Server?

Starting with Neo4j 3.2, the Neo4j Browser only supports Bolt connectivity to the Neo4j Server. This requires that the network allows for socket communication between the browser and Bolt Port specified on the Neo4j Server. To see if your network… Read more →

Explore:  


Throttling Bolt Requests

When large amounts of data are sent between a Neo4j database and a client (typically large query results, from server to client), there are a few hidden throttling mechanisms that may come into play. TCP Throttling Bolt connections between a… Read more →

Explore:  


Explanation of error “WebSocket connection failure. Due to security constraints in your web browser, the reason for the failure is not available to this Neo4j Driver…​

In Neo4j 3.0 and its implementation of the Bolt protocol, if a remote browser connects to Neo4j (http://<remote_neo4j_host>:7474) and attempts to authenticate, the following error may be encountered: WebSocket connection failure. Due to security constraints in your web browser, the… Read more →

Explore:  


java.lang.OutOfMemoryError: unable to create new native thread

When a client application establishes a session with a Neo4j server via the bolt or bolt+routing protocols, the server allocates a thread to serve as the server-side bolt worker to handle that connection. There is no server-side limitation on the… Read more →

Explore:  


Explanation of error “Failed to obtain connection towards WRITE server. Known routing table is: Ttl…​”

In Neo4j 4.0, if you are logged into the READ_REPLICA of a Causal Cluster, and execute the following command to login into cypher-shell: $NEO4J_HOME/bin/cypher-shell -u neo4j -p mypwd You will encounter this error: Failed to obtain connection towards WRITE server.… Read more →

Explore:  


Why did I get the “Kernel API returned non-existent relationship type: -1” exception?

In rare situations, the Neo4j Bolt driver throws an IllegalStateException. The top part of the stack appears as: java.lang.IllegalStateException: Kernel API returned non-existent relationship type: -1 at org.neo4j.kernel.impl.factory.GraphDatabaseFacade.getRelationshipTypeById(GraphDatabaseFacade.java:991) Under the covers, this is what happens. The getRelationshipTypeById(int type) method is… Read more →

Explore:  


Connecting via Bolt when using Tunnelling or NAT

This article aims to provide a method to connect to the Neo4j database over bolt, via Neo4j browser where the bolt host is different from the IP of the instance itself and, in cases where the bolt host IP/port is… Read more →

Explore: