Common Global Cache Wait events

Source: Internet
Author: User

GC CR Disk Read Event

When node 1 needs to read the block in the buffer cache of Node 2 and the block contains uncommitted transactions, then node 2 's LMS process needs to roll the block back to node using the undo record 1 launch the content of that moment and then to Node 1, if the undo record in the undo block is not in the buffer cache node 2, node 1 will appear on the GC CR disk read event, that node 1 is waiting for node 2 lm s grants it the right to read the undo block directly from the disk.


GC Current Block 2-way

Node 1, node 2 of the buffer cache does not have block a, then node 1 read a block a row in a, then Node 2 also read Block A or a row in block a DML operation, in both cases node A "GC current block 2-way" will appear on the 2, which means that the block version that node 2 reads or modifies is up-to-date, and there are no uncommitted transactions in the block. It should be noted that after the "GC Current block 2-way" event occurs, the GRD will be KJUSERPR (read operation) or Kjuserex Lock (write operation) for the block.


GC CR Block 2-way

There are two things to subdivide.

(1), node 1 modified the record but did not submit:

Node 1, node 2 in the buffer cache does not have block a, when node 1 modifies a row in block a, but does not commit, and then node 2 performs a select Block a operation, according to the definition of consistent read, node 2 At this point, you should receive block A at the time the select initiates the snapshot of Block a ', block a ' will be constructed by the LMS process on Node 1 to apply the undo record to block A, and then to Node 2, when the node A "GC CR block 2-way" Wait event occurred on 2, Node 2 received block A ' is marked as CR type in buffer cache, and the CR class block only satisfies the needs of the second query and cannot be reused by subsequent queries, that is, if node 2 Only then initiates a select operation for Block A, and the LMS Process on Node 1 reconstructs a block a "and then passes it to Node 2, although the contents of block a ' and block a ' are exactly the same. This feature determines that the CR block does not require any locks to be protected in the GRD during construction and transmission.


(2), Node 1 has modified the record and has submitted:

Node 1, node 2 in the buffer cache does not have block a, then node 1 modifies a row in block A, and has been committed. Because of the role of the _fairness_threshold parameter, when node 2 performs a select Block a operation, it is still possible to trigger the LMS process on Node 1 to construct the CR block and then transfer the action to Node 2, and Node 2 will encounter the GC CR Block 2-way wait.


It is worth mentioning that whether it is GC CR Block 2-way or GC current block 2-way, their appearance does not mean that the performance of the RAC is not a problem, it can be considered as a message class wait event, only means that there is a block transmission between two nodes, However, if it is found in the awr that the two waiting events take a long time (>10ms), you can think that there are bottlenecks on the network and need to contact the network administrator to intervene


GC Current block busy

When node 1 is updating block A, Node 2 also initiates an update to block a, when node 2 waits for the LMS process on Node 1 to construct a block image of block A at Node 2 when it initiates the update, and Node 2 receives the block A the GC current block busy state before the a image is


GC CR block busy

When node 1 is updating block A, Node 2 initiates a query for block a, when node 2 waits for the LMS process on Node 1 to construct a block image of block A at Node 2 when it initiates the query, and Node 2 receives the block A in GC CR block busy state before the a image


GC Buffer Busy Acquire

Instance 1 and instance 2 of the buffer cache contain a block,t1 moment instance 1 modified this block,t2 moment instance 2 on the session 1 read this block, when the read is not completed, instance 2 on the session 2 also initiated the operation to read the same block, Session 2 will then wait on the GC buffer busy acquire. Example 2 The more sessions that are simultaneously initiated to read the same block, the more likely we are to observe the GC buffer busy acquire wait.


GC Buffer Busy Release

When Session#1 tries to request access to the local instance buffer, it discovers that the SESSION#2 request to the remote instance has been accessed by the buffer and is not completed, then session#1 waits for GC buffer busy release.


Organized from:

How the global cache waits for you to look familiar how the event is triggered (a)

http://blog.itpub.net/53956/viewspace-2125576/

This article is from the "just out of the shell of the Birds" blog, please be sure to keep this source http://qhd2004.blog.51cto.com/629417/1860722

Common Global Cache Wait events

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.