We have non-standard deployment model where we want to use FDB in place of Postgres, but without any data replication (i.e. a single node).
I wanted to check, how reliable is FDB itself in such a setting with respect to maintaining integrity of data on disk.
Assuming that the underlying storage itself is reliable and it does not corrupt bits once fsync’d, is it reasonable to assume that FDB will be resilient to data corruption (at a level comparable to Postgres)? It may not be uncommon to have abrupt machine reboots (one source of data corruption that I can think of).
It would be great to know some of the details on data-write path and the checks/methods implemented to overcome events like abrupt process kills/machine reboots etc.
And also - if for some reason the storage files get corrupted with some error (I do not know the kinds possible with the FDB storage files), are there any troubleshooting steps/tools to salvage data (to the extent possible) and get FDB back to healthy state?