explanation of logged error " Unable to advise sequential access for transaction log version: 0. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.'May 27, 2024Knowledge
Article DetailsDetailsHelp DetailsFor all Neo4j releases prior to 5.14.0 and specifically for those environments that were as a result of an upgrade from 4.4.x one might encounter WARN messages in the logs/debug.log similar to 2023-12-06 12:34:04.930+0000 WARN [o.n.k.i.t.l.f.LogFileChannelNativeAccessor] [neo4j/ede6d758] Unable to evict transaction log from cache with version: 0. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.' 2023-12-06 12:34:04.930+0000 WARN [o.n.k.i.t.l.f.LogFileChannelNativeAccessor] [neo4j/ede6d758] Unable to advise sequential access for transaction log version: 0. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.' 2023-12-06 12:35:04.930+0000 WARN [o.n.k.i.t.l.f.LogFileChannelNativeAccessor] [neo4j/ede6d758] Unable to advise preserve data in cache for transaction log version: 0. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.' and specifically note the reference to errorMessage='Incorrect file descriptor.' this WARN is as a result of the conf/neo4j.conf not including server.jvm.additional=--add-opens=java.base/java.nio=ALL-UNNAMED server.jvm.additional=--add-opens=java.base/java.io=ALL-UNNAMED server.jvm.additional=--add-opens=java.base/sun.nio.ch=ALL-UNNAMED and once added on startup the log\debug.log will report VM Arguments: [-XX:+UseG1GC, -XX:-OmitStackTraceInFastThrow, -XX:+AlwaysPreTouch, -XX:+UnlockExperimentalVMOptions, -XX:+TrustFinalNonStaticFields, -XX:+DisableExplicitGC, -XX:-RestrictContended, -Djdk.nio.maxCachedBufferSize=1024, -Dio.netty.tryReflectionSetAccessible=true, -Djdk.tls.ephemeralDHKeySize=2048, -Djdk.tls.rejectClientInitiatedRenegotiation=true, -XX:FlightRecorderOptions=stackdepth=256, -XX:+UnlockDiagnosticVMOptions, -XX:+DebugNonSafepoints, --add-opens=java.base/java.nio=ALL-UNNAMED, --add-opens=java.base/java.io=ALL-UNNAMED, --add-opens=java.base/sun.nio.ch=ALL-UNNAMED, -Dlog4j2.disable.jmx=true, -Xlog:gc*,safepoint,age*=trace:file=/home/neo4j/neo4j-enterprise-5.12.0/logs/gc.log::filecount=5,filesize=20480k, -Dfile.encoding=UTF-8] and to which above you will see the 3 references to `ALL-UNNAMED`, i.e. on the 3rd and 4th to last lines above. These 3 JVM parameters are specifically included in a conf/neo4j.conf on new install. However, if one uses `neo4j-admin server migrate-configuration` so as to read a v4.4.x conf/neo4j.conf and output a newly conf/neo4j.conf and in new parameter name syntax the parameters are not added up until 5.14.0 InformationTitleexplanation of logged error " Unable to advise sequential access for transaction log version: 0. Error: ErrorCode=-1, errorMessage='Incorrect file descriptor.'Article Created Date3/15/2024, 10:54 PMURL Name24596542981523-explanation-of-logged-error-Unable-to-advise-sequential-access-for-transaction-log-version-0-Error-ErrorCode-1-errorMessage-Incorrect-file-descriptorLast Modified Date5/27/2024, 12:33 AM