Neo4j 5 Error Messages

Recently we noticed some customers having these types of warning messages in their debug.log file:

WARN  [o.n.i.p.PageCache] Reflection access to java.nio.DirectByteBuffer is not available, using fallback mode. This could have negative impact on performance and memory usage. Consider adding --add-opens=java.base/java.nio=ALL-UNNAMED to VM options.

WARN  [o.n.k.i.t.l.f.LogFileChannelNativeAccessor] [neo4j/93245d0a] Unable to evict transaction log from cache with version: xxxx. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.'

WARN  [o.n.k.i.t.l.f.LogFileChannelNativeAccessor] [neo4j/93245d0a] Error on attempt to preallocate log file version: xxx. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.'

These warnings occur if these additional jvm settings are missing from the neo4j.conf.


This would impair the ability of the JVM to manage memory when it became contentious and as a result you see errors begin to appear in the logs and potentially a degradation in overall performance as the JVM begins to operate sub-optimally.

If you are using a Docker deployment, check to make sure you are properly including the additional JVM settings. For a docker deployment:
“Variables that can take multiple options, such asĀ NEO4J_server_jvm_additional, must be defined just once, and include a concatenation of the multiple values.”

If you are deploying in other ways, check the neo4j.conf to make sure those lines are in the configuration.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.