Sun Microsystems, Inc.  Oracle System Handbook - ISO 7.0 May 2018 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-1955116.1
Update Date:2018-05-02
Keywords:

Solution Type  Problem Resolution Sure

Solution  1955116.1 :   FS System: When To Use "Use as Boot LUN" and "Disable Reference Tag Checking" Options For FS1-2 LUNs  


Related Items
  • Oracle FS1-2 Flash Storage System
  •  
Related Categories
  • PLA-Support>Sun Systems>DISK>Flash Storage>SN-EStor: FSx
  •  




In this Document
Symptoms
Changes
Cause
Solution


Created from <SR 3-9996911671>

Applies to:

Oracle FS1-2 Flash Storage System - Version All Versions and later
Information in this document applies to any platform.

Symptoms

If a client application reads a large number of sectors that were never written to, the client application might experience degraded performance when reading these sectors.

 

Changes

 

Cause

When creating a LUN in FS-1-2, there are two check box options called "Disable Reference Tag Checking" and "Use as a Boot LUN". This can sometimes be confusing when to select these. Disable Reference Tag Checking was created to address potential performance problems when reading sectors on a disk that had not been written to before.

screen shot of options
 

Here is the explanation from the GUI Help Topics:

//

Data Integrity on the Drives

The SCSI Protection Information field is a mechanism to prevent silent data corruption. SCSI Protection Information ensures that any data that is successfully read by a host from an Oracle FS System is the intended data, and that the data is the same as when it was last written by a host. This integrity check is only internal to the Oracle FS System.

The RAID firmware in the Oracle FS System formats all of the drives in the storage arrays to a sector size of 520 bytes. As SAN data is received from the host, eight bytes of integrity metadata are generated for every 512 bytes of host data. The integrity metadata is appended to the host data to form the internal 520-byte sector. When data is transferred back to the host, the eight bytes of metadata are stripped off and used to check that the 512 bytes of host data are correct. If the check fails, a read error is reported to the host.

The eight bytes of metadata include a Cyclic Redundancy Check (CRC) of the host data and a Reference Tag that identifies the offset of the sector within the host LUN or file. These two pieces of information allow the firmware to check that the data being transferred belongs to the location that the host requested and that the data is the same as it was when last written.

Reference Tag checking is one part of the normal data integrity processing that is performed by the RAID firmware. However, if a client application reads a large number of sectors that have never been written, the client application might experience degraded performance when reading these sectors. Such client applications can include:
  • Sector-level backup applications

  • Replication applications

If unusual performance issues exist for such client applications, you can disable Reference Tag checking on any given LUN to see if you can improve the performance of those applications. If Reference Tag checking is disabled, the Oracle FS System continues to validate CRCs for these sectors but bypasses the Reference Tag checking.

//

 

Help Topic definitions:

Disable Reference Tag Checking

Indicates that the HBA bypasses the reference tag check as part of the process for ensuring data protection integrity for the LUN.

Use as a Boot LUN

Specifies that the LUN is used as a boot drive in the SAN.


The Boot LUN option returns Busy rather than Task Set Full for the uninitialized reads. This was found to be a workaround for Boot from SAN on Solaris systems.  The Disable Reference Tag Checking option ignores the errors in the uninitialized areas. If this is really the issue, disabling the option should fix the problem.

 

Here are the possible options:

Reference Tag Settings
Use as a Boot LUN Disable Reference Tag Checking Result
Off Off Return Task Set Full on Ref Tag failures (uninitialized regions)
On Off Return Busy on Ref Tag failures
Off On Do not check Ref Tag at all
On On Do not check Ref Tag at all

 

 

 

 

 

 

 

 

 

Solution

Only check "Use as a Boot LUN" if the LUN is going to be used as a Boot from SAN LUN; otherwise do not check it. (This option is not really required in order for LUN to be bootable from SAN, but as a general blanket statement, it should be checked if this is the case).

NOTE: Some operating systems do not require "Use as Boot LUN" to be set in order to boot from a LUN, but it won't do any harm if it is set. So we can keep the rule simple and say "check this box if you plan to use the LUN as a boot LUN". The boot issue is often specific to particular OS/platform/HBA/firmware combinations.

Do NOT check "Disable Reference Tag Checking", unless explicitly told to by Oracle support, or if experiencing some sort of performance problem outlined in the Help Topic.

In firmware release 6.1.12, the option to "Disable Reference Tag Checking" was removed.  This feature is added again in later releases.  As an alternative, you can run the following CLI command:

#fscli.exe lun -modify -lun <LUN FQN> -disableRefTagChecking
Examlpe:  fscli.exe lun -modify -lun /VOLGRP1/MIGTEST -disableRefTagChecking

 


As of 6.1.17, if we see 100 read before write in 60 seconds on a controller, we disable the ref tag check until that controller restarts for any reason.  Each controller maintains its own count, but the non-NOA path should accumulate these faster and disable it, hopefully encouraging the host to leave the NOA path alone.  

The 6.1.17 patch release notes description:


If a SAN host repeatedly reads data blocks it has not previously written, the FS1 will disable the Reference Tag Check for that LUN.  The check will be disabled until the next time the system is restarted or the Controller is rebooted.  A future release will detect this condition and permanently disable the check for the affected LUN.

The 6.2.1 patch release notes description:

Per bug 21936789, the LUN Reference Tag Check will be automatically disabled if 5 or more Read Before Write events are detected by the system in less than one minute, whether or not the Disable Reference Tag Checking is set in the GUI. This check is only disabled until the Controller is rebooted. If you see Read Before Write events in the Event log, select Disable Reference Tag Checking for that LUN in the GUI to avoid a performance issue or difficulty booting from or formatting LUNs. The Reference Tag Check checks to see if the SAN Host has written a block of data it reads. If the Host has not written that block of data and the Reference Tag Check is enabled, the system will generate a Read Before Write event. Some hosts routinely read data blocks they have not written as part of host LUN maintenance procedures or file read ahead for performance optimization.

 

NOTE: If Reference Tag Check is disabled, either automatically or in the GUI, the setting of Use as a Boot LUN has no effect.

 

NOTE: In 6.2.2, VMware™ VAAI support was added which per 6.2.2 readme requires ref-tagging to be turned off.

 


Attachments
This solution has no attachment
  Copyright © 2018 Oracle, Inc.  All rights reserved.
 Feedback