in-place alter or slow alter?
Posted in 2006
Topics: Storage & Space Management, Error Codes & Troubleshooting, Data Types & Schema Design
Hi all,
I wish to modify the data type of a column from decimal(11,2) to
decimal(11,3) in a huge table (around 80000000 rows). I am using IBM
Informix Dynamic Server Version 9.40.FC7. I tried several times but
failed. It gave me the following messages:
222: Cannot write to temporary file for new table
131: ISAM error: no free disk space
I think it is using the slow alter and it is creating a separate copy
of the same table (with the changes made) in the same dbspace as the
original table. If it is correct, can I force it using the in-place
alter instead of using slow alter. I don't want to add additional
dbspace just to enable the modification take place. If it cannot be
forced, is there any other easier way the perform the alter?
Thanks in advice for your help.
ggk517@gmail.com wrote
> I wish to modify the data type of a column from decimal(11,2) to
> decimal(11,3) in a huge table (around 80000000 rows). I am using IBM
> Informix Dynamic Server Version 9.40.FC7. I tried several times but
> failed. It gave me the following messages:
>
> 222: Cannot write to temporary file for new table
> 131: ISAM error: no free disk space>
> I think it is using the slow alter and it is creating a separate copy
> of the same table (with the changes made) in the same dbspace as the
> original table.
Is the row indexed ?
Then there will be an normal - not an In-place alter ?
In this case I think it is indeed better to create a copy of the
table an load everything into the new table and then do a drop and
rename
tables.
HTH
Tilman