Re: "gc cr multi block request" and "Current Blocks Received"

  • From: K Gopalakrishnan <kaygopal@xxxxxxxxx>
  • To: kamusis@xxxxxxxxx
  • Date: Sat, 20 Nov 2010 18:03:44 -0600

Kamus,

Depending on the state of the block and mode, you might get a cr block or
current block. Here is the possible operations for your gc cr request. I
have dealt these issues little bit  in my upcoming 11g RAC book, however you
might have to wait for few months to get a copy in your hand. So to answer
your question here is the possible answer.

If 'gc cr request' is made from your instance
 If the block is not cached elsewhere,
 You get the CR grant, and wait on 2-3 way messages.

If the block is held in X mode in another in another instance
 Holder constructs CR copy and you get the block.
<gc cr block received>

If the block held in S mode in another instance,
And if the holder=master, you get the current block.
 <gc current blocks received>

However please keep in mind undo block (header/data) transfers are always
current blocks, though it increments the 'gc cr blocks received' stats.

-Gopal



On Fri, Nov 19, 2010 at 5:21 PM, Leyi Zhang (Kamus) <kamusis@xxxxxxxxx>wrote:

> Hi, experts:
>
> We have a RAC system, in AWR report "gc buffer busy" is top 1 wait (31
> Percent Total DB Time), and "gc cr multi block request" is the 2nd (21
> Percent Total DB Time)
>
> But in AWR report - "Segment Statistics" section ,we can only find
> there are lots of "Current Blocks Received", not so much "CR Blocks
> Received".
>
> So my question is: Is it possible If a session waiting on "gc cr multi
> block request" and then it  received a  "Current Block"?
>
> --
>
>

Other related posts: