Scroll to navigation



state_analyzer - Explores and queries the fileserver state database interactively


state_analyzer [state dump file | -h]


The demand-attach file server makes host / callback information persistent. On shutdown, the state is saved to database fsstate.dat(5). On startup, the state is read, verified and restored. This allows for file server shutdowns or restarts without breaking all callbacks (an operation that could otherwise take a long time).

state_analyzer interactively explores and queries the saved state database, fsstate.dat(5).

This command is only supported on the demand-attach file server. It operates at an extremely low-level and hence requires detailed knowledge of the OpenAFS architecture and code.


state_analyzer supports the following interactive commands:

  • hdr -- display the host_state_header struct
  • first -- display the first host
  • prev -- display the previous host
  • this -- display this host
  • next -- display the next host
  • last -- display the last host
  • dump -- display all hosts
  • hdr -- display the callback_state_header struct
  • first -- display the first FE
  • prev -- display the previous FE
  • this -- display this FE
  • next -- display the next FE
  • last -- display the last FE
  • dump -- display all FEs
  • timeout -- display the timeout queue heads
  • hash -- display the file entry hash buckets
  • find by index id -- find an fe by its array index
  • find by fid (vol,vnode,unique) -- find an fe by its AFSFid
  • hdr -- display the callback_state_entry_header struct
  • first -- display the first CB
  • prev -- display the previous CB
  • this -- display this CB
  • next -- display the next CB
  • last -- display the last CB
  • dump -- display all CBs


The issuer must have read access to the file server state database, fsstate.dat. Usually, this means that the issuer must be the local superuser "root" on the file server machine.


fsstate.dat(5), fssync-debug(8), salvsync-debug(8)


Copyright 2010 Davor Ocelic <>

This documentation is covered by the IBM Public License Version 1.0. This man page was written by Davor Ocelic for OpenAFS, based on documentation from Tom Keiser, Steven Jenkins and others.

2024-06-14 OpenAFS