Detecting corrupt or invalid indexes ahead of time

Nancy Palmquist nlp at vss3.com
Wed Nov 5 10:17:23 PST 2008


Mike Schwartz wrote:
>      Does anybody have a utility that detects a corrupt or invalid index 
> before a user encounters it?  If filePro can tell me that I have an 
> “invalid” index when I rebuild it, then can I programmatically examine 
> all the indexes on a continuous basis in order to determine exactly when 
> an index went “invalid”?
> 
>  
> 
>      One of my customers is running a large filePro 5.0.5D4 system  on 
> SCO Openserver  5.0.6.  Lately they have been having an occasional 
> problem with one or more of the indexes getting corrupted. 
> 
>  
> 
>      The worst problem is that the programs seem to be operating 
> correctly, but suddenly a user will detect that the correct data isn’t 
> getting returned.  When they get everybody off the system and try to 
> rebuild the index, the index shows as “invalid”, so they have to delete 
> it and re-enter the fields and lengths to rebuild it from scratch.
> 

Make them a menu item that knows how indexes are built.
>  
> 
>      I’m not sure what the (filePro) definition of an invalid index is.  
> Has filePro determined that the index is the wrong length?  Is there a 
> bit or byte in the header of the index that filePro sets to “invalid” if 
> it finds a corrupt area or something else in an index that it doesn’t 
> like?  Or is it the dxmaint program that does a quick read-through of 
> the index, and then displays it as “invalid” on the menu rebuilding screen?
> 
>  
Invalid usually means the file is locked.  Unlock the file and look again.
The fact that the index is returning incorrect data is troubling in all cases.

Index issues can be caused by:

Incorrect locking when writing records to files.
Users hitting BREAK while filePro is still posting.  (TURN OFF THE BREAK key 
during posting procedures.)
Incorrect exit procedures (closing windows and sessions before all the posting 
is done.)
Badly formed indexes - I have seen indexes built on data that is not very unique 
have issues when the number of records is large.  For example,  Index built on 
Y/N field only.  This is open for discussion, but is getting better the later 
the version.  I want indexes to represent data that is as close to unique as 
possible.  Add a second sort to the Y/N kind of index such as customer number or 
date or part number.  It will still work for Y/N but you just made the sort more 
unique.

Nancy
> 
>      If the “invalid” flag is something that gets set in the header, 
> could I run a Unix script to read the headers of all the indexes on the 
> system to tell us we have an invalid index?
> 
>  
> 
> Thanks!
> 
>  
> 
> Mike Schwartz
> 
>    
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Filepro-list mailing list
> Filepro-list at lists.celestial.com
> http://mailman.celestial.com/mailman/listinfo/filepro-list


-- 
Nancy Palmquist 		MOS & filePro Training Available
Virtual Software Systems	Web Based Training and Consulting	
PHONE: (412) 835-9417		   Web site:  http://www.vss3.com


More information about the Filepro-list mailing list