connectome-neuprint / neuPrintHTTP

Implements connectomics REST interface
5 stars 2 forks source link

Relax requirement that all Neo4j databases listed in configuration file must be available on startup #62

Open hannah-martinez opened 1 year ago

hannah-martinez commented 1 year ago

I have noticed that all Neo4j databases listed in the configuration file must be available when NeuPrint starts up, because NeuPrint pings each one during its startup process and enters an error state if they do not all respond. It would be very beneficial for our use case (1 website, many databases) to relax this requirement.

I suggest refactoring the portions of the startup code which require each Neo4j database to be available, and editing UI elements as needed to reflect this. For example, the UI (e.g. the server information card and the dataset selection dropdown) could display information only from servers which are currently available, and a Reload Datasets button could be added which checks each server's status and repopulates the UI with updated information.

DocSavage commented 1 year ago

I added ability for startup if any alternative store (not main store) isn't working in commit 8c134a8. We'll address the Reload Datasets later.

hannah-martinez commented 1 year ago

Thanks so much! If you have the opportunity, do you mind building a new image and uploading it to the container registry?

neomorphic commented 1 year ago

@hannahgooden I just pushed a new image gcr.io/flyem-public/connectome-neuprint/neuprinthttp:1.5.3-1.59.5. Please be aware that it has had minimal testing.

hannah-martinez commented 1 year ago

Excellent, I'll let you know if we find anything.