Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Mailing Lists -> Oracle-L -> RE: How do commits release row level locks?

RE: How do commits release row level locks?

From: Naveen, Nahata (IE10) <>
Date: Tue, 17 Feb 2004 04:20:07 -0700
Message-ID: <>

Thanx Jonathan,

I did understand what you said, but still have a few questions regarding this.

Are there any FMs or metalink notes from where I can get information on this subject so that I only come up with smart questions?


>-----Original Message-----
>From: Jonathan Lewis []
>Sent: Tuesday, February 17, 2004 3:36 PM
>Subject: Re: How do commits release row level locks?
>I think Arup has been doing a lot of work with RAC
>recently, and the article assumes that you may have
>multiple free list group blocks.
>Moreover, if you have a default DBCA install of 9.2,
>then your tablespace is probably ASSM (as mentioned
>in Arup's last paragraph), and can't have multiple
>freelist group blocks.
>The first potential data block will be immediately after
>the segment header block; but there is a problem with
>ASSM because the first batch of blocks at the start of
>the first extent may not be the first block formatted.
>For ASSM the first extent blocks will usually be:
> Level 1 bitmap
> Level 2 bitmap
> Segment header block
> Available data blocks.
>For large extent sizes, the may be more than one Level 1
>bitmap block before the level 2 bitmap block.
>I tend to look at dba_segments for the location of the
>segment header block (header_file, header_block),
>then look at dba_extents, in order for the start of the
>actual extents. (file_id, block_id).
>Historically, file_id, block_id of extent ZERO used to match
>header_file, header_block of dba_segmentss; but with ASSM,
>this is no longer true.
>To find out where your data blocks are on a SMALL test,
>you need to dump the first block of the first extent to find
>out which blocks in the extent are formatted. In general,
>though, for a large, busy, table, all the space in everything
>but the last extent has probably been formatted and used.
>My general approach to picking a few blocks are random
>is to do
> select file_id, block_id + 4 from dba_extents where ...
>This usually picks one data block from each extent.
>Jonathan Lewis

Please see the official ORACLE-L FAQ:

To unsubscribe send email to: put 'unsubscribe' in the subject line.
Archives are at
FAQ is at
Received on Tue Feb 17 2004 - 05:20:07 CST

Original text of this message