[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference iosg::all-in-1_v30

Title:*OLD* ALL-IN-1 (tm) Support Conference
Notice:Closed - See Note 4331.l to move to IOSG::ALL-IN-1
Moderator:IOSG::PYE
Created:Thu Jan 30 1992
Last Modified:Tue Jan 23 1996
Last Successful Update:Fri Jun 06 1997
Number of topics:4343
Total number of notes:18308

120.0. "How to approach a corrupt DOCDB.DAT" by KURMA::GMURRAY (Have Mercy I Cry City !) Thu Feb 27 1992 17:14

    
    	Help !
    
    	One of our users complained today that whenever he tries to index
    his READ box, he gets kicked out of ALL-IN-1 with the error :
    
    	%RMS-F-CHK, bucket format check failed for VBN = 1716641
    
    	I thought that his File Cabinet must be corrupt, so restored it
    from tape. Yesterdays Cabinet also bombed out, so I went back a bit
    further. A week old File Cabinet also failed.
    
    	I then backed up his ALL-IN-1 files, deleted the ALL-IN-1 account,
    recreated it with clean files, and reinstated the DOCDB and PDAF, plus
    the [.DOC%] and [.MSG] files.
    
    	This also fails !! Can anyone help ??
    
    			Gil
    	                
T.RTitleUserPersonal
Name
DateLines
120.1File Cab Reorg fails too...KURMA::GMURRAYHave Mercy I Cry City !Thu Feb 27 1992 17:4716
    
    	A bit more on this ...
    
    	I have just tried to reorganise the File Cabinet, and got :
    
    %SMREORG-I-CSTART Converting "DOCDB.DAT" using FDL file
    "OA$LIB:DOCDB.FDL"
    %CONV-F-READERR, error reading MANU_DISK:[BNEWMAN.ALLIN1]DOCDB.DAT;2
    -RMS-F-CHK, bucket format check failed for VBN = 541
    %SMREORG-E-CFAIL Convert failed for "DOCDB.DAT"
    
    	Looks like it's been a dormant error in his DOCDB.DAT. My next
    step is to try a Test and Repair of his area. Stay tuned ...
    
    
    
120.2Some suggestionsSIOG::T_REDMONDThoughts of an Idle MindThu Feb 27 1992 17:5115
    You may have to either:
    
    1. Recover an older version of DOCDB.DAT
    
    2. Try and rebuild a DOCDB.DAT using DATATRIEVE.
    
    3. Patch the DOCDB.DAT to avoid the bad blocks.
    
    1. is easiest. 2 is easy enough with some practice. Define DOCDB to DTR
    and read as far as you can in the corrupt file, writing records out to
    a new one as you go. Then try and read from a point further along in
    the DOCDB (i.e. after the fail) and write records from that point on.
    3. needs an RMS PATCH expert...
    
    Tony
120.3Or call the CSCAIMTEC::PORTER_TTerry Porter, ALL-IN-1 Support, Atlanta CSCThu Feb 27 1992 19:2215
The CSC (Atlanta definately, and I assume the others) have a tool that will
fix the corruption in the RMS file (DODCDB.DAT in this case). The tool is
called RECOVER. If you have a support contract the CSC will fix the file for
you, otherwise you will have to ask engineering (IOSG) for a copy of the tool.

I know this will probably annoy a lot of people but this is one of the tools 
that are only available to the CSCs and named induviduals, in the case of the 
Atlanta CSC only those who have been on the course that tells you how to use 
the tool without damaging the customer's system are authorized to run the 
tool, and we are not allowed to give the tool to anyone outside the CSC.

The tool is not perfect, but it does have greater than 90% success rate, and as
far as I know has never failed to fix the type of corruption you are seeing.

Terry
120.4Home made DOCDB fixer.KETJE::CAPPELLEMANSThe Dark side of the \FORCEMon Mar 02 1992 08:379
Hi,

in case you have problems receiving the tool, I have a home made
DAF Fixer, which I modified to correct corrupted DOCDB. It's a little
bit tricky but it works. 
if you want a copy, send me a mail, It will only costs you a couple of beers...

Best Regards
Pierre 
120.5DOCD fix not hardTRCOA::HALSEYI'd rather be sailing!Tue Apr 28 1992 23:0733
    I'm just getting caught up on these notes after not getting the chance
    for a while, so please excuse my late response.  It may help someone
    else in future possibly.
    
    	As for fixing a corrupt DOCDB, I put some procedures in the
    previous conference.  I'll quickly review the basics here again though.
    
    	Normally I've found a corrupt DOCDB.DAT has maybe 1 or 2 records
    that have been trashed, but the rest of it is accessible.
    
    	By the way, if your entire process is being killed when it hits the
    record (as one of my cases), the simply do a SPAWN before entering A1,
    and you don't have to sign on again.
    
    	Playing around in the Index, try to find the last good record
    before the corrupted one.  Using SEARCH, find out the record number of
    that last good record. Then approach it from the top.  Try to find
    the next good record after the corrupted ones.
    
    	Write a little program (language of your choice) that sequentially
    reads the bad DOCDB.DAT file and copies it into another new file.  Do
    the sequential record copies for a given COUNT (number of good records
    before the bad one).  Then do a KEYED lookup on the good record after
    the corruption and continue the sequential copy until finished.
    
    	Finally, convert your new file with the proper .FDL.
    
    	I have an old FORTRAN program that does they if it's useful.
    
    	Anyway, I hope it helps someone.
    
    	Bob Halsey, Toronto SWS