This is what I get.
SQL> select sum(bytes) from dba_free_space where tablespace_name='TEMPORARY_DATA';
I have increased the initial and next extent to 1MB and also made the pctincrease to 0.
Even then I am getting the error
SQL> analyze table test compute statistics;
analyze table test compute statistics
ERROR at line 1:
ORA-01652: unable to extend temp segment by 512 in tablespace TEMPORARY_DATA.
ops sorry I forgot to add something in the query
anyway query dba_free_space to find out the largest extent available in your tablespaces
select tablespace_name, max(bytes) "largest free extent" from dba_free_space
group by tablespace_name
may be you dont have enough free contiguos space for the tablespace temp to extend (it has enough free space but they are not contiguos)
This is what I get when i run the query.
SQL> select tablespace_name, max(bytes) "largest free extent" from dba_free_space
2 group by tablespace_name
TABLESPACE_NAME largest free extent
Also please note that Now I have assigned the TEMP tablespace to the user and its largest free extent is 1054720.
I am still getting the error.
BTW whats the best way to size the temporary tablespace rather than to keep on increasing its size every now and then. There should be some way where I can predict the temporary tablespace size requirements by doing some calculations.
[Edited by anuragmin on 05-30-2001 at 01:57 PM]
what version of oracle are you using. There is a bug in 8.1.5 that causes similar problems and has been fixed in 8.16 or 8.1.7
If you are using 8.1.5, try setting your temporary tablespace to permanent and try your query.
[Edited by uday on 05-30-2001 at 01:59 PM]
I am using Oracle 8.0.5 for windows NT.
You know what, since you have pctincrease 50 previously and your inital and next were so small that your current NEXT might be huge! (actually I think this is what is happening)
I dont know a way to deallocate the sort segments in temporary tablespace except
restarting the database
recreate the temporary tablespace
if itīs a critical database I would create a new temporary tablespace with pctincrease 0 and assign that new temp tablespace to all users then drop the old temporary tablespace
I increased the datafile size of the temporary table space to 300 MB and set the maximum extents values for the temporary table space to unlimited and it worked.
In the OEM it shows me that used is 261 MB.
It needs this much of space only while querying one particular table which has millions of rows in it. This is the only table in that schema.
Is it OK if I assign a specific temporary table space to it which no other user uses and define the storage parameters as Initial = 300MB so that it does not have to assign extents and will inturn improve performAnce.
Always set INITIAL and NEXT parameters value for the temp tablespace to multiples of SORT_AREA_SIZE.
Click Here to Expand Forum to Full Width