We should look into adopting the management and configuration API from FDB https://github.com/apple/foundationdb/blob/main/documentation/sphinx/source/special-keys.rst#management-module the API was added in 7.0 and should be support for all newer versions. The benefit of adopting those APIs is that we don't need to copy binaries like fdbcli into our container (wee probably still need the binary for backups if the operator should manage backups). In addition to that all requests that are made will be in the scope of the operator process from a memory perspective and we would not require to fork another process that should bring more robustness when he operator runs at a memory limit. The API usage should be disabled by default and can be activated by using a setting when everything works like expected we can change the default to true in a later version of the operator.
We probably can also remove some additional methods that we build around fdbcli once we remove the fdbcli support. This is intended as a tracking issue and I will create later for each change an issue.
What would you like to be added/changed?
We should look into adopting the management and configuration API from FDB https://github.com/apple/foundationdb/blob/main/documentation/sphinx/source/special-keys.rst#management-module the API was added in 7.0 and should be support for all newer versions. The benefit of adopting those APIs is that we don't need to copy binaries like
fdbcli
into our container (wee probably still need the binary for backups if the operator should manage backups). In addition to that all requests that are made will be in the scope of the operator process from a memory perspective and we would not require to fork another process that should bring more robustness when he operator runs at a memory limit. The API usage should be disabled by default and can be activated by using a setting when everything works like expected we can change the default totrue
in a later version of the operator.The following command can be replaced:
We probably can also remove some additional methods that we build around
fdbcli
once we remove thefdbcli
support. This is intended as a tracking issue and I will create later for each change an issue.