-
-
Notifications
You must be signed in to change notification settings - Fork 327
Description
Describe the issue
The CHT API will start even when it runs with an incompatible version of CouchDb, for example the default CouchDb image. There are a number of CouchDb configs that we know are incompatible with the CHT (multi replica, other js engines, etc - this is a non-exhaustive list).
Describe the improvement you'd like
Add a server-check that verifies the version of CouchDb that is running, to make sure that we're on the correct version. I believe that we also need to add some sort of endpoint to the CouchDb image that returns the actual version, and compare that to the expected version.
Describe alternatives you've considered
Leave it as it is.
A recent forum support request revealed that a partner was using a default CouchDb image instead of the CHT one and they had issues with users getting logged out: https://forum.communityhealthtoolkit.org/t/extending-session-timeout-duration/4794/3
We have also had unfortunate cluster upgrades where only one node in the cluster was upgraded - these faulty upgrades were due to a bug in the upgrade script, and it left the instance running in an inconsistent state until something broke. Having a check like this can prevent data-loss through data corruption if a similar event happens.