We upgraded our Domino servers in our AS/400 infrastructure to Domino 6. We created a "Compact" CL program to upgrade the ODS structure from 41 to 43. Well as you know if compact is running and someone opens their mail file, the compact stops. That stopped the CL program entirely, so there were very few mail files upgraded to the 43 ODS. That left the remainder of mail files with the potential of being corrupted, which they were. In order to resolve the corruption we ran this parameter "compact -c -i" in a CL program on the AS/400. This repairs the mail file and upgrades the ODS.
In order to have this parameter to run on more than 18,000 users, we created a CL program with this compact parameter, ran it on the servers and every mail file was repaired successfully and the ODS was upgraded on the disk structure.
It's not a good idea to run a CL program on databases with the server running. The server should be shut down for that. If you can't have the server down for that long, you may want to issue the compact on the server console and let Domino manage the resources. Or, you could schedule a compact via a program document.
Do you have comments of your own? Let us know.