It is unable to get DB header since
#afb9dc80 when DB is in full shutdown state (at least on Windows; did not check on Linux)
Please consider following batch (one need to ajust 'fbc' variable to your environment):
===========
@echo off
setlocal enabledelayedexpansion enableextensions
::::::::::::::::::
set fbc=C:\FB\60sS
::::::::::::::::::
set dbn=C:\TEMP\tmp4test.fdb
set isc_user=sysdba
set isc_password=masterkey
set tmpsql=%~dpn0.tmp.sql
set tmplog=%~dpn0.tmp.log
if exist !dbn! del !dbn!
if exist !dbn! (
@echo ERROR: could not remove file !dbn!
goto :fin
)
@rem -----------------------------------------
@echo on
echo create database 'localhost:%dbn%'; show database; | %fbc%\isql -q -z
if NOT !errorlevel! EQU 0 (
goto :fin
)
!fbc!\gfix -shut full -force 0 !dbn!
echo !errorlevel!
::timeout 10
@set run_cmd=!fbc!\fbsvcmgr localhost:service_mgr action_db_stats dbname !dbn! sts_hdr_pages
echo !run_cmd!
cmd /c !run_cmd!
echo !errorlevel!
:fin
echo Bye-bye from %~f0
===========
This batch creates DB and immediately change its state to full shutdown.
Then it attempts to get DB header info using Services API.
On 6.0.0.2062-20260706_073606-902ca61 it works fine.
But on 6.0.0.2062-20260706_075559-afb9dc8 its output will be:
===========
!fbc!\gfix -shut full -force 0 !dbn!
echo !errorlevel!
0
echo !run_cmd!
C:\FB\60sS\fbsvcmgr localhost:service_mgr action_db_stats dbname C:\TEMP\tmp4test.fdb sts_hdr_pages
@rem @set run_cmd=!fbc!\gstat -h !dbn! ---------------------- [ 1 ]
cmd /c !run_cmd!
database C:\TEMP\TMP4TEST.FDB shutdown
echo !errorlevel!
1
===========
(i.e. fbsvcmgr failed with error and did not show DB header).
The above mentioned snapshots are
here.
PS.
No such problem if we try to get DB header using 'gstat -h' (see line marked as "[ 1 ]")