SQL Quarantine In Exadata
When
the SQL statement got quarantine
The oracle Exadata software doesn’t quarantine a SQL statement
at a very first time basically when the same query is getting crashed 3 times
while using a smart scan at cell storage server then the Exadata software marks
that query as quarantine and the corresponding alert will be generated in cell
storage.
How
To Check if the SQL query is quarantine
Cellcli > list quarantine
cellcli > list alerthistory
15_1 2018-09-07T14:19:44-04:00 critical "A SQL PLAN
quarantine has been added. As a result, Smart Scan is disabled for SQL
statements with the quarantined SQL plan. Quarantine id : 70 Quarantine type :
SQL PLAN Quarantine reason : Crash Quarantine Plan : SYSTEM Quarantine Mode :
FULL_Quarantine DB Unique Name : DB1 Incident id : 9 SQLID : b4ddqpjmc704q SQL
Plan details : {SQL_PLAN_HASH_VALUE=9954606, PLAN_LINE_ID=4} In addition, the
following disk regions have been quarantined, and Smart Scan will be disabled
for these regions: Disk Region : {Grid Disk Name=DATA01_CD_09_dbm01celadm07,
offset=240745709568, size=1M} Disk Region : {Grid Disk
Name=DATA01_CD_09_dbm01celadm07, offset=240744660992, size=1M} Disk Region :
{Grid Disk Name=DATA01_CD_09_dbm01celadm07, offset=240747806720, size=1M} Disk
Region : {Grid Disk Name=DATA01_CD_09_dbm01celadm07, offset=240746758144,
size=1M} "
[root@exatest ~] #dcli -l root -g /u01/onecommand/cell_group cellcli -e list
quarantine
What
if the SQL query not quarantined even after generating an alert in the alert
history of a cell
If the Exadata software feels that query is an ideal candidate
for quarantine to protect the software crashes and cell availability however
even after generating the alert the query is not getting quarantine while we
check at the storage level, then we can also manually quarantine it.
How To Drop the SQL from quarantine
In general, a quarantine can be removed if the quarantined entity is not expected to cause more problem. For Example, cell offload for problem SQL statement is disabled or a database patch is applied. When the cell is patched, all the quarantine will be removed automatically, it’s not necessary to remove them manually however if there is a situation in which we’ve to drop the quarantine then we can use below command.