Disclaimer

Saturday, 23 May 2026

ANALYZE INDEX index_name VALIDATE STRUCTURE - Performance down

 

🧠 What this command actually does

When you run:

ANALYZE INDEX emp_idx VALIDATE STRUCTURE;

Oracle:

✔ Checks index structure consistency
✔ Verifies B-tree block linkage
✔ Checks corruption
✔ Populates INDEX_STATS table




🔥 Important Internal Behavior

During validation:

👉 Oracle scans the entire index structure
👉 Reads root, branch, and leaf blocks
👉 Performs consistency checks

This operation can become expensive for:

  • large indexes
  • busy OLTP systems



⚠️ Why performance issue happens

1. Heavy I/O

Oracle scans complete index blocks.

For large indexes:

  • huge logical reads
  • physical I/O
  • buffer cache pressure



2. Latch / Buffer contention

Validation accesses many index blocks.

Busy sessions simultaneously:

  • reading index
  • updating index

can cause:

buffer busy waits
cache buffers chains
latch contention




🚨 3. Blocking / DML impact (MOST IMPORTANT)

VALIDATE STRUCTURE may acquire internal locks/latches on index structure.

So:

✔ SELECT may continue mostly
❌ INSERT/UPDATE/DELETE on indexed columns can slow or wait

because Oracle needs index consistency during validation.




🧠 Why blocking happens

Suppose application is doing:

UPDATE emp
SET emp_name='X'
WHERE emp_id=100;

Oracle must:

  • modify index leaf block
  • maintain B-tree consistency

But validation is already reading/checking same structure.

👉 Result:

  • contention
  • waits
  • blocking symptoms



⚡ Real production impact

On large production indexes:

ANALYZE INDEX VALIDATE STRUCTURE

can cause:

  • application slowdown
  • high I/O
  • blocking chains
  • CPU spikes
  • RAC global cache traffic


🧠 Important DBA Note

This command is:

❌ NOT recommended frequently in production

Especially on:

  • high transaction systems
  • RAC
  • very large indexes



✅ Better alternatives

For checking index health use:

1. DBMS_STATS

EXEC DBMS_STATS.GATHER_INDEX_STATS(...);

Safer for production.


2. ANALYZE INDEX VALIDATE STRUCTURE OFFLINE window

Run during:

  • maintenance window
  • low traffic period



📌 Difference from REBUILD

CommandImpact
VALIDATE STRUCTUREChecks consistency
REBUILD INDEXRecreates index


🎯 Simple Layman Explanation

👉 Oracle validates every internal branch and leaf block of the index. During this process, active DML operations may compete for the same index blocks, causing waits, contention, and performance slowdown.






Wednesday, 20 May 2026

Grid Clusterware 26ai 2 node RAC upgrade from 19c rolling forward

 
Step 1. Downloading software and preparation
Step 2. Update your linux and install oracle preinstall rpm
Step 3. Setup new home and prechecks
STEP 4. UPGRADE
Step 5. Verifying configuration




 



Step 1. Downloading software and preparation






 

 

Extract the Zip file







Command :- 

/applications/oracle/g19.3.0/grid_home_26ai/runcluvfy.sh \
stage -pre crsinst -upgrade -rolling \
-src_crshome /applications/oracle/g19.3.0/grid_home \
-dest_crshome /applications/oracle/g19.3.0/grid_home_26ai \
-dest_version 23.26.1.0.0 \
-fixup -verbose






Command Breakdown

1. runcluvfy.sh

This is Oracle’s Cluster Verification Utility (CVU) script.

It is used for:

  • Pre-check validation
  • Post-check validation
  • Cluster verification
  • Upgrade readiness checks

2. stage -pre crsinst

Meaning:

Pre-check before CRS installation or upgrade

CRS stands for:

Cluster Ready Services

This option runs prerequisite checks before the Grid Infrastructure installation or upgrade process.


3. -upgrade

This indicates that:

  • It is not a fresh installation
  • An existing Oracle Grid Infrastructure environment is being upgraded

4. -rolling

This is a very important option.

Meaning:

Rolling upgrade validation

Oracle verifies whether:

  • The upgrade can be performed one node at a time
  • Cluster downtime can be avoided during the upgrade

Example

Upgrade Node1
Cluster continues running

Upgrade Node2

This allows high availability during the upgrade process.


5. -src_crshome

-src_crshome /applications/oracle/g19.3.0/grid_home

This specifies the current (old) Grid Infrastructure home.

It is the source Grid Home from which the upgrade will occur.


6. -dest_crshome

-dest_crshome /applications/oracle/g19.3.0/grid_home_26ai

This specifies the new Grid Infrastructure home.

This is the location where the new Oracle Grid Infrastructure software is installed.


7. -dest_version 23.26.1.0.0

This specifies the target upgrade version.

Oracle validates whether:

  • The current Grid Infrastructure version can be upgraded to the target version
  • The upgrade path is supported

8. -fixup

This is a very useful option.

Oracle attempts to automatically fix certain prerequisite issues.

Examples include:

  • Kernel parameter settings
  • Operating system configurations
  • Missing package requirements
  • Permission-related issues

9. -verbose

Enables detailed output.

Oracle displays the detailed status of every validation check.

Example Output

PASSED
FAILED
WARNING

This helps DBAs identify exactly which checks succeeded or failed.


























STEP 4. UPGRADE

Go to Node 1 (26ai) home and you will get gridSetup.sh 

Run the gridSetup.sh for upgradataion 









In the OUI GUI, select “Upgrade Oracle Grid Infrastructure” and click Next → Next through the wizard. When prompted, the installer will ask you to run rootupgrade.sh as root — do not close this window, proceed to Step 3.




































[root@ora11t ~]# . oraenv
ORACLE_SID = [root] ? +ASM2
The Oracle base has been set to /applications/oracle/g19.3.0/grid_base

[root@ora11t ~]# rpm -qa | grep compat-openssl

[grid@ora10t trace]$ su - root
Password:
[root@ora10t ~]# . oraenv
ORACLE_SID = [root] ? +ASM1
The Oracle base has been set to /applications/oracle/g19.3.0/grid_base

[root@ora10t ~]# rpm -qa | grep compat-openssl
compat-openssl10-1.0.2o-4.el8_10.1.x86_64






Run -->  yum install -y compat-openssl10 on ora11t









































Run rootupgrade.sh — both RAC nodes














Step 5.
Verifying configuration











We have successfully upgraded the Grid Infrastructure from 19c to 23ai in rolling mode.






ANALYZE INDEX index_name VALIDATE STRUCTURE - Performance down

  🧠 What this command actually does When you run: ANALYZE INDEX emp_idx VALIDATE STRUCTURE; Oracle: ✔ Checks index structure consisten...