Hi Guys,

We have implemented BaseX to provide a REST API to access specific information out of the database. Databases range in size from hundreds to 6000+ XML files, and the APIs use the attribute index to quickly locate nodes and return information about them.

We have been noticing that BaseX has been randomly failing after a number of requests in the range of several hundred. I can replicate the failure in a few minutes by looping curl requests from the command line.

The failure is made apparent by a valid request returning a Jetty 404 Error: 

HTTP ERROR 404

Problem accessing { redacted URL }. Reason:

    No function found that matches the request.


Powered by Jetty://

This message is the same message that is thrown when requesting a URL that does not have a matching path, but this request is valid, and has been used before. It appears that the issue is the BaseX server failing somehow, but I can't track the reason. No information is logged at the time of the crash.

If I connect to the BaseX server (on port 1984) using the basexclient, it connects, but reports that there are no databases available. Once I restart the service, I can reconnect, and it lists all databases as it should.

Any ideas what might be causing these issues?

Thanks,

Jeremy