I have a corrupt PRO-ISAM file. I have tried to copy it in PRO-IV, repair it with ISCHK, and ISOUT to a sequential file. All efforts fail. Is there anyone out there that has some utility/trick/method of trying to retrieve the data.

Corrupt PRO-ISAM File
Started by George Walton, Oct 11 2002 05:23 PM
6 replies to this topic
#2
Guest_Adrian Fuentes_*
Posted 11 October 2002 - 06:10 PM
Not a problem for me now that I use Oracle, but I used to create a ProIV update to copy the original file to an equivalent (same strcuture) temporary pro-isam file. Then I recreated the corrupted file with @CREATEF and with another update copied the records back from the temporary file. I used to lose a few records that way,
Regards,
Regards,
#3
Posted 11 October 2002 - 06:26 PM
Couple other tricks ...
depending on the key structure if you could perform direct reads on the corrupt file and then write it to a temp file.
Also sneaking up on the corrupt area and then exiting the function and re-enter the function and set the key past the corrupt area and continue on. You will lose data but retrieve the valid data.
I have found that running it on a SCO unix server(as a pro 4 update or ischk) gives better results than on a W? or Linux version of Pro4.
There is also the pro-isam file utility people? Have not used them but they are out there. http://www.net-aware.com/
HTH
depending on the key structure if you could perform direct reads on the corrupt file and then write it to a temp file.
Also sneaking up on the corrupt area and then exiting the function and re-enter the function and set the key past the corrupt area and continue on. You will lose data but retrieve the valid data.
I have found that running it on a SCO unix server(as a pro 4 update or ischk) gives better results than on a W? or Linux version of Pro4.
There is also the pro-isam file utility people? Have not used them but they are out there. http://www.net-aware.com/
HTH
#4
Posted 12 October 2002 - 03:55 AM
Just one thing.
Never repair a file using ISCHK.
If you get a corrupt PRO-ISAM file, use ISCHK to see if there is an error. This will only give true results if all users are logged off the system. ISCHK will report errors if users are logged on.
When you run ISCHK - do NOT use the repair option.
After running ISCHK, the best course of action it to ISOUT the corrupted file, move the original corrupt file & ISIN again.
I've never had a problem with this method.
Best regards
Pete
Never repair a file using ISCHK.
If you get a corrupt PRO-ISAM file, use ISCHK to see if there is an error. This will only give true results if all users are logged off the system. ISCHK will report errors if users are logged on.
When you run ISCHK - do NOT use the repair option.
After running ISCHK, the best course of action it to ISOUT the corrupted file, move the original corrupt file & ISIN again.
I've never had a problem with this method.
Best regards
Pete
#5
Posted 15 October 2002 - 12:55 AM
Hi,
I have once encountered with corrupted PRO-ISAM file. The situation was:
- There was garbage in the middle of file; the function can read from the top of file till it reached the corrupted records, but once I started from the record after the corrupted records , the function continue read till the end of file. I checked with iskeys command.
The way to fix this problem:
- use isout with 'end key' option, create a seq file from the 1st record till the record before the corrupted record. You may name it as 'data1.seq'
- use isout with 'start key' option, create a seq file from the record after the corrupted record till the end of file. You may name it as 'data2.seq'
- change the name of your corrupted file (such as 'corrupteddata.pro' or whatever but don't delete it), then use isin for both 'data1.seq' and 'data2.seq' to recreate a new PRO-ISAM data file. You will lose only the corrupted records.
Hope this will help
Surajit
I have once encountered with corrupted PRO-ISAM file. The situation was:
- There was garbage in the middle of file; the function can read from the top of file till it reached the corrupted records, but once I started from the record after the corrupted records , the function continue read till the end of file. I checked with iskeys command.
The way to fix this problem:
- use isout with 'end key' option, create a seq file from the 1st record till the record before the corrupted record. You may name it as 'data1.seq'
- use isout with 'start key' option, create a seq file from the record after the corrupted record till the end of file. You may name it as 'data2.seq'
- change the name of your corrupted file (such as 'corrupteddata.pro' or whatever but don't delete it), then use isin for both 'data1.seq' and 'data2.seq' to recreate a new PRO-ISAM data file. You will lose only the corrupted records.
Hope this will help
Surajit
#7
Posted 23 December 2012 - 12:05 AM
i have similar problem with a file, a try use ischk for repair the corrupt file; this command display :
Invalid Index Level: page 0x1
Invalid Page Leght: page 0x1
and when try use isout the meesage error is:
Error reading empldos.pro; FS_EBADINDEX invalid index structure
[107 - invalid Index - Rebuild ]
I need rebuild the index.
How i do this?
Sorry for my bad inglish
Regards
Invalid Index Level: page 0x1
Invalid Page Leght: page 0x1
and when try use isout the meesage error is:
Error reading empldos.pro; FS_EBADINDEX invalid index structure
[107 - invalid Index - Rebuild ]
I need rebuild the index.
How i do this?
Sorry for my bad inglish
Regards
Reply to this topic

0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users