ChecksummerDoc.tioga
Hal Murray, May 25, 1986 3:37:10 am PDT
Checksummer
CEDAR 6.1 — FOR INTERNAL XEROX USE ONLY
Checksummer
Hal Murray
© Copyright 1986 Xerox Corporation. All rights reserved.
Abstract: Checksummer computes the checksum of a set of files. With some help from Waterlily, it can be used to locate mashed files on file servers holding secondary copies.
Created by: Hal Murray
Maintained by: Hal Murray <Murray.PA>
Keywords: Checksum, File
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
Hi
Checksummer scans a set of files and prints out the length, checksum, create date, and name of each file it finds. The checksum is the normal Pup ones-compliment and rotate applied to the whole file.
Checksummer doesn't cache each file, but processes the data on the fly using STP directly.
As you have probably guessed, Checksummer is also a good stress test of File Servers and PupPackages.
The idea is that you can use it to verify that bits aren't getting mashed when files are sloshed to another file server. Just run Checksummer over the primary copy, then run another instance over the secondary copy, then use Waterlily to see if the log files are the same.
The quaint structure of the code results because STP.Retrieve wants to cram the bits down a stream rather than let you pull them. (Everything might get a lot cleaner if STP.CreateRemoteStream were used instead. I don't know of any sample code to look at. It wouldn't surprise me if it didn't work yet.)