Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Temporary Tablespace and RAC

RE: Temporary Tablespace and RAC

From: Balakrishnan, Ashok - VSCM <>
Date: Fri, 21 Mar 2003 11:23:40 -0800
Message-Id: <>

Here's a scenario -

Connections are load balanced (server-side) over both the instances of the RAC. Temp Space is 10GB.

User "A" (non-expert) connects to instance 2 from a GUI tool and clicks on the data-tab of a 50-million row table and chooses to order by some huge column. This results in temp space allocated to Instance 2's temp segment and allocated to session A. 9.5 GB has been allocated to Instance 2's temp segment, user is still running query. Instance 1 has only 500MB in its TEMP segment to serve its sessions.

A production application "B" connects to instance 1 and runs a valid query which doesn't have enough TEMP space since all the space has been de-allocated from Instance 1's temp segment and allocated to Instance 2 temp segment. At this point sessions connected to Instance 1 have very little or no temp space.

If 10 GB could be split among instances, or even separate TEMP tablespaces tied to each instance, then you can (to some extent) guarantee TEMP space at instance level. You're trying to protect sessions connected to one instance from a rogue-session on another instance which is draining all TEMP space.

Another way is to have obscene large TEMP space, but there should be a better way to handle this.

Hope this makes sense. Any ideas?

-----Original Message-----
From: Murali Vallath [] Sent: Thursday, March 20, 2003 6:09 PM
To: Multiple recipients of list ORACLE-L Subject: Re: Temporary Tablespace and RAC

Hello Ashok

What are u seeing to make you believe that you need separate temp segements per instance?

Murali Vallath

To: Multiple recipients of list ORACLE-L <> Date: Thu, 20 Mar 2003 17:14:18 -0800

Is there a way in RAC that I can create 2 TEMP tablespaces which can be explicitly assigned to separate instances of RAC. Or is there a way that to specify the size of the instance-specific temp segments? If I have a TEMP tablespace with a size of 10GB, how can i split it between 2 instances with 5GB each. We're using

Are there any white papers that talk about how TEMP is managed in RAC?

As I understand it, if you have a single TEMP tablespace, there will be 2 temp segments created under the TEMP tablespace specific to each instance and extents will be allocated from those segments to each instance's session, but Oracle doesn't allow for TEMP space to be pre-allocated between instances. Depending on the instance-specific TEMP segment's requirements, it allocates and deallocates automatically between segments.

STOP MORE SPAM with the new MSN 8 and get 2 months FREE*


Please see the official ORACLE-L FAQ:

Author: Murali Vallath

Fat City Network Services    -- 858-538-5051
San Diego, California        -- Mailing list and web hosting services
To REMOVE yourself from this mailing list, send an E-Mail message to: (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may Received on Fri Mar 21 2003 - 13:23:40 CST

Original text of this message