[Info-vax] ABS *TLE.DAT catalog files and duplicates on CONVERT (catalogue)

Hein RMS van den Heuvel heinvandenheuvel at gmail.com
Wed Oct 23 23:37:22 EDT 2019


On Monday, October 21, 2019 at 12:02:07 PM UTC-4, Baldrick wrote:
> I think this affects ABS V various... On Alpha VMS.
> 
> Doing catalog converts for the *TLE.DAT, the convert fails saying there is a 
> duplicate key but duplicates not allowed. 
:
> Looking at the FDL in the ABS$SYSTEM area there are 5 keys :-

Is that a 'fresh' FDL of the file to be converted, or a target FDL which might not match the source.
Did you try a convert WITHOUT FDL and did that also fail?

If convert for a file with the same structure/FDL results in a duplicate, then that source file is corrupted and other seemingly random behaviour my happen. 
Possibly, but unlikely, a process started to insert a record, but failed before updating the alternate key not allowing dups, or possible it ran into the duplicate, but failed to unravel the insert all the way leaving the base record.
Note - this is why you really want the keys which do not allow duplicate to be the 'first keys' - possibly primary keys.
You do not want RMS to start updating structures only to find out it cannot be done well down the path.

 
Beside the troubleshoot/correction list you could consider
- Allowing duplicates! Then use tools (sort, datatrieve, ...) to determine which record is undesirable.
- Make a test convert with a file just using that key which does not allow duplicates, and convert with /exception to find out the attributes (primary key) of the record(s) which issues.

Sorting first is only useful if you use CONVERT/NOFAST, inserting records one-at-a-time.... very slowly.

The primary key order will determine which of the duplicates comes first.

Good luck!

Hein






More information about the Info-vax mailing list