[Info-vax] need help with corrupt MAIL.MAI file

Hein RMS van den Heuvel heinvandenheuvel at gmail.com
Tue Nov 24 08:05:22 EST 2009


On Nov 24, 4:08 am, JF Mezei <jfmezei.spam... at vaxination.ca> wrote:
> Phillip Helbig---undress to reply wrote:

> >    %MAIL-E-READERR, error reading DISK$USER:[HELBIG.MAIL.MAIL]MAIL.MAI
> >    -RMS-F-CHK, bucket format check failed for VBN = 27201
>
> This is an indexed file problem (RMS). It has nothing to do with your
> disks (shadowed or not).

It certainly could, because in a shadow set there are multiple sources
to read from.

>
> It is far more likely to have been caused by poor software such as the
> POP and IMAP servers that come with TCPIP Services.

B*&& S^%~.
All of such software uses RMS to manipulate the Email files.
.

> ANA/RMS MAIL.MAI may give you more information on the extent of the
> damage. There is also ANA/RMS/INTERACTIVE which lets you "walk" though
> the indexed file structure.

Right!


> TYPE MAIL.MAI/OUTPUT=MAIL.NEW
> does it also generate the error message ?

Right, but a simple $SEARC/STAT will do that work better, providing
counts.

You might be able to recreate
> it this way, and then CONVERT MAIL.NEW MAIL.MAI/FDL=MAIL.FDL

Right

> Another possibility would be to use DCL to read (sequentially) your
> MAIL.MAI file using an alternate key, write to a sequential output file
> and use CONVERT to get it back to indexed format.

Why not reduce the number of moving parts and read by primary key?
When you get the -CHK error, take the key from the last succesfull
read and binary search between it and 'now' to find a next starting
place.
The fact that the key is binary, makes that tricky, but not
impossible.

> Lastly, you could ana/RMS/FDL/OUTPUT=MAIL.FDL MAIL.MAI
> then CONVERT/FDL=MAIL.FDL MAIL.MAI MAIL.NEW

Right, except that the ANALYZE will likely fail.
So just ANAL/RMS any other MAIL.MAI and adjust the allocations (or
record counts if you also use EDIT/FDL/NOINTER)
Or use a tool like my FDL$GENERATE. Unlike ANAL/RMS that does not read
the blocks, it just uses the prologue information.

Cheers,
Hein.




More information about the Info-vax mailing list