Archive for the ‘RAC’ Category
Reverse Path Filtering and RAC
This is a quick note about reverse path filtering and impact of that feature to RAC. I encountered an interesting problem recently with a client and it is worth blogging about it, with a strong hope that it might help one of you in the future. Problem Environment is 11.2.0.2 GI, Linux 5.6. In a 3 node cluster, Grid Infrastructure (GI) comes up cleanly in just one node, but never comes ...
All about RAC and MTU
Let's first discuss how RAC traffic works before continuing. Environment for the discussion is: 2 node cluster with 8K database block size, UDP protocol is used for cache fusion. (BTW, UDP and RDS protocols are supported in UNIX platform; whereas Windows uses TCP protocol). UDP protocol, fragmentation, and assembly UDP Protocol is an higher level protocol stack, and it is implemented over IP Protocol ( UDP/IP). Cache Fusion uses UDP protocol to send packets over ...
_gc_fusion_compression
We know that database blocks are transferred between the nodes through the interconnect, aka cache fusion traffic. Common misconception is that packet transfer size is always database block size for block transfer (Of course, messages are smaller in size). That's not entirely true. There is an optimization in the cache fusion code to reduce the packet size (and so reduces the bits transferred over the private network). Don't confuse this note with Jumbo ...
Collaborate 2012 presentations
2012_326_Riyaj_scan_vip_haip_doc 2012_326_Riyaj_SCAN_VIP_HAIP_ppt 2012_327_Riyaj_pstack_truss_doc 2012_327_Riyaj_pstack_truss_etc
Temporary tablespace in RAC
Temporary tablespaces are shared objects and they are associated to an user or whole database (using default temporary tablespace). So, in RAC, temporary tablespaces are shared between the instances. Many temporary tablespaces can be created in a database, but all of those temporary tablespaces are shared between the instances. Hence, temporary tablespaces must be allocated in shared storage or ASM. We will explore the space allocation in temporary tablespace in RAC, in this blog entry. In ...
gc buffer busy acquire vs release
Last week (March 2012), I was conducting Advanced RAC Training online. During the class, I was recreating a 'gc buffer busy' waits to explain the concepts and methods to troubleshoot the issue. Definitions Let's define these events first. Event 'gc buffer busy' event means that a session is trying to access a buffer,but there is an open request for Global cache lock for that block already, and so, the session must wait for the ...
Troubleshooting LMS processes
This was created circa July 2011. Enjoy. [wpvideo mabMGh2o]
SCN – What, why, and how?
In this blog entry, we will explore the wonderful world of SCNs and how Oracle database uses SCN internally. We will also explore few new bugs and clarify few misconceptions about SCN itself. What is SCN? SCN (System Change Number) is a primary mechanism to maintain data consistency in Oracle database. SCN is used primarily in the following areas, of course, this is not a complete list: Every redo record has an SCN version of the redo record ...
GC cr disk read
You might encounter RAC wait event 'gc cr disk read' in 11.2 while tuning your applications in RAC environment. Let's probe this wait event to understand why a session would wait for this wait event. Understanding the wait event Let's say that a foreground process running in node 1, is trying to access a block using a SELECT statement and that block is not in the local cache. To maintain the read consistency, foreground process will require ...
RMOUG 2012 – Hello Denver!
On February 14-16, I’ll be at the Colorado Convention Center in Denver, Colorado for RMOUG’s Training Days Conference. This is the largest regional Oracle User Conference in North America and attracts presenters from all around the country and the globe. I’ll be presenting: Presentation Name: Troubleshooting RAC Background Process Abstract: RAC background process performance is critical to keep the application performance. This session will ...
