Errors may occur (human factor for example) when setting parameter values in firebird.conf. In this case, when the Firebird service starts, these values are ignored and the default values are used - as practice shows.
A rough example (Firebird 126.96.36.199083 on Windows):
Setting in database header: "Page buffers = 0".
ServerMode = Super
DefaultDbCachePages = true <- incorrect value (for example)
(!) When this service starts, there is no warning anywhere.
Result (query from application) return value:
"NumBuffers = 50" <- note also that this is not the default value.
Why this value for SuperServer? First char "y" convert to 1, but take min, i.e. 50?
If comment out DefaultDbCachePages, then query from application return value (after service restart):
"NumBuffers = 2048" <- ок, default
It is clear that any parameter may contain an incorrect value.
To control the correctness:
- of all parameters in firebird.conf;
- current values that are different from the default.
I would like to have an appropriate tool:
1) Warnings about incorrect parameters are written in firebird.log.
Or even - a complete list of parameter values (that were set at the start of the service) - also are written in log.
2) A command line parametr, for example: