最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

backup - Unknown frame descriptor when loading a Neo4j dump with neo4j-admin load - Stack Overflow

programmeradmin2浏览0评论

I create daily dumps in a K8s cluster using helm with neo4j/neo4j version 5.21.0 and neo4j-admin database dump command. Then I wanted to load the dumps into a local volume using neo4j-admin version 5.21.2 (same with version 2025.02.0), which brings up the following error:

Caused by: .neo4j.cli.CommandFailedException: Not a valid Neo4j archive: /backups/neo4j.dump
Caused by: com.github.luben.zstd.ZstdIOException: Unknown frame descriptor

Same for running neo4j-admin database check on the dump file.

Actual behavior

The dumps worked fine for several months using the exact same toolchain, but now do not work for a couple of days anymore. So sometimes they work and sometimes not. The dump file size is about 1 GiB and the "uncompressed" size according to neo4j-admin database load --info is about 5 GiB. It seems that the dump command creates invalid archives or that the load command thinks they are invalid.

Expected behavior

The database dump files can be processed with neo4j-admin database load and neo4j database check properly.

Question

Can the dump files be inspected with another tool to check their validity? Since Zstd is used, I tried to extract them with another zstd tooling, but it complains about that it is not a valid archive, even for the dump files checked valid with the neo4j-admin tooling.

Logs

Log of neo4j-admin database load with stacktrace:

Done: 124 files, 4.858GiB processed.
Failed to load database 'neo4j': Not a valid Neo4j archive: /backups/neo4j.dump
Load failed for databases: 'neo4j'
.neo4j.cli.CommandFailedException: Load failed for databases: 'neo4j'
        at .neo4jmandline.dbms.LoadCommand.checkFailure(LoadCommand.java:300)
        at .neo4jmandline.dbms.LoadCommand.loadDump(LoadCommand.java:283)
        at .neo4jmandline.dbms.LoadCommand.loadDump(LoadCommand.java:241)
        at .neo4jmandline.dbms.LoadCommand.execute(LoadCommand.java:169)
        at .neo4j.cli.AbstractCommand.call(AbstractCommand.java:92)
        at .neo4j.cli.AbstractCommand.call(AbstractCommand.java:37)
        at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
        at picocli.CommandLine.access$1500(CommandLine.java:148)
        at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
        at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
        at picocli.CommandLine.execute(CommandLine.java:2170)
        at .neo4j.cli.AdminTool.execute(AdminTool.java:94)
        at .neo4j.cli.AdminTool.main(AdminTool.java:82)
Caused by: .neo4j.cli.CommandFailedException: Not a valid Neo4j archive: /backups/neo4j.dump
        at .neo4jmandline.dbms.LoadDumpExecutor.load(LoadDumpExecutor.java:119)
        at .neo4jmandline.dbms.LoadDumpExecutor.execute(LoadDumpExecutor.java:80)
        at .neo4jmandline.dbms.LoadCommand.loadDump(LoadCommand.java:274)
        ... 14 more
Caused by: .neo4j.dbms.archive.IncorrectFormat: /backups/neo4j.dump
        at .neo4j.dbms.archive.Loader.nextEntry(Loader.java:190)
        at .neo4j.dbms.archive.Loader.load(Loader.java:120)
        at .neo4jmandline.dbms.LoadDumpExecutor.load(LoadDumpExecutor.java:103)
        ... 16 more
Caused by: com.github.luben.zstd.ZstdIOException: Unknown frame descriptor
        at com.github.luben.zstd.ZstdInputStreamNoFinalizer.readInternal(ZstdInputStreamNoFinalizer.java:184)
        at com.github.luben.zstd.ZstdInputStreamNoFinalizer.read(ZstdInputStreamNoFinalizer.java:136)
        at .apachemons.io.IOUtils.skip(IOUtils.java:2414)
        at .apachemonspress.utils.IOUtils.skip(IOUtils.java:282)
        at .apachemonspress.archivers.tar.TarArchiveInputStream.consumeRemainderOfLastBlock(TarArchiveInputStream.java:317)
        at .apachemonspress.archivers.tar.TarArchiveInputStream.getRecord(TarArchiveInputStream.java:501)
        at .apachemonspress.archivers.tar.TarArchiveInputStream.getNextTarEntry(TarArchiveInputStream.java:415)
        at .apachemonspress.archivers.tar.TarArchiveInputStream.getNextEntry(TarArchiveInputStream.java:389)
        at .apachemonspress.archivers.tar.TarArchiveInputStream.getNextEntry(TarArchiveInputStream.java:49)
        at .neo4j.dbms.archive.Loader.nextEntry(Loader.java:188)
        ... 18 more

Log of neo4j-admin database dump:

Done: 124 files, 4.858GiB processed.
2025-03-10 01:03:30.303+0000 INFO  [o.n.c.d.DumpCommand] Dump completed successfully
发布评论

评论列表(0)

  1. 暂无评论