David,
I hope you can help me out here, my friend, because this entire thread has gotten me terribly confused (which isn’t hard). There’re some things I just don’t understand.
To begin with, there’s the title of this thread. It indicates that the REINDEX command is supposed to reduce the size of the index file associated with a table, but now it doesn’t. Therefore, this is a bug. However, in checking the documentation in both FPW 2.6 and VFP 7.0, can I find no reference to this being one of the intended purposes of it.
Now assuming (a bad practice, but one that I must indulge it) that I haven’t somehow missed something along the way, it would seem to me that the reduction in the size of the index was a simple by-product of the algorithm. It occurs to me, that using the command to combat index bloat and corruption became a common practice based on this undocumented feature. In short, it feel into the pool of “common knowledge”.
One of the things that I learned a long time ago was not to use undocumented features to resolve problems. In this case, going all the way back to my first usage of FoxPro (FPD 2.0), I used a combination of a re-ordering of the table based on its intended natural order, combined with a meta-data table to re-build the indexes from scratch to combat both bloat and corruption.
Now jumping ahead to the present day, I must also (based on information that both you and Christof Lange have provided) jump to the conclusion that the change in the behavior of the command is intentional and intended to combat these problems. If so, it begs the question of why we’re wasting so much bandwidth on the subject.
For some reason, I’m reminded of another change in behavior that’s also been called a bug. As you know, the expression 1 / 0 = 1 / 0 produces different results between 6.0 and 7.0. This has been called a bug. However, in re-calling the problems caused by certain printer drivers with division by zero, it occurs to me that this may (note “may”) be by design to help combat this problem. If it is, then why would this be a bug also?
So help me out here, David. Have I totally missed the boat on this?
tia,
George
Ubi caritas et amor, deus ibi est