Posted by: Edi Yanto on: April 19, 2009
Cause: Failed to allocate an extent of the required number of blocks for a temporary segment in the tablespace indicated.
Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.
MetaLink has a very detailed and informative article concerning ORA-01652 and RAC. There is some troubleshooting required with ORA-01652 in RAC because there are two common causes in this area.
To troubleshoot for ORA-01652, and find out which of the above scenarios are causing ORA-01652 use this query offered by MetaLink:
select sum(free_blocks)
from gv$sort_segment
where tablespace_name = ‘<TEMP TABLESPACE NAME>’
You will know that the first scenario is causing ORA-01652 to be thrown if the free block reads ’0′ because it signifies that there is no free space.
If there is a good amount of space, you know that there is another cause for ORA-01652, and it is probably the second scenario. It is important to note that in a non-RAC environment, local instances are not able to extend the temp segments.
In sever cases, a slowdown may occur, in which you might want try one of the following work-arounds:
If ORA-01652 is causing the slowdown, SMON will probably not be able to process the sort segment requests, you should try to diagnose the contention:
Reference: Oracle Error Tips by Burleson Consulting
Hi Ignacio,
In my case, it completely out of space in the temp tablespace and takes long time for the temp transactions to finish.. it’s a potential workaround for this issue..
Your statement is also right, temp tablespace will reuse the space when the transaction is finished, but how long you can wait?
Thanks..
Edi
Hi,
Very good article. Thanks for providing such great tip.
Hi there I like your post
July 29, 2009 at 4:40 AM
I have read this article and i have some doubts. First, why you sould increase size of temp tablespace when this tablespace re-use the space, and usualy is always full??
I thought it was used to temp transactions, so in the moment the transaction is finished this space is re-usable. am i wrong??
Thanks!!