|
Mike Cunningham wrote:
This may be a left over from the old days but we never put a key on any table (Physical file) directly
IIRC (and _only_ IIRC), way back when, there were a couple elements that combined to bring a small amount of risk to having keys on PFs.
1. Non-keyed LFs were not allowed. (Possibly irrelevant.)
2. Damage to a PF index could make it impossible to read the PF even in arrival sequence.
Back on the S/38 and in early OS/400, damage to files was far more common than it is today. Power requirements were higher, UPSs were less common, stability could be affected more easily than in later releases, etc.
Recovery of data in a PF could often be done by reading the PF in pure arrival sequence as long as the PF itself had no index/key. If a LF key suffered damage, it wasn't much of a problem -- delete it and recreate it; the damage to the LF index was physically separate from the PF object that held the data.
But there were circumstances where damage to a PF /index/ would interfere with reading the physical records even when trying to read without reference to the index.
Because you couldn't create a LF that presented records in a reasonably pure arrival-sequence fashion, the PF became the _only_ possible way to access record by record. It's _possible_ that a non-keyed LF today might allow useful arrival-sequence access if damage occurs to a PF index. (I don't have a clue whether it actually would; I'm just dredging up old memories, probably jumbled.)
Regardless, the rarity of damage to [indexes plus data spaces] today seems to have made the early issue(s) with PF keys almost entirely moot.
Anybody know more details from way back then? Do reasonable reasons exist today? (Disregarding tables that don't need keys in the first place, etc.)
Tom Liotta
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.