Initial; add state_analyzer manpage
authorDavor Ocelic <docelic@spinlocksolutions.com>
Wed, 24 Mar 2010 21:45:20 +0000 (22:45 +0100)
committerDerrick Brashear <shadow@dementia.org>
Mon, 29 Mar 2010 03:55:05 +0000 (20:55 -0700)
Change-Id: I5dd43e6ea5764421a6e44f372f4e9c9576de627e
Reviewed-on: http://gerrit.openafs.org/1655
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

doc/man-pages/pod8/state_analyzer.pod [new file with mode: 0644]

diff --git a/doc/man-pages/pod8/state_analyzer.pod b/doc/man-pages/pod8/state_analyzer.pod
new file mode 100644 (file)
index 0000000..5f8598c
--- /dev/null
@@ -0,0 +1,186 @@
+=head1 NAME
+
+state_analyzer - Explores and queries the fileserver state database interactively
+
+=head1 SYNOPSIS
+
+=for html
+<div class="synopsis">
+
+B<state_analyzer> S<<< <F<state dump file>> | B<-h> >>>
+
+=for html
+</div>
+
+=head1 DESCRIPTION
+
+Demand-attach file server makes host / callback information
+persistent. On shutdown, the state is saved to database L<fsstate.dat(5)>.
+On startup, the state is read, verified and restored.
+This allows for file server shutdowns or restarts without breaking
+the callbacks (an operation that could otherwise take a long time).
+
+B<state_analyzer> interactively explores and queries the saved
+state database, L<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. 
+
+=head1 COMMANDS
+
+B<state_analyzer> supports the following interactive commands:
+
+=over 4
+
+
+=item B<h <...>>  -- host menu
+
+=over 4
+
+=item *
+
+B<hdr>      -- display the host_state_header struct
+
+=item *
+
+B<first>    -- display the first host
+
+=item *
+
+B<prev>     -- display the previous host
+
+=item *
+
+B<this>     -- display this host
+
+=item *
+
+B<next>     -- display the next host
+
+=item *
+
+B<last>     -- display the last host
+
+=item *
+
+B<dump>     -- display all hosts
+
+=back
+
+
+=item B<fe <...>>  -- FileEntry menu
+
+=over 4
+
+=item *
+
+B<hdr>      -- display the callback_state_header struct
+
+=item *
+
+B<first>    -- display the first FE
+
+=item *
+
+B<prev>     -- display the previous FE
+
+=item *
+
+B<this>     -- display this FE
+
+=item *
+
+B<next>     -- display the next FE
+
+=item *
+
+B<last>     -- display the last FE
+
+=item *
+
+B<dump>     -- display all FEs
+
+=item *
+
+B<timeout>  -- display the timeout queue heads
+
+=item *
+
+B<hash>     -- display the file entry hash buckets
+
+=item *
+
+B<find by index I<id>> -- find an fe by its array index
+
+=item *
+
+B<find by fid I<(vol,vnode,unique)>> -- find an fe by its AFSFid
+
+=back
+
+
+=item B<cb <...>>  -- CallBack menu
+
+=over 4
+
+=item *
+
+B<hdr>      -- display the callback_state_entry_header struct
+
+=item *
+
+B<first>    -- display the first CB
+
+=item *
+
+B<prev>     -- display the previous CB
+
+=item *
+
+B<this>     -- display this CB
+
+=item *
+
+B<next>     -- display the next CB
+
+=item *
+
+B<last>     -- display the last CB
+
+=item *
+
+B<dump>     -- display all CBs
+
+=back
+
+=item B<hexdump [B<offset> [B<len>]]>  -- hex dump raw data
+
+=item B<quit>     -- quit current menu
+
+=item B<exit>     -- exit debugger
+
+=item B<help>     -- help message
+
+=back
+
+=head1 PRIVILEGE REQUIRED
+
+The issuer must have read access to the file server state database,
+F<fsstate.dat>.
+Usually, this means that the issuer must be the
+local superuser C<root> on the file server machine.
+
+=head1 SEE ALSO
+
+L<fsstate.dat(5)>,
+L<fssync-debug(8)>,
+L<salvsync-debug(8)>
+
+=head1 COPYRIGHT
+
+Copyright 2010 Davor Ocelic <docelic@spinlocksolutions.com>
+
+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.