REINDEX

Andrew Sinning andrew at learningware.com
Mon Aug 29 11:51:14 CDT 2005


Thanks for your reply Florian!

Florian Bogeschdorfer wrote:

>>So, then how often should I do a diagnose?
>>    
>>
>
>Hi Andrew!
>
>I have never ran into this problem while I do delete a lot, really! Some
>questions: 
>
>Server or local?
>Xtra build?
>Server build?
>
>If server: which side is the cursor?
>
>How often do you call flush? After every delete?
>
>Best regards, FLorian
>  
>
Local only.  xtra version 1.11.

In my most recent test, I did a Flush() after every delete, just to rule 
that out.  It didn't help. 

The only thing that solved the problem was to do a REINDEX after every 
delete.

Of course that many REINDEXes is not a good idea, so I am now modifying 
my code to REINDEX only after a SELECT results in 0 cursor records.  I'm 
also building in some controls to prevent excessive REINDEXes.

It's very likely that the reason this is happening is that there is 
someother corruption in the database, a corruption that has resulted 
from bad programming or insufficient error checking in the processes 
that lead up to the configuration where I can reproduce the bug.

If Flush() the most important tool for preventing database corruption?  
How often should I Flush()?  After every insert or ALTER or DELETE?  
Should I build into my main db parent object a process that keeps track 
of the number of changes and then run Flush() after a certain number of 
changes?

How do you handle this, Florian?

Thanks.


More information about the Valentina mailing list