return to PRS Technologies website
I have a bad chunk in a dbspace that is bad and marked "down" by Informix. But I didn't really care about the data in that chunk anyway, so I just want to drop it. But when I try to drop the chunk using "onspaces" it says I can't because it is "down".
I don't want to do a restore of the whole database, and I would prefer
not unload all the tables in the dbspace which this chunk resides in
to drop the entire dbspace because that could take days. I believe
Informix support can force the chunk to drop, but is there any way I
can force the chunk to drop without going through Informix support ?
Well - it seems that there is no way to drop a bad chunk unless you get Informix support to do it for you. It seems that they may go into the rootdbs and change the chunk to a blobspace and then drop it. This is eventially what we did. I think the onspaces -s may only work if you are using Informix mirroring. (** not true - see below **) See below for various input from people on this matter.
You CAN bring up a down chunk - even without mirroring. It works, even though this is a bit of a contradiction. You can't bring a down chunk online if the data is bad. If the data isn't bad - why would the chunk be down ? Never the less, it worked once for me. This is what it looks like:
AFAIK, if a chunk is marked as "down", only Informix can mark it as up. Also, you can't drop a chunk if there is anything in it. This would lead me to believe that your only real option is to call support to let them mark it up (then you could delete the data - check data by: oncheck -pe) or delete it.
Ron M. Flannery
I'm not sure that advanced support can forcibly cause a chunk drop within a dbspace that contains data. I know they can mark a chunk "up" but that's it.
So the short answer to your question is "no" and you'd never really want to anyway - data integrity and all that. Over rated, I know but still . . . :)
You may be able to drop the chunk, depending on why is is down, using: onspaces -s ....... If so you can delete the data in the chunk or drop the table(s) and/or fragments there. Then you will be able to drop the chunk using onspaces -d unless some database resides in that chunk. If onspaces refuses take Carlton's advise and have tech support mark it up for you then clean and drop it.
Art S. Kagel
You have one possibility. Try first bringing the chunk up using onspaces -s to change the chunk status to "Online". Then drop the space. This will only work if you cure the underlying problem that took the chunk offline in the first place.
Otherwise, you need to call Informix Support. The will poke around in the rootdbs and probably change the chunk to a blobspace and then drop it.