node.jsneo4jcypheramazon-neptunebolt

Query Neptune nodes with Cypher not working in Node.js


I'm using Neptune version 1.0.5.0 with the bolt+s protocol.
I've run the following query: MATCH (n) return n limit 1
with Node.js neo4j latest driver (4.3) and getting the following error:

Neo4jError: "Unexpected server exception 'Data type unsupported in Bolt in current release  
http://www.w3.org/2001/XMLSchema#dateTime'"  
:  
at captureStacktrace (result.js:239:17)  
at new Result (result.js:59:23)  
at Session._run (session.js:165:16)  
at Session.run (session.js:131:21)  

code:

const session = db.getSession();
try {
    const result = await session.run(query);
    ...

While the same code works with a local Neo4j server.
In addition, running: MATCH (n) return n.myprop limit 1 works with Neptune.
Any help will be appreciated.


Solution

  • According to the error message, it looks like the node being returned contains a datetime property and in the 1.0.5.0R0 release of openCypher for Neptune returning of datetime properties is not yet supported via the Bolt connected. Returning datetime values is currently supported using the HTTPS endpoint as described here: https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher-queries.html