Re: How SEG$ is updated in DMS

  • From: Hemant K Chitale <hkchital@xxxxxxxxxxxxxx>
  • To: Niall Litchfield <niall.litchfield@xxxxxxxxx>, hkchital@xxxxxxxxxxxxxx
  • Date: Tue, 01 Feb 2005 18:20:21 +0800

True.  The Temporary Segment has already been created.  Next Extents are being
allocated. That is why SEG$ is being updated.  My question was about
why the update to SEG$ has to re-update *EVERY* column in the table.

No, it hasn't begun writing to the Index segment yet. I can differentiate
between the TEMP segment for Sort operation in the Temporary Tablespace
and the TEMP segment for the Index itself in the Index Tablespace.
I know that with large indexes, it doesn't begin writing the Index segment
immediately, only after the Sort operation TEMP segment has grown 
significantly.


At 05:17 PM Tuesday, Niall Litchfield wrote:
>On Tue, 01 Feb 2005 11:12:22 +0800, Hemant K Chitale
><hkchital@xxxxxxxxxxxxxx> wrote:
> >
> > While running a large CREATE INDEX using a Tablespace Temporary which is
> > Dictionary Managed,
><snip sql>
> > At this stage, it is still creating the Temporary Segment.  Why does it 
> have
> > to update ALL the columns of SEG$
> > for each Extent being allocated ?  No wonder that DMS Temporary Tablespaces
> > are called "slow".
>
>I don't believe that it is *creating* the temporary segment, I believe
>that it is *allocating* extents for use during the sort. (it could of
>course be allocating extents to the index itself - one would need to
>see the values of the binds).
>
><snip>



>Niall Litchfield
>Oracle DBA
>http://www.niall.litchfield.dial.pipex.com


Hemant K Chitale
http://web.singnet.com.sg/~hkchital



               
--
//www.freelists.org/webpage/oracle-l

Other related posts: