Gap finder
Made-up dataTwo made-up lists of ids that should agree: an original, and a copy taken from it. Each side comes down to a count and one fingerprint. If the fingerprints differ, the finder splits the ids into groups by first character, finds the groups that disagree, and gives every row that differs its likely reason.
Comparing lists needs JavaScript. The sample's result reads below without it.
Count and fingerprint
Original
158 rows
Fingerprint b9f9f4712229
Full fingerprint
b9f9f47122292030555bcd37eb1d58235fa39508621b7667f2278149be78f381Copy
151 rows
Fingerprint 2bd564a83a2e
Full fingerprint
2bd564a83a2e7a14c464b214202180aa88326616d7a32dd3f2def40c5db53c739 rows differ.
The fingerprints differ, so the lists do not match. 4 of 8 groups disagree.
The fingerprint is a SHA-256 hash of the ids in sorted order. One changed id gives a completely different fingerprint.
Groups by first character
| Group | Original | Copy | Result |
|---|---|---|---|
| A | 199d5b07 | 177844c3 | Disagrees |
| B | 2173bf5b | 18538b0c | Disagrees |
| C | 27fcf45e | 27fcf45e | Agrees |
| D | 21b0e83e | 21b0e83e | Agrees |
| E | 18d36e23 | 1596f707 | Disagrees |
| F | 26e744a6 | 27bab800 | Disagrees |
| G | 11831308 | 11831308 | Agrees |
| H | 159a590e | 159a590e | Agrees |
Every difference, by likely reason
Timing4 rows
Proven by rebuilding the original as it stood when the copy was taken.
B437Only in the original. Added to the original 31 minutes after the copy was taken.E268Only in the original. Added to the original 54 minutes after the copy was taken.E422Only in the original. Added to the original 44 minutes after the copy was taken.F480Only in the copy. Removed from the original 28 minutes after the copy was taken.
Filter4 rows
A rule one side applies and the other does not.
A116Only in the original. Archived. The copy leaves archived rows out, and the original keeps them.A336Only in the original. Archived. The copy leaves archived rows out, and the original keeps them.B278Only in the original. Archived. The copy leaves archived rows out, and the original keeps them.B377Only in the original. Archived. The copy leaves archived rows out, and the original keeps them.
Unexplained1 row
Each one needs a person to look.
E520Only in the original. In the original since 24 days before the copy was taken, and not archived. Neither timing nor the filter explains it.