The fastest way to delete an index

bulklodd

Member
I wonder whether there's a way to mark an index as deleted without its physical deleting and then to delete it using idxbuild or something like that.

progress 10.1a01.

please, don't suggest 'truncating an area', it's not my case

TIA
 

joey.jeremiah

ProgressTalk Moderator
Staff member
you can deactivate an index. won't free up the space but it'll stop the
overhead of maintaining an index.

btw doesn't openedge sql have fast index drop, anyone ?

Code:
for first _file 
where _file-name = "item",
 
first _index of _file
where _index-name = "itemnum":
 
_index._active = no.

or from the data admin ( maybe from architect but i don't have one )

to activate an index you can use the proutil idxbuild. don't know if
10.1a scans only the table' cluster or the entire area, still.

another thing i'm not sure about, off the top of my head, is if idxfix,
which uses another index to only scan that table, activates an index.

where are the docs when you need'em
 

bulklodd

Member
joey.jeremiah said:
btw doesn't openedge sql have fast index drop, anyone ?

A fresh idea, I'll have to try that.

Code:
for first _file 
where _file-name = "item",
 
first _index of _file
where _index-name = "itemnum":
 
_index._active = no.

or from the data admin ( maybe from architect but i don't have one )

the data admin certainly has a possibility to deactivate an index.

another thing i'm not sure about, off the top of my head, is if idxfix,
which uses another index to only scan that table, activates an index.

where are the docs when you need'em

both tools idxfix & idxbuild have a such possibility to activate an inactive index but miss a possibilty to delete one. But nevertheless I hope I confused something and overlooked that possibility

Thanks anyway
 

bulklodd

Member
I want to make my problem clear. I have to make db schema update which includes deleting of two redundant indexes and creation of a new one instead. Creation of a new index means the use of 'idxbuild' therefore I'd wish just to mark the redundant indexes as deleted to remove them using idxbuild. Instead of that I'll have to waste my time deleting the indexes in usual way and then run idxbuild to activate the new one. It's a bit ridiculous because all these operations can be executed in the single idxbuild process.

btw the best way I have it's the use of -i parameter to speed up this process.
 
Top