Skip to content

[feature] Allow eXist-db to start but log an error if the database contains a bad package #4693

@djbpitt

Description

@djbpitt

Is your feature request related to a problem? Please describe.

I installed a package in eXist-db and then deleted expath-pkg.xml from the local filesystem, and the deletion was synched to the running database because I had VSCode synchronization enabled. The deletion was deliberate (I was working on a script that can generate expath-pkg.xml), but I hadn't anticipated that if the deletion wound up getting synched to the database it would make it impossible to restart eXist-db, which seems to be the case. The missing file seems to prevent a launch:

Caused by: org.expath.pkg.repo.Storage$NotExistException: File '/Users/djb/Library/Application Support/org.exist/expathrepo/init/expath-pkg.xml' does not exist
	at org.expath.pkg.repo.FileSystemStorage$FileSystemResolver.resolveWithin(FileSystemStorage.java:300) ~[pkg-java-1.6.1.jar:1.6.1]

Describe the solution you'd like
If an installed package is damaged I would like eXist-db to log an error but to permit the database to start.

Describe alternatives you've considered
I am experimenting now (with @adamretter 's help on the eXist-db Slack) in adjusting the contents of expathrepo manually.

Additional context
The problem is present in 6.0.1 and 6.1.0. I'm running on MacOS Ventura 13.1 with Java JDK 1.17.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementnew features, suggestions, etc.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions