我正在尝试从联接的表中检索所有字段。结果的大小应该是5893886个记录。每当我尝试使用Scala的Neo4j驱动程序运行此查询时,都会出现这种错误:
Exception in thread "dispatcher-event-loop-4" *** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message can't create byte array at JPLISAgent.c line: 813
*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message can't create byte array at JPLISAgent.c line: 813
java.lang.OutOfMemoryError: Java heap space
如何优化查询或调整设置以解决此错误? 我的查询如下:
MATCH (m:Member)-[mg_r:PARTICIPATE_IN]->(g:Group)
RETURN m.member_id, m.member_join_id, m.bio, m.city, m.country,
m.joined, m.lat, m.link, m.lon, m.member_name, m.state,
m.member_status, m.visited, m.group_id, g.group_id, g.category_id,
g.category_name, g.city_id, g.city, g.country, g.created, g.join_mode,
g.lat, g.link, g.lon, g.members, g.rating
Neo4j conf文件的内容也是如此:
dbms.allow.upgrade=true
dbms.allow.format.migration=true
dbms.security.allow.csv.import.from.file.urls=true
wrapper.java.additional=-Dneo4j.ext.udc.source=docker
ha.host.data=350d989e7781:6001
ha.host.coordination=350d989e7781:5001
dbms.tx_log.rotation.retention_policy=100M size
dbms.memory.pagecache.size=512M
dbms.memory.heap.max_size=1024M
dbms.memory.heap.initial_size=1024M
答案 0 :(得分:0)
您正在尝试执行一个比Neo4j所能提供的更多RAM的查询。因此,您需要增加堆大小。
您可以尝试以下Neo4j设置:
dbms.memory.heap.max_size=2048M
dbms.memory.heap.initial_size=2048M
欢呼