Page 1 of 1

Copy Surrogate key flat file from old to new environm

Posted: Wed Apr 18, 2018 10:04 am
by dskid
Hello everyone,
i am in the process of migrating parallel jobs from 8.5 to 11.7. some of my jobs use surrogate key's and we are using Surrogate key falte files in transformer stage. i copied all the *.key files from old to new environment but when i run the jobs in v11.7 , it is unable to read the surrogate key files and throwing error "APT_CombinedOperatorController(1),1: Internal Error: (start <= end): surrkey/keystate.C: 107 "
we want to maintain same seq number for our loads, so we need the old files to generate surrogate keys.
We tar surrogate key files from old environment and untar in new environment. When i try to open the file it is in binary format so its unreadable.
Any help is appreciated.

Posted: Wed Apr 18, 2018 10:26 am
by chulett
Check with support, while there may be nothing wrong with the mechanism you're using there could very well be an incompatibility in the file format when you jump ahead so many years / versions.

Or wait and see if anyone here actually knows...

Posted: Wed Apr 18, 2018 10:43 am
by UCDI
it looks like it wants the keys to be in numerical order, and they were not.
If they are supposed to be in order in the binary file, but are not, I would check to see if the sizes changed (eg 32 to 64 bit understanding of the bytes) and that they have the same byte order as before (most significant byte on far left or far right??).

A good hex editor will open the file and tell you the numerical value of the data in various formats (int 8, 16, 32, 64 for example). If you know what the first key in a file is somehow, you could use a hex editor to see what is going on there. It can also find a numeric value in the data if you tell it how wide the value to look for should be...

If it is a very simple binary file converting it back to text may be easy and doable, and you could also see that by looking at it.


you may want to generate a small test file in both versions and compare the differences to see what to do.