I'm doing some tests before migrating our databases to Type 2 SA and a strange thing occured.
I have one database that is rather small. 18 tables and some 40 megabytes of data. Indeces are around 9 megabytes (according to idxanalys). Since this is a rather small db I thought that one area for each table + a corresponding index area would be a good idea so I created a .st file matching this.
Now the problem occurs when doing tablemove for a specific table, the one containing the majority of the data in the database. The extent containing the tables two indeces grow to 2.4 gigabytes! Isn't that kind of strange?
tabanalys:
PUB.frBoksvar 595149 27.9M 40 1427 49 598387 1.0 3.3
idxanalys of this table:
PUB.frBoksvar
bokBloFra 19 3 4 9152 5.7M 65.1 1.7
bokVer 18 2 3 1396 920.5K 67.8 1.6
.st-file entries for this specific table:
d "frBoksvar":10,64;8 /db1/web/webdb_10.d1 f 2048
d "frBoksvar":10,64;8 /db1/web/webdb_10.d2
d "frBoksvar_idx":11,1;8 /db1/web/webdb_11.d1
We run this database on Linux with a 4096 blocksize.
I do like this:
Dump original db, df + data
Create new database from .st-file
Copy empty 4k block database to new db
Enable large file support for new db
Load df-file to new db
Run tablemove commands for all tables in new db
Load table content into new db
Other index areas also grow large but not this extremely large. What am I doing wrong?
Edited subject.
Found it out myself!
I made a typo when generating a tablemove script and by accident moved all tables into the corresponding index area instead of a fitting table area.