Re[2]: ONLOAD : How to specify first & next extent sizes
Posted in 1998
Dilip,
I ran onload for the single table on to a seperate new dbspace, and it
created 4 extents, even though there was enough contigous space. Here are the
statistics
INFORMIX ODS 7.23 UC1 on IBM AIX 4.1.4
Table size is 4.9 Gig.
I have 5 chunks of app 1.7 Gig comprising a dbspace which is to be used
exclusively for this table.
After the onload, I ended up having 4 of the five chunks used, even though 3
would have done the job. Which showed the new re-organised table as having 4
extents
The funny part is that I also tried this using the "alter fragment ... init .."
and it ended up creating 3 extents ( ie it used 3 of the 5 chunks )
Is each chunk counted as an extent, even though they exist in the same dbspace
?? Why the difference in behaviour.
Also, I had a problem with onload with the ODS specifying the following error
halfway thru the procedure:
Assert Failed: WARNING! pthdrpage:ptalloc:bad partn page
14:25:42 Who: Session(10, informix@hostname, 28848, 1342569624)
Thread(71, sqlexec, 50040a54, 1)
14:25:42 Results: Cannot use TBLSpace page for TBLSpace 4194490
14:25:42 Action: Run 'oncheck -pt 4194490'
14:25:42 See Also: /infxdump/af.47d5e5
After this, I was unable to query on the table. I am right now in the process of
restoring from backup
Any suggestions ?
Thanks
Sujata
____________________Reply Separator____________________
Subject: Re: ONLOAD : How to specify first & next extent sizes
Author: <dkikla@informix.com >
Date: 3/20/98 5:36 PM
Sujata,
Onload is only good if you only want to defragment one table. Onload
will put the whole table in a single dbspace and in a single extent if
there is sufficient contigous space. After the operation completes you
can alter table for next size before inserting any futher rows.
Onload does not work very well for the full database. It is effective
for databases if the full database is in a single dbspace. There is no
control of specifying which table needs to go to which dbspace.
dbexport/dbimport may be used for this.
Dilip Kikla
ssoman@omm.com wrote:
>
> Hi all,
> In my efforts to de-fragment my biggest tables, I have come up with a
> problem. I "onunload" - ed my table to tape, created new dbspaces to hold the
> new table. The next step therefore is to drop my old table, and "onload" the
> table back into the new dbspaces. But, HOW do I specify the first and next
> extent sizes, since onload creates the table as opposed to loading the data
into
> a created table ? I do not see a parameter for first and next extent sizes on
> the "onload" syntax, so how then does "onload" work ? Also, how can I specify
> multiple dbspaces for "onload" to load data ??
> Secondly, how do I verify that my "onunload" is good ? I have taken an
> ontape level 0 backup also. Is there any other backup method that I should
use,
> incase onunload fails ?? My table is quite large - about 8 Gig.
> Thanks for the help
>
> Sujata
> *****************************************
> Sujata Soman
>
>
> E-Mail: ssoman@omm.com
>
> O'Melveny & Myers, Los Angeles
>
> ******************************************