Thanks, Josh
[EMAIL PROTECTED] wrote:
Josh Marcus wrote:
Has anyone ever seen a UniData file have its index become
disconnected
from the data file? I have a file that used to have
indexes. I can
verify that because I have a LIST.INDEX printout from a
few
months ago showing them. However, they are no longer in place. When I
run
LIST.INDEX against the file, it reports there are none.
I checked at the Unix level and there was still an index
file
(X_TX.ARCHV) next to the data file.
Not knowing what else to do, I tried to add one of the indexes back to the file. I got this:
CREATE.INDEX TX.ARCHV TXA.CAMPAIGN "TXA.CAMPAIGN": can not create multiple indices on same
location
After that, the index showed up in LIST.INDEX.
Furthermore, LIST.INDEX
tells me the index is built, and selections on the file
behave like
there are built indexes in place.
Anyone have any ideas as to what's going on here? Should I
be
concerned?
The file in question is a dynamic file, if that is of any
relevance.
System info: UniData 6.0.11 on Tru64 Unix 5.1a.
The index for a dynamic UniData file is not stored as X_file. Instead, the index is stored in idx00n partitions inside the directory that holds the primary and overflow partitions.
Is it possible that someone converted this file to dynamic recently and the index conversion part of the process didn't go through properly - maybe because of permissions? I've seen scenarios where over zealous system administrators imposed a 0111 umask which meant you could create a new directory for a dynamic file, but couldn't subsequently do much with it because you couldn't list its contents!
Anyhow, the X_TX.ARCHV is certainly not related to any indexes on TX.ARCHV if TX.ARCHV is really a dynamic file, in which case TX.ARCHV will be a directory at the OS level.
You CAN disconnect an index from a file but leave the OS index files in place, but you either have to have some file corruption, or someone playing cleverly (or stupidly) with fileview.
I'd strongly recommend you check the VOC pointer for TX.ARCHV and make sure that the one you are looking at at the OS level is the same one being accessed when you are inside UniData. I'd then check if it really is a dynamic file, and if so, then simply rename your X_TX.ARCHV as something which will remind you to delete it after a day or so. Then run guide against the file to check for any corruption, fix that up with fixfile, and then re-address the indices question. If LIST.INDEX shows you that there really is an index, run guide_ndx against it and consider doing as Colin suggests and DELETE.INDEXing everything before CREATE.INDEXing them again.
Cheers,
Ken ------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/
------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/