Neo4j (with Docker) Version: 3.1.7
Operating System: Xubuntu 16.04
API: Python
Created Neo4j Docker with the following:
sudo docker run
--restart=unless-stopped
--memory=9g
--net=dnet01 --ip=1*** 1
--volume=/production/data/neo4j/db:/var/lib/neo4j/data
--volume=/production/analytics/Docker/neo4j/conf:/var/lib/neo4j/conf
--volume=/etc/letsencrypt/neo4j:/var/lib/neo4j/certificates
--volume=/production/analytics/Docker/neo4j/plugins:/var/lib/neo4j/plugins
--volume=/production/analytics/Logs/neo4j:/var/lib/neo4j/logs
--volume=/production/analytics/Temp:/var/lib/neo4j/import
--env=NEO4J_dbms_memory_pagecache_size=8G
--env=NEO4J_dbms_memory_heap_maxSize=8G
--env=NEO4J_dbms_tx_log_rotation_retention_policy="2 days"
--env=NEO4J_dbms_connectors_default_listen_address=0.0.0.0
--env=NEO4J_dbms_connector_http_enabled=true
--ulimit=nofile=40000:40000
--publish=7473:7473 --publish=7474:7474 --publish=7687:7687
--env NEO4J_AUTH=neo4j/
--name=pmirdk-neo4j
-d neo4j:3.1.7
Placed a test_file in location: /production/analytics/Temp/test-file.csv
Then tried to run below code in python:
test_file="test-file.csv"
file_id="file:///"+str(test_file)
with neosession.begin_transaction() as tx:
tx.run("""LOAD CSV WITH HEADERS FROM {csv_file} AS row
MERGE (s:Test {Name: row._Name})
SET s.id = row._id"""
,{'csv_file': file_id}
)
tx.commit
When I run the above script I get the below error:
neo4j.v1.exceptions.CypherError: Couldn't load the external resource at: file:/production/analytics/Temp/test-file.csv
My neo4j conf has the following:
Below is commented out:
##dbms.security.allow_csv_import_from_file_urls=true
Below option in uncommented:
dbms.directories.import=import
Not sure why the file in not being accessed: /production/analytics/Temp/test-file.csv