The API call isc_database_info() with isc_info_xxx_count requests
(isc_info_read_seq_count, isc_info_insert_count, isc_info_update_count etc.)
returns very limited result buffer. It contains informations about
approximately 50 tables, including system ones. (Or, the result is just
couple of hundreds bytes long, even if the result bufer is much longer).
The result also does not indicate in any way that many informations are missing
(i.e. no isc_info_truncated value).
How to reproduce - connect into database with lots of tables and execute this
EXECUTE BLOCK AS
DECLARE VARIABLE N VARCHAR(31);
DECLARE VARIABLE I INTEGER;
FOR SELECT RDB$RELATION_NAME
WHERE RDB$RELATION_TYPE=0 AND RDB$SYSTEM_FLAG=0
EXECUTE statement 'SELECT FIRST 1 1 FROM ' || :N INTO :I;
and you will see that statistincs are not complete and many tables are missing
(Either look at Performance Analysis of IBExpert, or in FSQL use SET STATS ON ALL SYSTEM;)