Documentation: A file called migdbcheck-no-fhdb.<hsmname>.<pid> was created in /tmp by /usr/openv/hsm/bin/migdbcheck.

Article:TECH10067  |  Created: 2009-01-19  |  Updated: 2012-01-06  |  Article URL
Article Type
Technical Solution




Documentation: A file called migdbcheck-no-fhdb.. was created in /tmp by /usr/openv/hsm/bin/migdbcheck.


ERROR: xxx files with no active entries in the FHDB were found


Manual:  Systems Administrator's Guide for Veritas Storage Migrator (tm)

Pages:    Storage Migrator 4.5   --   page 316
             Storage Migrator 5.0   --   page 340
             Storage Migrator 5.1   --   page 344
             Storage Migrator 6.0   --   page 350
             Storage Migrator 6.5   --   page 373

Modification Type:  Addition

Modification:  The output file from migdbcheck contains a list of files that are on the managed file system with file handles, but there are no entries in the file handle database (FHDB). This is a serious problem causing error messages such as "Protocol family not supported" when accessing the file.

To rectify the problem, determine whether the file is fully on disk or not by using the following command:
/usr/openv/hsm/bin/fls -ls

See fls(1) in Appendix A of the Storage Migrator for UNIX System Administrator's Guide for instructions to determine this. The leftmost number in the output will be the number of 512-byte blocks the file actually occupies. If this number is larger than the slice size, the file is on disk. The slice size of the file can be located by viewing the output of the /usr/openv/hsm/bin/goodies/ script.

If the file is fully on disk, change it to "regular", using the following commands:

    /usr/openv/hsm/bin/fls -ls <filename>   (Check to see if file size is greater than the slice size)
    grep -i <filehandle> FHDB   (Should come back not being able to find an entry for it)
 /usr/openv/hsm/bin/migalter -e NOEVENT -r NOREGION -h 0 -m 0 <filename>
 /usr/openv/hsm/bin/ihprint  -m 0 -h 0 -c 0 -f 0 -d 0 <filename>
If the size of the file from the fls -ls command indicates the file has been purged (no longer fully on disk), then determine on which volume the file resides and run the /usr/openv/hsm/bin/migtscan command on that volume. Refer to the migtscan command in Appendix A of the Storage Migrator for UNIX System Administrator's Guide. Then follow this process:

Restore the file from a NetBackup backup, or migtscan the volume on which the file resides. If the volume is not known, scan all volumes until the file is found. Since file handles are sequential, find out on what volume ID the next higher file handle is (field 4 in the FHDB). That tape may contain the missing file handles.  The migtscan output will create an FHDB.<vol label>, FNDB.<vol label>,  and VOLDB.<vol label> file in the <dwpath>/database directory.

Remove all entries in the FHDB.<vol label>  and FNDB.<vol label> except for the file handles in question and then merge them into the real FHDB/FNDB. After the records are merged,  the FHDB/FNDB requires a simple sort to be executed. This can be done with the following command sequence:

/usr/openv/hsm/bin/migVSMstate -s maintenance <hsmname>
  Verify there are no 'mig' processes running on this particular <hsmname>
         cd <dwpatch>/database
cp FHDB FHDB.orig.<date>
cat FHDB.<vol label>  >>  FHDB
 Do this for all scanned FHDB.<vol label> tapes
sort FHDB >> FHDB.sorted
cp FHDB.sorted FHDB

cp FNDB FNDB.orig.<date>
cat FNDB.<vol label> >> FNDB
 Do this for all scanned FNDB.<vol label> tapes
sort FNDB >> FNDB.sorted
cp FNDB.sorted FNDB

/usr/openv/hsm/bin/migVSMstate -s active <hsmname>

Rerun migdbcheck to ensure that the problem has been resolved


Legacy ID


Article URL

Terms of use for this information are found in Legal Notices